[MITgcm-devel] sea ice clean up this week

Martin Losch Martin.Losch at awi.de
Mon Feb 13 06:03:29 EST 2012


Gael,

I have not been able to understand the new MCPHEE+GRADIENT_MIXED_LAYER_* logic.

- MCPHEE_TAPER_FAC = 12.5
- seaice_init_fixed for SEAICEturbFluxFormula.EQ.3 or 4
        SEAICE_availHeatFrac= MCPHEE_TAPER_FAC * more constants
        SEAICE_availHeatFracFrz=ZERO
- seaice_growth: 
          elseif ( (SEAICEturbFluxFormula.EQ.4).AND.(AREApreTH(I,J) .LE. 0. _d 0) ) then
              MixedLayerTurbulenceFactor = MCPHEE_TAPER_FAC
           else
              [ ... ]

This looks to me as if you have MCPHEE_TAPER_FAC^2. It should be MixedLayerTurbulenceFactor=1 in the above case as the default (the final else) 1/MCPHEE_TAPER_FAC. So I suggest that we remove MCPHEE_TAPER_FAC in seaice_init_fixed:
        SEAICE_availHeatFrac= STANTON_NUMBER * 
     &    USTAR_BASE / dRf(kSurface) * SEAICE_deltaTtherm
and adjust seaice_growth accordingly. This also avoids a division in a loop. If you don't object. I'll do it. (This options is not tested, because these changes do not change any results).

M.


On Feb 9, 2012, at 8:16 PM, Gael Forget wrote:

> Dear all,
> 
> below is (A) a summary of the last two day clean-up steps (cosmetic changes) 
> and (B) what it means for known users (based on Patrick's table; attached).
> In case you follow testreport, you already know that the modifs have not 
> changed anything to results. Notice : there is more clean-up coming in the 
> next couple days, so you may want to wait until doing an update, up to you.
> 
> Cheers,
> Gael
> 
> (A) 
> 
> retired CPPs : 
> 	MCPHEE_OCEAN_ICE_HEAT_FLUX
> 	GRADIENT_MIXED_LAYER_TURBULENCE_FACTOR
> 	SEAICE_OCN_MELT_ACT_ON_AREA, SEAICE_DO_OPEN_WATER_GROWTH
> 	SEAICE_DO_OPEN_WATER_MELT, FENTY_AREA_EXPANSION_CONTRACTION
> 
> added run time params. I include a copy of the doc in SEAICE_PARAMS.h and 
> tried to trace back where the various options came from (text in parentheses).
> 	SEAICE_doOpenWaterGrowth, SEAICE_doOpenWaterMelt
> 		T/F 	just like the old CPP versions
> 		T	use open water heat flux directly to grow ice	(Ian way)
> 		F 	cool ocean, and grow later if needed		(Zhang way)
> 	SEAICEturbFluxFormula :: selects formula for ocean-ice turbulent flux
> 		1=direct spec. of SEAICE_availHeatFrac/Frz		(Dimitri/Ian way)
> 		2=spec. via SEAICE_gamma_t/_frz				(Martin/Ian way)
> 		3=McPhee with linear tapering					(Ian latest way)
> 		4=McPhee with step function					(Ian other latest way)
> 	SEAICE_areaLossFormula :: selects formula for ice cover loss from melt
> 		1=from all but only melt conributions by ATM and OCN	(Ian way)
> 		2=from net melt-growth>0 by ATM and OCN		(Gael/Ian way)
> 		3=from predicted melt by ATM					(Zhang way)
> 	SEAICE_areaGainFormula :: selects formula for ice cover gain from open water growth
> 		1=from growth by ATM						(Ian way)
> 		2=from predicted growth by ATM				(Zhang way)
> 
> as a side note, I put stops in seaice_check.F	 for combinaisons
> that are obviously problematic. Tyipically, if you do NOT use  
> SEAICE_doOpenWaterGrowth you need to use the Zhang way
> for SEAICE_areaLossFormula (3) and SEAICE_areaGainFormula (2),
> and this is the only case allowed with SEAICE_GROWTH_LEGACY.
> 
> (B) 
> 
> You should double check, but based on Patrick's table, 
> here is what you will need to add to your namelists : 
> 
> Martin : 	in SEAICE_GROWTH_LEGACY case you should be all set. Otherwise
> 		if TRUE SEAICE_doOpenWaterGrowth then SEAICE_areaLossFormula = 2
> 		if FALSE SEAICE_doOpenWaterGrowth then SEAICE_areaLossFormula = 3, SEAICE_areaGainFormula=2
> 
> Ian et al:	SEAICE_doOpenWaterMelt=.TRUE.
> 		SEAICEturbFluxFormula=3
> 		ps: def/undef SEAICE_OCN_MELT_ACT_ON_AREA was doing nothing 
> 		      since FENTY_AREA_EXPANSION_CONTRACTION was def.
> 
> Me : TBD.
> 
> 
> <seaice_whodoeswhat_3.pptx>
> 
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel




More information about the MITgcm-devel mailing list