Skip to content

Commit

Permalink
Added the parameterization by Bodner et al. (2023) as a method for mi…
Browse files Browse the repository at this point in the history
…xed layer restratification by submesoscale eddies.
  • Loading branch information
matsbn committed Jul 29, 2024
1 parent 07d6219 commit 11bab06
Show file tree
Hide file tree
Showing 10 changed files with 604 additions and 144 deletions.
136 changes: 124 additions & 12 deletions cime_config/namelist_definition_blom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -381,6 +381,130 @@
<desc>Method of applying eddy-induced transport in the remap</desc>
</entry>

<entry id="mlrmth">
<type>char</type>
<category>limits</category>
<group>limits</group>
<values>
<value>fox08</value>
</values>
<desc>Mixed layer restratification method</desc>
</entry>

<entry id="ce">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>.06</value>
<value ocn_grid="tnx1v4" blom_vcoord="isopyc_bulkml" ocn_ncpl="24">.5</value>
<value ocn_grid="tnx0.25v4" blom_vcoord="isopyc_bulkml">1.0</value>
</values>
<desc>Efficiency factor for the restratification by mixed layer</desc>
</entry>

<entry id="cl">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>.25</value>
</values>
<desc>Scaling of the efficiency factor for the restratification by mixed layer eddies (Bodner et al., 2023)</desc>
</entry>

<entry id="tau_mlr">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>86400.</value>
</values>
<desc>Timescale for momentum mixing across mixed layer</desc>
</entry>

<entry id="tau_growing_hbl">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>0.</value>
</values>
<desc>Time-scale for running mean filter when signal is greater than filtered value (used for boundary layer thickness and vertical momentum flux)</desc>
</entry>

<entry id="tau_decaying_hbl">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>0.</value>
</values>
<desc>Time-scale for running mean filter when signal is less than filtered value (used for boundary layer thickness and vertical momentum flux)</desc>
</entry>

<entry id="tau_growing_hml">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>0.</value>
</values>
<desc>Time-scale for running mean filter when signal is greater than filtered value (used for mixed layer thickness)</desc>
</entry>

<entry id="tau_decaying_hml">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>0.</value>
</values>
<desc>Time-scale for running mean filter when signal is less than filtered value (used for mixed layer thickness)</desc>
</entry>

<entry id="lfmin">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>5000.</value>
<value blom_unit="cgs">5000.e2</value>
</values>
<desc>Minimum length scale of mixed layer fronts</desc>
</entry>

<entry id="mstar">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>.5</value>
</values>
<desc>Scaling of boundary layer turbulence due to friction velocity (Bodner et al., 2023)</desc>
</entry>

<entry id="nstar">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>.066</value>
</values>
<desc>Scaling of boundary layer turbulence due to convective velocity (Bodner et al., 2023)</desc>
</entry>

<entry id="wpup_min">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>1.e-7</value>
<value blom_unit="cgs">1.e-3</value>
</values>
<desc>Minimum vertical momentum flux (Bodner et al., 2023)</desc>
</entry>

<entry id="mlrttp">
<type>char</type>
<category>limits</category>
Expand Down Expand Up @@ -411,18 +535,6 @@
<desc>Efficiency factor of TKE generation by momentum</desc>
</entry>

<entry id="ce">
<type>real</type>
<category>limits</category>
<group>limits</group>
<values>
<value>.06</value>
<value ocn_grid="tnx1v4" blom_vcoord="isopyc_bulkml" ocn_ncpl="24">.5</value>
<value ocn_grid="tnx0.25v4" blom_vcoord="isopyc_bulkml">1.0</value>
</values>
<desc>Efficiency factor for the restratification by mixed layer</desc>
</entry>

