[MITgcm-devel] ICE workshop - recap and homework!
Gael Forget
gforget at MIT.EDU
Wed Mar 7 12:17:32 EST 2012
Hi Dimitris,
what we discussed as a pkg/frazil hook to seaice_growth.F is basically a one liner in CPP brackets.
Assuming this is what you have in the pipe, now works just fine. Should not conflict. Aside from timing,
there are a few points I want to stress before you proceed. Just to save us/me some cleaning up later...
One, I expect to see a new pkg/seaice run time on/off switch for the added term (aside from the obviously
needed CPP switch, and useFrazil switch) that is reported to stdout by seaice_summary.F. And we should
agree on the switch name off the bat. Would SEAICE_frazilForcing make sense? What do you propose?
Two, whatever logic check you think is needed should be added to seaice_check.F.
Three, as far as I know, there is no need to touch the SEAICE_frazilFrac default or what it does,
regardless of whether SEAICE_frazilForcing is active or not. The same goes for solve4temp.
Four, including the needed/anticipated CADJ store with the original checkin would be best.
Cheers,
Gael
On Mar 7, 2012, at 11:30 AM, Menemenlis, Dimitris (3248) wrote:
> Gael et al., is this a good time for Ian to check-in
> his treatment of FrazilForcingT in seaice_growth.F ?
>
> Cheers
>
> Dimitris Menemenlis
>
> On Mar 6, 2012, at 11:26 PM, Gael Forget wrote:
>
>> Hi Martin et al,
>>
>> I am moving some of the "ICE workshop - recap and homework!" thread that followed from the MIT ice workshop to devel list.
>>
>>> Further, for checking the conservation properties in my configuration it would be helpful if Gael could provide a data.diagnostics.
>> Will follow.
>>
>>> About the seaice defaults: I am not clear about the turbulent flux formulae. The implementation that I updated to today requires that I set
>>> #define MCPHEE_OCEAN_ICE_HEAT_FLUX
>>> #define GRADIENT_MIXED_LAYER_TURBULENCE_FACTOR
>>> Do we need to set anything else in data.seaice in order to get the agreed parameter set?
>> I know it's confusing even for me at this point. It took me a while to figure out a more of less adequate way (see below)
>> of unifying the various flavours of this term's specification that had been added over the years. I mostly hope that this
>> merge keeps non-specialists of pkg/seaice from overlooking default changes when they update their copy of MITgcm.
>>
>> Below I give explanations and guidelines (correct ones I hope) for using the new run time parameters.
>> I do the same for SEAICE_MULTICATEGORY and SEAICE_VARIABLE_FREEZING_POINT.
>> That information is also in SEAICE_PARAMS.h and/or seaice_check.F and/or in the standard output.
>>
>> Cheers,
>> Gael
>>
>> old def/undef SEAICE_VARIABLE_FREEZING_POINT : now unified way of specifying sea water freezing
>> point. So it should always be defined and the rest is done with run time params. Changed default.
>> -----------------------------------------------------------------------------------------
>> old default : SEAICE_tempFrz0 = -1.96, SEAICE_dTempFrz_dS = 0.
>> new default : SEAICE_tempFrz0 = 0.0901, SEAICE_dTempFrz_dS = -0.0575
>> ?? do we have a precise reference for 0.0901 + S * SEAICE_dTempFrz_dS ??
>>
>>
>> def/undef SEAICE_MULTICATEGORY : no change to default. So use CPP as before.
>> But added run time switch : set SEAICE_multDim to 1 or 7, regardless of CPP. It is assumed
>> that user provide pickup accordingly, as before. Pickup code will likely need consolidation.
>> ---------------------------------------------------------------------------------------------------------
>>
>>
>> old def/undef MCPHEE_OCEAN_ICE_HEAT_FLUX & GRADIENT_MIXED_LAYER_TURBULENCE_FACTOR :
>> now unified way of specifying the turb. ocean-ice flux. So the CPPs should always be defined and the rest is
>> done with run time params. Old run time params can still be used. Changed default.
>> ----------------------------------------------------------------------------------------------------------------------------
>> defaults etc :
>> -- old default : SEAICE_mcPheePiston = drf(1)/SEAICE_deltaTtherm, SEAICE_frazilFrac=1., SEAICE_mcPheeTaper=0.,
>> -- new default : SEAICE_mcPheePiston = 0.000875, SEAICE_frazilFrac=1., SEAICE_mcPheeTaper=0.,
>> -- baseline params : SEAICE_mcPheePiston = 0.000875, SEAICE_frazilFrac=1., SEAICE_mcPheeTaper=0.92,
>> -- old mcphee cpp : SEAICE_mcPheePiston = 0.000875, SEAICE_frazilFrac=0., SEAICE_mcPheeTaper=0.92,
>> -- SEAICE_mcPheeStepFunc always false (old GRADIENT_MIXED_LAYER_TURBULENCE_FACTOR).
>> conversions of old to new params :
>> -- SEAICE_mcPheePiston = dRf(kSurface)/SEAICE_gamma_t
>> -- SEAICE_frazilFrac = SEAICE_deltaTtherm/SEAICE_gamma_t_frz
>> -- SEAICE_mcPheePiston = SEAICE_availHeatFrac * dRf(kSurface)/SEAICE_deltaTtherm
>> -- SEAICE_frazilFrac = SEAICE_availHeatFracFrz
>> ?? do we have a precise reference for 0.000875 and 0.92 ??
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> 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