mom_stoch_eos module reference

Provides the ocean stochastic equation of state.

More…

Data Types

mom_stoch_eos_cs

Describes parameters of the stochastic component of the EOS correction, described in Stanley et al.

Functions/Subroutines

mom_stoch_eos_init()

Initializes MOM_stoch_eos module, returning a logical indicating whether this module will be used.

stoch_eos_register_restarts()

Register fields related to the stoch_EOS module for resarts.

mom_stoch_eos_run()

Generates a pattern in space and time for the ocean stochastic equation of state.

post_stoch_eos_diags()

Write out any diagnostics related to this module.

mom_calc_vart()

Computes a parameterization of the SGS temperature variance.

Detailed Description

Provides the ocean stochastic equation of state.

Type Documentation

type mom_stoch_eos/mom_stoch_eos_cs

Describes parameters of the stochastic component of the EOS correction, described in Stanley et al. JAMES 2020.

Type fields:
  • % id_stoch_eos [integer] :: Diagnostic IDs.

  • % id_stoch_phi [integer] :: Diagnostic IDs.

  • % id_tvar_sgs [integer] :: Diagnostic IDs.

  • % l2_inv [real(:,:),allocatable] :: One over sum of the T cell side side lengths squared [L-2 ~> m-2].

  • % rgauss [real(:,:),allocatable] :: nondimensional random Gaussian [nondim]

  • % tfac [real] :: Nondimensional decorrelation time factor, ~1/3.7 [nondim].

  • % amplitude [real] :: Nondimensional standard deviation of Gaussian [nondim].

  • % seed [integer] :: PRNG seed.

  • % rn_cs [type( prng )] :: PRNG control structure.

  • % pattern [real(:,:),allocatable] :: Random pattern for stochastic EOS [nondim].

  • % phi [real(:,:),allocatable] :: temporal correlation stochastic EOS [nondim]

  • % use_stoch_eos [logical] :: If true, use the stochastic equation of state (Stanley et al. 2020)

  • % stanley_coeff [real] :: Coefficient correlating the temperature gradient and SGS T variance [nondim]; if <0, turn off scheme in all codes.

  • % stanley_a [real] :: a in exp(aX) in stochastic coefficient [nondim]

  • % kappa_smooth [real] :: A diffusivity for smoothing T/S in vanished layers [H Z T-1 ~> m2 s-1 or kg m-1 s-1].

Function/Subroutine Documentation

function mom_stoch_eos/mom_stoch_eos_init(Time, G, GV, US, param_file, diag, CS, restart_CS) [logical]

Initializes MOM_stoch_eos module, returning a logical indicating whether this module will be used.

Parameters:
  • time :: [in] Time for stochastic process

  • g :: [in] The ocean’s grid structure.

  • gv :: [in] Vertical grid structure

  • us :: [in] A dimensional unit scaling type

  • param_file :: [in] structure indicating parameter file to parse

  • diag :: [inout] Structure used to control diagnostics

  • cs :: [inout] Stochastic control structure

  • restart_cs :: A pointer to the restart control structure.

Call to:

mom_restart::is_new_run mom_error_handler::mom_error mom_random::random_2d_constructor mom_random::random_2d_norm mom_diag_mediator::register_diag_field

subroutine mom_stoch_eos/stoch_eos_register_restarts(HI, param_file, CS, restart_CS)

Register fields related to the stoch_EOS module for resarts.

Parameters:
  • hi :: [in] Horizontal index structure

  • param_file :: [in] structure indicating parameter file to parse

  • cs :: [inout] Stochastic control structure

  • restart_cs :: A pointer to the restart control structure.

Called from:

mom::initialize_mom

subroutine mom_stoch_eos/mom_stoch_eos_run(G, u, v, delt, Time, CS)

Generates a pattern in space and time for the ocean stochastic equation of state.

Parameters:
  • g :: [in] The ocean’s grid structure.

  • u :: [in] The zonal velocity [L T-1 ~> m s-1].

  • v :: [in] The meridional velocity [L T-1 ~> m s-1].

  • delt :: [in] Time step size for AR1 process [T ~> s].

  • time :: [in] Time for stochastic process

  • cs :: [inout] Stochastic control structure

Call to:

mom_random::random_2d_constructor mom_random::random_2d_norm

subroutine mom_stoch_eos/post_stoch_eos_diags(CS, tv, diag)

Write out any diagnostics related to this module.

Parameters:
  • cs :: [in] Stochastic control structure

  • tv :: [in] Thermodynamics structure

  • diag :: [inout] Structure to control diagnostics

Called from:

mom::step_mom_dynamics

subroutine mom_stoch_eos/mom_calc_vart(G, GV, US, h, tv, CS, dt)

Computes a parameterization of the SGS temperature variance.

Parameters:
  • g :: [in] The ocean’s grid structure.

  • gv :: [in] Vertical grid structure

  • us :: [in] A dimensional unit scaling type

  • h :: [in] Layer thickness [H ~> m]

  • tv :: [inout] Thermodynamics structure

  • cs :: [inout] Stochastic control structure

  • dt :: [in] Time increment [T ~> s]

Call to:

mom_isopycnal_slopes::vert_fill_ts

Called from:

mom::step_mom_dynamics