ocean_foxkemper_config_t Derived Type

type, public :: ocean_foxkemper_config_t

&ocean_foxkemper_nml: Fox-Kemper mixed-layer-eddy restratification. Default off ⇒ bit-identical. Reads epbl%mld.


Inherited by

type~~ocean_foxkemper_config_t~~InheritedByGraph type~ocean_foxkemper_config_t ocean_foxkemper_config_t type~ocean_config_t ocean_config_t type~ocean_config_t->type~ocean_foxkemper_config_t foxkemper type~config_t config_t type~config_t->type~ocean_config_t ocean type~ocean_handle_t ocean_handle_t type~ocean_handle_t->type~config_t cfg

Components

Type Visibility Attributes Name Initial
real(kind=wp), public :: bodner_mstar = 0.5_wp

Bodner mechanical (u) weight in w’u’ = (mstar·u³+nstar·w*³)^{2/3}.

real(kind=wp), public :: bodner_nstar = 0.066_wp

Bodner convective (w*) weight in the same w’u’ estimate.

real(kind=wp), public :: ce = 0.0625_wp

FK08 coefficient Ce (0.06-0.08).

real(kind=wp), public :: cr = 0.0_wp

Bodner (2023) efficiency coefficient Cr (nondim). Default 0 (MOM6 default) ⇒ no Bodner transport until set (~0.02-0.08).

logical, public :: enable = .false.

Master switch (off => bit-identity).

real(kind=wp), public :: f_floor = 1.0e-5_wp

|f| regularisation floor (1/s).

real(kind=wp), public :: min_wstar2 = 1.0e-24_wp

Floor on w’u’ (m²/s²) — pure 1/0 armour when u* and the surface buoyancy flux both vanish.

real(kind=wp), public :: mld_decay_time = 0.0_wp

Running-mean MLD filter time-scale (s) used when the MLD is retreating. 0 (default) => filter off => instantaneous EPBL MLD (bit-identical). Positive damps step-to-step MLD swings.

logical, public :: resolution_taper = .false.

B2 res_fn double-counting hook (hard error if on without B2).

real(kind=wp), public :: tail_dh = 0.0_wp

mu cubic-tail extension (smoother); default 0 = exact mu.

logical, public :: use_bodner = .false.

Bodner et al. (2023) frontogenesis-arrest MLE variant: replaces the Ce/|f| timescale with Cr·Δs·|f|·h/w'u', the frontal-arrest length set by boundary-layer turbulence. Overrides ce/ use_mom_mixrate. Default off ⇒ classic Fox-Kemper.

logical, public :: use_mom_mixrate = .false.

FK11 momentum-mixrate timescale vs bare Ce/|f|. Default off.


Source Code

   type :: ocean_foxkemper_config_t
      !! `&ocean_foxkemper_nml`: Fox-Kemper mixed-layer-eddy restratification.
      !! Default off ⇒ bit-identical.  Reads `epbl%mld`.
      logical :: enable = .false.
         !! Master switch (off => bit-identity).
      real(wp) :: ce = 0.0625_wp
         !! FK08 coefficient Ce (0.06-0.08).
      real(wp) :: f_floor = 1.0e-5_wp
         !! |f| regularisation floor (1/s).
      real(wp) :: mld_decay_time = 0.0_wp
         !! Running-mean MLD filter time-scale (s) used when the MLD is
         !! retreating.  0 (default) => filter off => instantaneous EPBL MLD
         !! (bit-identical).  Positive damps step-to-step MLD swings.
      real(wp) :: tail_dh = 0.0_wp
         !! mu cubic-tail extension (smoother); default 0 = exact mu.
      logical :: use_mom_mixrate = .false.
         !! FK11 momentum-mixrate timescale vs bare Ce/|f|.  Default off.
      logical :: resolution_taper = .false.
         !! B2 res_fn double-counting hook (hard error if on without B2).
      logical :: use_bodner = .false.
         !! Bodner et al. (2023) frontogenesis-arrest MLE variant: replaces
         !! the `Ce/|f|` timescale with `Cr·Δs·|f|·h/w'u'`, the frontal-arrest
         !! length set by boundary-layer turbulence.  Overrides `ce`/
         !! `use_mom_mixrate`.  Default off ⇒ classic Fox-Kemper.
      real(wp) :: cr = 0.0_wp
         !! Bodner (2023) efficiency coefficient `Cr` (nondim).  Default 0
         !! (MOM6 default) ⇒ no Bodner transport until set (~0.02-0.08).
      real(wp) :: bodner_mstar = 0.5_wp
         !! Bodner mechanical (u*) weight in w'u' = (mstar·u*³+nstar·w*³)^{2/3}.
      real(wp) :: bodner_nstar = 0.066_wp
         !! Bodner convective (w*) weight in the same w'u' estimate.
      real(wp) :: min_wstar2 = 1.0e-24_wp
         !! Floor on w'u' (m²/s²) — pure 1/0 armour when u* and the surface
         !! buoyancy flux both vanish.
   end type ocean_foxkemper_config_t