[MITgcm-devel] exf wind-stress masking
Martin Losch
Martin.Losch at awi.de
Tue Jan 10 04:56:01 EST 2012
Hi Jean-Michel,
the reason appears to be the unmasked taux/tauy.
The are added to FORCEX/Y0 which in turn is added to FORCEX/Y, and these are then added to the rhs, but with masking (seaiceMaskU/V). In seaice_ocean_stress taux/tauy are used, but without masking (and as far as I can see that's also the case in seaice_freedrift).
I can fix that by masking taux/y with maskW/S or seaiceMaskU/V if you like and then the dependence on the exf-masking goes away.
Martin
On Jan 9, 2012, at 9:20 PM, Jean-Michel Campin wrote:
> Hi Martin,
>
> I did some quick tests, comparing with/without masking of exf variables
> (In the 1rst case, I've just commented out the block:
> IF ( useSEAICE ) THEN
> C Do not filter with pkg/seaice because of B/C-grid interpolation
> ....
> in pkg/exf/exf_init_fixed.F)
>
> And I only get different results in 2 exp.:
> a) lab_sea/input.fd (SEAICEuseFREEDRIFT=.true.)
> b) lab_sea/input.hb87 (EVP & useHB87stressCoupling)
> (but diff goes away with useHB87stressCoupling=F)
>
> Regarding SEAICEuseFREEDRIFT, the differences comes from
> seaice_freedrift.F (I don't get any difference with my free-drift
> computation within seaice_lsr.F).
>
> To conclude:
> 1) it's worth to know that these 2 options (SEAICEuseFREEDRIFT
> and useHB87stressCoupling) are sensitive to masking within EXF.
> 2) I think it might be better to always (whether we use SEAICE or
> not) mask heat-flux & fresh water flux related fields,
> and to leave only wind & windstress not masked when using SEAICE.
>
> Cheers,
> Jean-Michel
>
> On Wed, Jan 04, 2012 at 09:32:35AM +0100, Martin Losch wrote:
>> Hi Jean-Michel,
>>
>> I am not sure, but I think that for B-grid seaice, the wind (stress) needs to be available a Z-points and this interpolation is done in pkg/seaice/dynsolver.F, so that when masking in exf removes wind values over land, you underestimate the wind over boundary values of seaice.
>> Having said that, the boundary points of B-grid seaice have (uice,vice)=0 as a boundary conditions, so that this masking does not make any difference, so on second thought you are probably right, and this differentiation can be removed safely.
>>
>> M.
>>
>> On Jan 3, 2012, at 5:49 PM, Jean-Michel Campin wrote:
>>
>>> Hi,
>>>
>>> I am going to check-in some unfinished changes in exf:
>>> I realized that the masking of the wind-stress is wrong (when not on
>>> C-grid, which happen when interpolated or read from A-grid file).
>>> I fixed this problem and will check-in this (involves also EXF_PARAMS.h
>>> & exf_init_fixed.F) and update output of global_with_exf exp.
>>>
>>> I also started to add some params in EXF_PARAMS.h + exf_init_fixed.F
>>> for 2-components vector interpolation (I did this before the stress
>>> mask fix), will be part of the changes but they are not yet used.
>>>
>>> Regarding masking, I don't see a clear reason why it's only
>>> applied when not using SEAICE. If exf works fine without
>>> masking (when using SEAICE), then why do we care about applying
>>> masks ?
>>>
>>> Also, noticed that exf_init_fixed.F does not compile with default
>>> pkg/icefront settings (might have been better to put all this
>>> icefront - exf code in pkg/icefront and still call some utility
>>> exf & cal S/R).
>>>
>>> Cheers,
>>> Jean-Michel
>>>
>>> _______________________________________________
>>> MITgcm-devel mailing list
>>> MITgcm-devel at mitgcm.org
>>> http://mitgcm.org/mailman/listinfo/mitgcm-devel
>>
>>
>> _______________________________________________
>> MITgcm-devel mailing list
>> MITgcm-devel at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-devel
>
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel
More information about the MITgcm-devel
mailing list