<entry id="tdfile" is_inputdata="yes">
<type>char</type>
<category>limits</category>
Expand Down
30 changes: 26 additions & 4 deletions cime_config/ocn_in.readme
Original file line number Diff line number Diff line change
Expand Up @@ -40,14 +40,38 @@
! column) (a)
! RMPMTH : Method of applying eddy-induced transport in the remap
! transport algorithm. Valid methods: 'eitvel', 'eitflx' (a)
! MLRMTH : Mixed layer restratification method. Valid methods: 'none',
! 'fox08','bod23' (a)
! CE : Efficiency factor for the restratification by mixed layer
! eddies (Fox-Kemper et al., 2008) () (f)
! CL : Scaling of the efficiency factor for the restratification
! by mixed layer eddies (Bodner et al., 2023) () (f)
! TAU_MLR : Timescale for momentum mixing across mixed layer (s) (f).
! TAU_GROWING_HBL : Time-scale for running mean filter when signal is
! greater than filtered value (used for boundary
! layer thickness and vertical momentum flux) (s) (f)
! TAU_DECAYING_HBL : Time-scale for running mean filter when signal is
! less than filtered value (used for boundary layer
! thickness and vertical momentum flux) (s) (f)
! TAU_GROWING_HML : Time-scale for running mean filter when signal is
! greater than filtered value (used for mixed layer
! thickness) (s) (f)
! TAU_DECAYING_HML : Time-scale for running mean filter when signal is
! less than filtered value (used for mixed layer
! thickness) (s) (f)
! LFMIN : Minimum length scale of mixed layer fronts (cm) (f)
! MSTAR : Scaling of boundary layer turbulence due to friction
! velocity (Bodner et al., 2023) () (f)
! NSTAR : Scaling of boundary layer turbulence due to convective
! velocity (Bodner et al., 2023) () (f)
! WPUP_MIN : Minimum vertical momentum flux (Bodner et al., 2023)
! (cm**2/s**2) (f)
! MLRTTP : Type of mixed layer restratification time scale. Valid
! types: 'variable', 'constant', 'limited' (a)
! RM0 : Efficiency factor of wind TKE generation in the Oberhuber
! (1993) TKE closure () (f)
! RM5 : Efficiency factor of TKE generation by momentum
! entrainment in the Oberhuber (1993) TKE closure () (f)
! CE : Efficiency factor for the restratification by mixed layer
! eddies (Fox-Kemper et al., 2008) () (f)
! TDFILE : Name of file containing tidal wave energy dissipation
! divided by by bottom buoyancy frequency (a)
! NIWGF : Global factor applied to the energy input by near-intertial
Expand Down Expand Up @@ -101,8 +125,6 @@
! EDWMTH : Method to estimate eddy diffusivity weight as a function of
! the ration of Rossby radius of deformation to the
! horizontal grid spacing. Valid methods: 'smooth', 'step' (a)
! MLRTTP : Type of mixed layer restratification time scale. Valid
! types: 'variable', 'constant', 'limited' (a)
! EDDF2D : If true, eddy diffusivity has a 2d structure (l)
! EDSPRS : Apply eddy mixing suppression away from steering level (l)
! EGC : Parameter c in Eden and Greatbatch (2008) parameterization (f)
Expand Down
8 changes: 6 additions & 2 deletions phy/mod_difest.F90
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ module mod_difest
use mod_cmnfld, only: bfsqi, nnslpx, nnslpy, mlts
use mod_forcing, only: wavsrc_opt, wavsrc_param, &
abswnd, lamult, lasl, &
ustar, ustarb, ustar3, &
ustar, ustarb, ustar3, wstar3, &
buoyfl, t_sw_nonloc, surflx, sswflx, salflx
use mod_tidaldissip, only: twedon
use mod_niw, only: niwgf, niwbf, niwlf, idkedt, niw_ke_tendency
Expand Down Expand Up @@ -112,7 +112,8 @@ module mod_difest
iL_mks2cgs = 1./L_mks2cgs, &
iM_mks2cgs = 1./M_mks2cgs, &
A_mks2cgs = L_mks2cgs**2, &
A_cgs2mks = 1./(L_mks2cgs*L_mks2cgs)
A_cgs2mks = 1./(L_mks2cgs*L_mks2cgs), &
V_mks2cgs = L_mks2cgs**3

! parameters:
! iidtyp - type of interface and isopycnal diffusivities. If
Expand Down Expand Up @@ -1385,6 +1386,9 @@ subroutine difest_vertical_hyb(m,n,mm,nn,k1m,k1n)
nonLocalTrans(k,1))
end do

! Compute convective velocity cubed [cm3 s-3].
wstar3(i,j) = max(0.,-surfBuoyFlux)*OBLdepth(i,j)*V_mks2cgs

end do
end do
! end of single column
Expand Down
Loading

0 comments on commit 11bab06

Please sign in to comment.