[MITgcm-support] Turbulent Ice-Ocean heat flux

Martin Losch Martin.Losch at awi.de
Thu Aug 2 02:11:56 EDT 2012


Alexander,

as far as I know, for all parameter choices (McPhee or not) there is some sort of exchange velocity that does not depend on the current Ui-Uw. The parameter McPheePiston is set in seaice_init_fixed.F:
        IF ( SEAICE_availHeatFrac.NE.UNSET_RL ) THEN
          SEAICE_mcPheePiston = SEAICE_availHeatFrac
     &                        * drF(kSurface)/SEAICE_deltaTtherm
        ELSE
          SEAICE_mcPheePiston = MCPHEE_TAPER_FAC
     &                        * STANTON_NUMBER * USTAR_BASE
          SEAICE_mcPheePiston = MIN( SEAICE_mcPheePiston,
     &                          drF(kSurface)/SEAICE_deltaTtherm )
        ENDIF
      ENDIF
where STANTON_NUMBER and USTAR_BASE are constants. (The entire initialisation logic is a bit complicated, because we needed to merge different ways of doing this into one code, in your version of the code, this was not yet done, and you need to use CPP-Flags like MCPHEE_OCEAN_ICE_HEAT_FLUX to switch between the formulations, but the resulting parameterizations are the same as now.

If you think that there needs to be an explict shear term (Ui-Uw) in the formula you'll have to implement it yourself (I am not aware of any sea-ice model that includes such a shear term, but that does not mean that there isn't any).

Martin
On Aug 1, 2012, at 10:45 PM, Alexander Slavin wrote:

> Martin,
> 
> Thank you for quick answer. Good remark about versions.
> I used one year old version - v 1.140 2011/07/21
> In new 1.173 version this part of code in seaice_growth.F looks like:
> 
> C determine available heat due to the ice pack tying the
> C underlying surface water temperature to freezing point
> C ======================================================
> 
> #ifdef ALLOW_AUTODIFF_TAMC
> CADJ STORE theta(:,:,kSurface,bi,bj) = comlev1_bibj,
> CADJ &                       key = iicekey, byte = isbyte
> CADJ STORE salt(:,:,kSurface,bi,bj) = comlev1_bibj,
> CADJ &                       key = iicekey, byte = isbyte
> #endif
> 
>        DO J=1,sNy
>         DO I=1,sNx
> C         FREEZING TEMP. OF SEA WATER (deg C)
>          tempFrz = SEAICE_tempFrz0 +
> &              SEAICE_dTempFrz_dS *salt(I,J,kSurface,bi,bj)
> C efficiency of turbulent fluxes : dependency to sign of THETA-TBC
>          IF ( theta(I,J,kSurface,bi,bj) .GE. tempFrz ) THEN
>           tmpscal1 = SEAICE_mcPheePiston
>          ELSE
>           tmpscal1 =SEAICE_frazilFrac*drF(kSurface)/SEAICE_deltaTtherm
>          ENDIF
> C efficiency of turbulent fluxes : dependency to AREA (McPhee cases)
>          IF ( (AREApreTH(I,J) .GT. 0. _d 0).AND.
> &         (.NOT.SEAICE_mcPheeStepFunc) ) THEN
>           MixedLayerTurbulenceFactor = ONE -
> &          SEAICE_mcPheeTaper * AREApreTH(I,J)
>          ELSEIF ( (AREApreTH(I,J) .GT. 0. _d 0).AND.
> &             (SEAICE_mcPheeStepFunc) ) THEN
>           MixedLayerTurbulenceFactor = ONE - SEAICE_mcPheeTaper
>          ELSE
>           MixedLayerTurbulenceFactor = ONE
>          ENDIF
> C maximum turbulent flux, in ice meters
>          tmpscal2= - (HeatCapacity_Cp*rhoConst * recip_QI)
> &         * (theta(I,J,kSurface,bi,bj)-tempFrz)
> &         * SEAICE_deltaTtherm * maskC(i,j,kSurface,bi,bj)
> C available turbulent flux
>          a_QbyOCN(i,j) =
> &         tmpscal1 * tmpscal2 * MixedLayerTurbulenceFactor
>          r_QbyOCN(i,j) = a_QbyOCN(i,j)
>         ENDDO
>        ENDDO
> 
> But it is still not clear for me, where the dependence of relative ocean-ice velocity calculated?
> Is it in SEAICE_mcPheePiston constant?
> 
> Thank you,
> 
> Alexander.
> 
> 
> On 08/01/2012 04:47 AM, Martin Losch wrote:
>> Alexander, which version of the code do you use (at the top of seaice_growth.F you'll find the Header-line, the most recent version is v 1.173)?
>> 
>> Martin
>> On Jul 31, 2012, at 6:49 PM, Alexander Slavin wrote:
>> 
>>> Hello MITgcm users,
>>> 
>>> I have a question concerning turbulent Ice-Ocean heat flux.
>>> Do MITgcm have some diagnostics available to output it?
>>> 
>>> The analytical formula based on bulk formulation can be written as:
>>> Focn = Csens * Cp * Rho * (Ui-Uw)2 * (Ti -Tw)
>>> 
>>> In pkg/seaice/seaice_growth.F I have found this variable for turbulent
>>> ocean-ice heat flux converted to meters of potential ice melt:
>>> 
>>> a_QbyOCN(i,j) = -tmpscal1 * (HeatCapacity_Cp*rhoConst/QI)
>>> &                                  * (theta(I,J,kSurface,bi,bj)-TBC)
>>> 
>>> After that I can divide it by convertQ2HI to obtain heat flux in W/m2:
>>> 
>>> TurbIOCN(I,J) = a_QbyOCN(I,J) / convertQ2HI
>>> 
>>> Is it correct? If yes, why was the dependence on the relative ocean-ice
>>> velocity (or the Ustar) dropped? I see that Ustar was calculated for the
>>> McPhee option, but this part of the code does not seem to be operational.
>>> 
>>> Any help that you may provide regarding this issue would be welcome.
>>> 
>>> Thank you,
>>> Alexander Slavin,
>>> McGill University, Canada
>>> This electronic communication is governed by the terms and conditions at http://www.mun.ca/cc/policies/electronic_communications_disclaimer_2012.php
>>> _______________________________________________
>>> MITgcm-support mailing list
>>> MITgcm-support at mitgcm.org
>>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>> 
>> _______________________________________________
>> MITgcm-support mailing list
>> MITgcm-support at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-support
> 
> 
> This electronic communication is governed by the terms and conditions at
> http://www.mun.ca/cc/policies/electronic_communications_disclaimer_2012.php
> 
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support




More information about the MITgcm-support mailing list