MOM6
mom::mom_control_struct Type Reference

Detailed Description

Control structure for this module.

Definition at line 148 of file MOM.F90.

Collaboration diagram for mom::mom_control_struct:
[legend]

Public variables and constants

real, dimension(:, :, :), allocatable h
 layer thickness (m or kg/m2 (H)) More...
 
real, dimension(:, :, :), allocatable t
 potential temperature (degrees C) More...
 
real, dimension(:, :, :), allocatable s
 salinity (ppt) More...
 
real, dimension(:, :, :), allocatable u
 zonal velocity component (m/s) More...
 
real, dimension(:, :, :), allocatable uh
 uh = u * h * dy at u grid points (m3/s or kg/s) More...
 
real, dimension(:, :, :), allocatable uhtr
 accumulated zonal thickness fluxes to advect tracers (m3 or kg) More...
 
real, dimension(:, :, :), allocatable v
 meridional velocity (m/s) More...
 
real, dimension(:, :, :), allocatable vh
 vh = v * h * dx at v grid points (m3/s or kg/s) More...
 
real, dimension(:, :, :), allocatable vhtr
 accumulated meridional thickness fluxes to advect tracers (m3 or kg) More...
 
real, dimension(:, :), allocatable ave_ssh
 time-averaged (ave over baroclinic time steps) sea surface height (meter) More...
 
real, dimension(:,:), pointer hml => NULL()
 active mixed layer depth, in m More...
 
real, dimension(:,:,:), pointer u_prev => NULL()
 previous value of u stored for diagnostics More...
 
real, dimension(:,:,:), pointer v_prev => NULL()
 previous value of v stored for diagnostics More...
 
type(ocean_grid_type) g
 structure containing metrics and grid info More...
 
type(verticalgrid_type), pointer gv => NULL()
 structure containing vertical grid info More...
 
type(thermo_var_ptrs) tv
 structure containing pointers to available thermodynamic fields More...
 
type(diag_ctrl) diag
 structure to regulate diagnostic output timing More...
 
type(vertvisc_type) visc
 structure containing vertical viscosities, bottom drag viscosities, and related fields More...
 
type(meke_type), pointer meke => NULL()
 structure containing fields related to the Mesoscale Eddy Kinetic Energy More...
 
type(accel_diag_ptrs) adp
 structure containing pointers to accelerations, for derived diagnostics (e.g., energy budgets) More...
 
type(cont_diag_ptrs) cdp
 structure containing pointers continuity equation terms, for derived diagnostics (e.g., energy budgets) More...
 
logical split
 If true, use the split time stepping scheme. More...
 
logical legacy_split
 If true, use the legacy split time stepping code with all the options that were available in the predecessor isopycnal model "GOLD". More...
 
logical use_rk2
 If true, use RK2 instead of RK3 in unsplit mode (i.e., no split between barotropic and baroclinic). More...
 
logical adiabatic
 If true, then no diapycnal mass fluxes, with no calls to routines to calculate or apply diapycnal fluxes. More...
 
logical use_temperature
 If true, temp and saln used as state variables. More...
 
logical calc_rho_for_sea_lev
 If true, calculate rho to convert pressure to sea level. More...
 
logical use_frazil
 If true, liquid seawater freezes if temp below freezing, with accumulated heat deficit returned to surface ocean. More...
 
logical bound_salinity
 If true, salt is added to keep salinity above a minimum value, and the deficit is reported. More...
 
logical bulkmixedlayer
 If true, a refined bulk mixed layer scheme is used with nkml sublayers and nkbl buffer layer. More...
 
logical diabatic_first
 If true, apply diabatic and thermodynamic processes before time stepping the dynamics. More...
 
logical use_cont_abss
 If true, , the prognostics T&S are the conservative temperature and absolute salinity. Care should be taken to convert them to potential temperature and practical salinity before exchanging them with the coupler and/or reporting T&S diagnostics. More...
 
logical thickness_diffuse
 If true, diffuse interface height w/ a diffusivity KHTH. More...
 
logical thickness_diffuse_first
 If true, diffuse thickness before dynamics. More...
 
logical mixedlayer_restrat
 If true, use submesoscale mixed layer restratifying scheme. More...
 
logical usemeke
 If true, call the MEKE parameterization. More...
 
logical debug
 If true, write verbose checksums for debugging purposes. More...
 
logical debug_truncations
 If true, turn on diagnostics useful for debugging truncations. More...
 
logical use_ale_algorithm
 If true, use the ALE algorithm rather than layered isopycnal/stacked shallow water mode. This logical is set by calling the function useRegridding() from the MOM_regridding module. More...
 
logical do_dynamics
 If false, does not call step_MOM_dyn_*. This is an undocumented run-time flag that is fragile. More...
 
logical offline_tracer_mode = .false.
 If true, step_offline() is called instead of step_MOM(). This is intended for running MOM6 in offline tracer mode. More...
 
logical advect_ts
 If false, then no horizontal advection of temperature and salnity is performed. More...
 
real dt
 (baroclinic) dynamics time step (seconds) More...
 
real dt_therm
 thermodynamics time step (seconds) More...
 
logical thermo_spans_coupling
 If true, thermodynamic and tracer time steps can span multiple coupled time steps. More...
 
real t_dyn_rel_adv
 The time of the dynamics relative to tracer advection and lateral mixing (in seconds), or equivalently the elapsed time since advectively updating the tracers. t_dyn_rel_adv is invariably positive and may span multiple coupling timesteps. More...
 
real t_dyn_rel_thermo
 The time of the dynamics relative to diabatic processes and remapping (in seconds). t_dyn_rel_thermo can be negative or positive depending on whether the diabatic processes are applied before or after the dynamics and may span multiple coupling timesteps. More...
 
real t_dyn_rel_diag
 The time of the diagnostics relative to diabatic processes and remapping (in seconds). t_dyn_rel_diag is always positive, since the diagnostics must lag. More...
 
type(time_type) z_diag_interval
 amount of time between calculating Z-space diagnostics More...
 
type(time_type) z_diag_time
 next time to compute Z-space diagnostics More...
 
type(time_type), pointer time
 pointer to ocean clock More...
 
real rel_time = 0.0
 relative time (sec) since start of current execution More...
 
real dtbt_reset_period
 The time interval in seconds between dynamic recalculation of the barotropic time step. If this is negative, it is never calculated, and if it is 0, it is calculated every step. More...
 
logical interp_p_surf
 If true, linearly interpolate surface pressure over the coupling time step, using specified value at the end of the coupling step. False by default. More...
 
logical p_surf_prev_set
 If true, p_surf_prev has been properly set from a previous time-step or the ocean restart file. This is only valid when interp_p_surf is true. More...
 
real hmix
 Diagnostic mixed layer thickness (meter) when bulk mixed layer is not used. More...
 
real hmix_uv
 Depth scale over which to average surface flow to feedback to the coupler/driver (m). bulk mixed layer is not used. More...
 
real missing =-1.0e34
 missing data value for masked fields More...
 
logical write_ic
 If true, then the initial conditions will be written to file. More...
 
character(len=120) ic_file
 A file into which the initial conditions are written in a new run if SAVE_INITIAL_CONDS is true. More...
 
integer ntrunc
 number u,v truncations since last call to write_energy More...
 
logical check_bad_surface_vals
 If true, scan surface state for ridiculous values. More...
 
real bad_val_ssh_max
 Maximum SSH before triggering bad value message. More...
 
real bad_val_sst_max
 Maximum SST before triggering bad value message. More...
 
real bad_val_sst_min
 Minimum SST before triggering bad value message. More...
 
real bad_val_sss_max
 Maximum SSS before triggering bad value message. More...
 
real bad_val_column_thickness
 Minimum column thickness before triggering bad value message. More...
 
real, dimension(:,:), pointer p_surf_prev => NULL()
 surface pressure (Pa) at end previous call to step_MOM More...
 
real, dimension(:,:), pointer p_surf_begin => NULL()
 surface pressure (Pa) at start of step_MOM_dyn_... More...
 
real, dimension(:,:), pointer p_surf_end => NULL()
 surface pressure (Pa) at end of step_MOM_dyn_... More...
 
type(vardesc) vd_t
 vardesc array describing potential temperature More...
 
type(vardesc) vd_s
 vardesc array describing salinity More...
 
real, dimension(:,:,:), pointer t_adx => NULL()
 
real, dimension(:,:,:), pointer t_ady => NULL()
 
real, dimension(:,:,:), pointer t_diffx => NULL()
 
real, dimension(:,:,:), pointer t_diffy => NULL()
 
real, dimension(:,:,:), pointer s_adx => NULL()
 
real, dimension(:,:,:), pointer s_ady => NULL()
 
real, dimension(:,:,:), pointer s_diffx => NULL()
 
real, dimension(:,:,:), pointer s_diffy => NULL()
 
real, dimension(:,:), pointer t_adx_2d => NULL()
 
real, dimension(:,:), pointer t_ady_2d => NULL()
 
real, dimension(:,:), pointer t_diffx_2d => NULL()
 
real, dimension(:,:), pointer t_diffy_2d => NULL()
 
real, dimension(:,:), pointer s_adx_2d => NULL()
 
real, dimension(:,:), pointer s_ady_2d => NULL()
 
real, dimension(:,:), pointer s_diffx_2d => NULL()
 
real, dimension(:,:), pointer s_diffy_2d => NULL()
 
real, dimension(:,:,:), pointer t_advection_xy => NULL()
 
real, dimension(:,:,:), pointer s_advection_xy => NULL()
 
real, dimension(:,:,:), pointer t_prev => NULL()
 
real, dimension(:,:,:), pointer s_prev => NULL()
 
real, dimension(:,:,:), pointer th_prev => NULL()
 
real, dimension(:,:,:), pointer sh_prev => NULL()
 
real, dimension(:,:,:), pointer t_squared => NULL()
 
real, dimension(:,:,:), pointer s_squared => NULL()
 
logical tendency_diagnostics = .false.
 
integer id_u = -1
 
integer id_v = -1
 
integer id_h = -1
 
integer id_t = -1
 
integer id_s = -1
 
integer id_tcon = -1
 
integer id_sabs = -1
 
integer id_zos = -1
 
integer id_zossq = -1
 
integer id_volo = -1
 
integer id_ssh = -1
 
integer id_ssh_ga = -1
 
integer id_sst = -1
 
integer id_sst_sq = -1
 
integer id_sss = -1
 
integer id_sss_sq = -1
 
integer id_ssu = -1
 
integer id_ssv = -1
 
integer id_speed = -1
 
integer id_ssh_inst = -1
 
integer id_tob = -1
 
integer id_sob = -1
 
integer id_sstcon = -1
 
integer id_sssabs = -1
 
integer id_fraz = -1
 
integer id_salt_deficit = -1
 
integer id_heat_pme = -1
 
integer id_intern_heat = -1
 
integer id_tadx = -1
 
integer id_tady = -1
 
integer id_tdiffx = -1
 
integer id_tdiffy = -1
 
integer id_sadx = -1
 
integer id_sady = -1
 
integer id_sdiffx = -1
 
integer id_sdiffy = -1
 
integer id_tadx_2d = -1
 
integer id_tady_2d = -1
 
integer id_tdiffx_2d = -1
 
integer id_tdiffy_2d = -1
 
integer id_sadx_2d = -1
 
integer id_sady_2d = -1
 
integer id_sdiffx_2d = -1
 
integer id_sdiffy_2d = -1
 
integer id_t_advection_xy = -1
 
integer id_t_advection_xy_2d = -1
 
integer id_t_tendency = -1
 
integer id_th_tendency = -1
 
integer id_th_tendency_2d = -1
 
integer id_s_advection_xy = -1
 
integer id_s_advection_xy_2d = -1
 
integer id_s_tendency = -1
 
integer id_sh_tendency = -1
 
integer id_sh_tendency_2d = -1
 
integer id_t_vardec = -1
 
integer id_s_vardec = -1
 
integer id_h_pre_dyn = -1
 
integer id_u_predia = -1
 
integer id_v_predia = -1
 
integer id_h_predia = -1
 
integer id_t_predia = -1
 
integer id_s_predia = -1
 
integer id_e_predia = -1
 
integer id_u_preale = -1
 
integer id_v_preale = -1
 
integer id_h_preale = -1
 
integer id_t_preale = -1
 
integer id_s_preale = -1
 
integer id_e_preale = -1
 
integer id_uhtr = -1
 
integer id_umo = -1
 
integer id_umo_2d = 1
 
integer id_vhtr = -1
 
integer id_vmo = -1
 
integer id_vmo_2d = 1
 
type(mom_dyn_unsplit_cs), pointer dyn_unsplit_csp => NULL()
 
type(mom_dyn_unsplit_rk2_cs), pointer dyn_unsplit_rk2_csp => NULL()
 
type(mom_dyn_split_rk2_cs), pointer dyn_split_rk2_csp => NULL()
 
type(mom_dyn_legacy_split_cs), pointer dyn_legacy_split_csp => NULL()
 
type(set_visc_cs), pointer set_visc_csp => NULL()
 
type(diabatic_cs), pointer diabatic_csp => NULL()
 
type(thickness_diffuse_cs), pointer thickness_diffuse_csp => NULL()
 
type(mixedlayer_restrat_cs), pointer mixedlayer_restrat_csp => NULL()
 
type(meke_cs), pointer meke_csp => NULL()
 
type(varmix_cs), pointer varmix => NULL()
 
type(tracer_registry_type), pointer tracer_reg => NULL()
 
type(tracer_advect_cs), pointer tracer_adv_csp => NULL()
 
type(tracer_hor_diff_cs), pointer tracer_diff_csp => NULL()
 
type(neutral_diffusion_cs), pointer neutral_diffusion_csp => NULL()
 
type(tracer_flow_control_cs), pointer tracer_flow_csp => NULL()
 
type(diagnostics_cs), pointer diagnostics_csp => NULL()
 
type(diag_to_z_cs), pointer diag_to_z_csp => NULL()
 
type(mom_restart_cs), pointer restart_csp => NULL()
 
type(update_obc_cs), pointer update_obc_csp => NULL()
 
type(ocean_obc_type), pointer obc => NULL()
 
type(sponge_cs), pointer sponge_csp => NULL()
 
type(ale_sponge_cs), pointer ale_sponge_csp => NULL()
 
type(ale_cs), pointer ale_csp => NULL()
 
type(offline_transport_cs), pointer offline_csp => NULL()
 
type(group_pass_type) pass_tau_ustar_psurf
 
type(group_pass_type) pass_ray
 
type(group_pass_type) pass_bbl_thick_kv_bbl
 
type(group_pass_type) pass_t_s_h
 
type(group_pass_type) pass_t_s
 
type(group_pass_type) pass_kv_turb
 
type(group_pass_type) pass_uv_t_s_h
 
type(group_pass_type) pass_ssh
 

Variables and constants

◆ adiabatic

logical mom::mom_control_struct::adiabatic

If true, then no diapycnal mass fluxes, with no calls to routines to calculate or apply diapycnal fluxes.

Definition at line 188 of file MOM.F90.

188  logical :: adiabatic !< If true, then no diapycnal mass fluxes, with no calls

◆ adp

type(accel_diag_ptrs) mom::mom_control_struct::adp

structure containing pointers to accelerations, for derived diagnostics (e.g., energy budgets)

Definition at line 177 of file MOM.F90.

177  type(accel_diag_ptrs) :: adp !< structure containing pointers to accelerations,

◆ advect_ts

logical mom::mom_control_struct::advect_ts

If false, then no horizontal advection of temperature and salnity is performed.

Definition at line 219 of file MOM.F90.

219  logical :: advect_ts !< If false, then no horizontal advection of temperature

◆ ale_csp

type(ale_cs), pointer mom::mom_control_struct::ale_csp => NULL()

Definition at line 416 of file MOM.F90.

416  type(ale_cs), pointer :: ale_csp => null()

◆ ale_sponge_csp

type(ale_sponge_cs), pointer mom::mom_control_struct::ale_sponge_csp => NULL()

Definition at line 415 of file MOM.F90.

415  type(ale_sponge_cs), pointer :: ale_sponge_csp => null()

◆ ave_ssh

real, dimension( : , : ), allocatable mom::mom_control_struct::ave_ssh

time-averaged (ave over baroclinic time steps) sea surface height (meter)

Definition at line 161 of file MOM.F90.

161  real allocable_, dimension(NIMEM_,NJMEM_) :: &
162  ave_ssh !< time-averaged (ave over baroclinic time steps) sea surface height (meter)

◆ bad_val_column_thickness

real mom::mom_control_struct::bad_val_column_thickness

Minimum column thickness before triggering bad value message.

Definition at line 272 of file MOM.F90.

272  real :: bad_val_column_thickness!< Minimum column thickness before triggering bad value message

◆ bad_val_ssh_max

real mom::mom_control_struct::bad_val_ssh_max

Maximum SSH before triggering bad value message.

Definition at line 268 of file MOM.F90.

268  real :: bad_val_ssh_max !< Maximum SSH before triggering bad value message

◆ bad_val_sss_max

real mom::mom_control_struct::bad_val_sss_max

Maximum SSS before triggering bad value message.

Definition at line 271 of file MOM.F90.

271  real :: bad_val_sss_max !< Maximum SSS before triggering bad value message

◆ bad_val_sst_max

real mom::mom_control_struct::bad_val_sst_max

Maximum SST before triggering bad value message.

Definition at line 269 of file MOM.F90.

269  real :: bad_val_sst_max !< Maximum SST before triggering bad value message

◆ bad_val_sst_min

real mom::mom_control_struct::bad_val_sst_min

Minimum SST before triggering bad value message.

Definition at line 270 of file MOM.F90.

270  real :: bad_val_sst_min !< Minimum SST before triggering bad value message

◆ bound_salinity

logical mom::mom_control_struct::bound_salinity

If true, salt is added to keep salinity above a minimum value, and the deficit is reported.

Definition at line 194 of file MOM.F90.

194  logical :: bound_salinity !< If true, salt is added to keep salinity above

◆ bulkmixedlayer

logical mom::mom_control_struct::bulkmixedlayer

If true, a refined bulk mixed layer scheme is used with nkml sublayers and nkbl buffer layer.

Definition at line 196 of file MOM.F90.

196  logical :: bulkmixedlayer !< If true, a refined bulk mixed layer scheme is used

◆ calc_rho_for_sea_lev

logical mom::mom_control_struct::calc_rho_for_sea_lev

If true, calculate rho to convert pressure to sea level.

Definition at line 191 of file MOM.F90.

191  logical :: calc_rho_for_sea_lev !< If true, calculate rho to convert pressure to sea level

◆ cdp

type(cont_diag_ptrs) mom::mom_control_struct::cdp

structure containing pointers continuity equation terms, for derived diagnostics (e.g., energy budgets)

Definition at line 179 of file MOM.F90.

179  type(cont_diag_ptrs) :: cdp !< structure containing pointers continuity equation

◆ check_bad_surface_vals

logical mom::mom_control_struct::check_bad_surface_vals

If true, scan surface state for ridiculous values.

Definition at line 267 of file MOM.F90.

267  logical :: check_bad_surface_vals !< If true, scan surface state for ridiculous values.

◆ debug

logical mom::mom_control_struct::debug

If true, write verbose checksums for debugging purposes.

Definition at line 208 of file MOM.F90.

208  logical :: debug !< If true, write verbose checksums for debugging purposes.

◆ debug_truncations

logical mom::mom_control_struct::debug_truncations

If true, turn on diagnostics useful for debugging truncations.

Definition at line 209 of file MOM.F90.

209  logical :: debug_truncations !< If true, turn on diagnostics useful for debugging truncations.

◆ diabatic_csp

type(diabatic_cs), pointer mom::mom_control_struct::diabatic_csp => NULL()

Definition at line 399 of file MOM.F90.

399  type(diabatic_cs), pointer :: diabatic_csp => null()

◆ diabatic_first

logical mom::mom_control_struct::diabatic_first

If true, apply diabatic and thermodynamic processes before time stepping the dynamics.

Definition at line 198 of file MOM.F90.

198  logical :: diabatic_first !< If true, apply diabatic and thermodynamic

◆ diag

type(diag_ctrl) mom::mom_control_struct::diag

structure to regulate diagnostic output timing

Definition at line 172 of file MOM.F90.

172  type(diag_ctrl) :: diag !< structure to regulate diagnostic output timing

◆ diag_to_z_csp

type(diag_to_z_cs), pointer mom::mom_control_struct::diag_to_z_csp => NULL()

Definition at line 410 of file MOM.F90.

410  type(diag_to_z_cs), pointer :: diag_to_z_csp => null()

◆ diagnostics_csp

type(diagnostics_cs), pointer mom::mom_control_struct::diagnostics_csp => NULL()

Definition at line 409 of file MOM.F90.

409  type(diagnostics_cs), pointer :: diagnostics_csp => null()

◆ do_dynamics

logical mom::mom_control_struct::do_dynamics

If false, does not call step_MOM_dyn_*. This is an undocumented run-time flag that is fragile.

Definition at line 214 of file MOM.F90.

214  logical :: do_dynamics !< If false, does not call step_MOM_dyn_*. This is an

◆ dt

real mom::mom_control_struct::dt

(baroclinic) dynamics time step (seconds)

Definition at line 221 of file MOM.F90.

221  real :: dt !< (baroclinic) dynamics time step (seconds)

◆ dt_therm

real mom::mom_control_struct::dt_therm

thermodynamics time step (seconds)

Definition at line 222 of file MOM.F90.

222  real :: dt_therm !< thermodynamics time step (seconds)

◆ dtbt_reset_period

real mom::mom_control_struct::dtbt_reset_period

The time interval in seconds between dynamic recalculation of the barotropic time step. If this is negative, it is never calculated, and if it is 0, it is calculated every step.

Definition at line 242 of file MOM.F90.

242  real :: dtbt_reset_period !< The time interval in seconds between dynamic

◆ dyn_legacy_split_csp

type(mom_dyn_legacy_split_cs), pointer mom::mom_control_struct::dyn_legacy_split_csp => NULL()

Definition at line 396 of file MOM.F90.

396  type(mom_dyn_legacy_split_cs), pointer :: dyn_legacy_split_csp => null()

◆ dyn_split_rk2_csp

type(mom_dyn_split_rk2_cs), pointer mom::mom_control_struct::dyn_split_rk2_csp => NULL()

Definition at line 395 of file MOM.F90.

395  type(mom_dyn_split_rk2_cs), pointer :: dyn_split_rk2_csp => null()

◆ dyn_unsplit_csp

type(mom_dyn_unsplit_cs), pointer mom::mom_control_struct::dyn_unsplit_csp => NULL()

Definition at line 393 of file MOM.F90.

393  type(mom_dyn_unsplit_cs), pointer :: dyn_unsplit_csp => null()

◆ dyn_unsplit_rk2_csp

type(mom_dyn_unsplit_rk2_cs), pointer mom::mom_control_struct::dyn_unsplit_rk2_csp => NULL()

Definition at line 394 of file MOM.F90.

394  type(mom_dyn_unsplit_rk2_cs), pointer :: dyn_unsplit_rk2_csp => null()

◆ g

type(ocean_grid_type) mom::mom_control_struct::g

structure containing metrics and grid info

Definition at line 168 of file MOM.F90.

168  type(ocean_grid_type) :: g !< structure containing metrics and grid info

◆ gv

type(verticalgrid_type), pointer mom::mom_control_struct::gv => NULL()

structure containing vertical grid info

Definition at line 169 of file MOM.F90.

169  type(verticalgrid_type), pointer :: gv => null() !< structure containing vertical grid info

◆ h

real, dimension( : , : , : ), allocatable mom::mom_control_struct::h

layer thickness (m or kg/m2 (H))

Definition at line 149 of file MOM.F90.

149  real allocable_, dimension(NIMEM_,NJMEM_,NKMEM_) :: &
150  h, & !< layer thickness (m or kg/m2 (H))
151  t, & !< potential temperature (degrees C)
152  s !< salinity (ppt)

◆ hmix

real mom::mom_control_struct::hmix

Diagnostic mixed layer thickness (meter) when bulk mixed layer is not used.

Definition at line 254 of file MOM.F90.

254  real :: hmix !< Diagnostic mixed layer thickness (meter) when

◆ hmix_uv

real mom::mom_control_struct::hmix_uv

Depth scale over which to average surface flow to feedback to the coupler/driver (m). bulk mixed layer is not used.

Definition at line 256 of file MOM.F90.

256  real :: hmix_uv !< Depth scale over which to average surface flow to

◆ hml

real, dimension(:,:), pointer mom::mom_control_struct::hml => NULL()

active mixed layer depth, in m

Definition at line 163 of file MOM.F90.

163  real, pointer, dimension(:,:) :: hml => null() !< active mixed layer depth, in m

◆ ic_file

character(len=120) mom::mom_control_struct::ic_file

A file into which the initial conditions are written in a new run if SAVE_INITIAL_CONDS is true.

Definition at line 263 of file MOM.F90.

263  character(len=120) :: ic_file !< A file into which the initial conditions are

◆ id_e_preale

integer mom::mom_control_struct::id_e_preale = -1

Definition at line 386 of file MOM.F90.

386  integer :: id_e_preale = -1

◆ id_e_predia

integer mom::mom_control_struct::id_e_predia = -1

Definition at line 380 of file MOM.F90.

380  integer :: id_e_predia = -1

◆ id_fraz

integer mom::mom_control_struct::id_fraz = -1

Definition at line 332 of file MOM.F90.

332  integer :: id_fraz = -1

◆ id_h

integer mom::mom_control_struct::id_h = -1

Definition at line 306 of file MOM.F90.

306  integer :: id_h = -1

◆ id_h_pre_dyn

integer mom::mom_control_struct::id_h_pre_dyn = -1

Definition at line 372 of file MOM.F90.

372  integer :: id_h_pre_dyn = -1

◆ id_h_preale

integer mom::mom_control_struct::id_h_preale = -1

Definition at line 383 of file MOM.F90.

383  integer :: id_h_preale = -1

◆ id_h_predia

integer mom::mom_control_struct::id_h_predia = -1

Definition at line 377 of file MOM.F90.

377  integer :: id_h_predia = -1

◆ id_heat_pme

integer mom::mom_control_struct::id_heat_pme = -1

Definition at line 334 of file MOM.F90.

334  integer :: id_heat_pme = -1

◆ id_intern_heat

integer mom::mom_control_struct::id_intern_heat = -1

Definition at line 335 of file MOM.F90.

335  integer :: id_intern_heat = -1

◆ id_s

integer mom::mom_control_struct::id_s = -1

Definition at line 308 of file MOM.F90.

308  integer :: id_s = -1

◆ id_s_advection_xy

integer mom::mom_control_struct::id_s_advection_xy = -1

Definition at line 361 of file MOM.F90.

361  integer :: id_s_advection_xy = -1

◆ id_s_advection_xy_2d

integer mom::mom_control_struct::id_s_advection_xy_2d = -1

Definition at line 362 of file MOM.F90.

362  integer :: id_s_advection_xy_2d = -1

◆ id_s_preale

integer mom::mom_control_struct::id_s_preale = -1

Definition at line 385 of file MOM.F90.

385  integer :: id_s_preale = -1

◆ id_s_predia

integer mom::mom_control_struct::id_s_predia = -1

Definition at line 379 of file MOM.F90.

379  integer :: id_s_predia = -1

◆ id_s_tendency

integer mom::mom_control_struct::id_s_tendency = -1

Definition at line 363 of file MOM.F90.

363  integer :: id_s_tendency = -1

◆ id_s_vardec

integer mom::mom_control_struct::id_s_vardec = -1

Definition at line 369 of file MOM.F90.

369  integer :: id_s_vardec = -1

◆ id_sabs

integer mom::mom_control_struct::id_sabs = -1

Definition at line 310 of file MOM.F90.

310  integer :: id_sabs = -1

◆ id_sadx

integer mom::mom_control_struct::id_sadx = -1

Definition at line 342 of file MOM.F90.

342  integer :: id_sadx = -1

◆ id_sadx_2d

integer mom::mom_control_struct::id_sadx_2d = -1

Definition at line 350 of file MOM.F90.

350  integer :: id_sadx_2d = -1

◆ id_sady

integer mom::mom_control_struct::id_sady = -1

Definition at line 343 of file MOM.F90.

343  integer :: id_sady = -1

◆ id_sady_2d

integer mom::mom_control_struct::id_sady_2d = -1

Definition at line 351 of file MOM.F90.

351  integer :: id_sady_2d = -1

◆ id_salt_deficit

integer mom::mom_control_struct::id_salt_deficit = -1

Definition at line 333 of file MOM.F90.

333  integer :: id_salt_deficit = -1

◆ id_sdiffx

integer mom::mom_control_struct::id_sdiffx = -1

Definition at line 344 of file MOM.F90.

344  integer :: id_sdiffx = -1

◆ id_sdiffx_2d

integer mom::mom_control_struct::id_sdiffx_2d = -1

Definition at line 352 of file MOM.F90.

352  integer :: id_sdiffx_2d = -1

◆ id_sdiffy

integer mom::mom_control_struct::id_sdiffy = -1

Definition at line 345 of file MOM.F90.

345  integer :: id_sdiffy = -1

◆ id_sdiffy_2d

integer mom::mom_control_struct::id_sdiffy_2d = -1

Definition at line 353 of file MOM.F90.

353  integer :: id_sdiffy_2d = -1

◆ id_sh_tendency

integer mom::mom_control_struct::id_sh_tendency = -1

Definition at line 364 of file MOM.F90.

364  integer :: id_sh_tendency = -1

◆ id_sh_tendency_2d

integer mom::mom_control_struct::id_sh_tendency_2d = -1

Definition at line 365 of file MOM.F90.

365  integer :: id_sh_tendency_2d = -1

◆ id_sob

integer mom::mom_control_struct::id_sob = -1

Definition at line 327 of file MOM.F90.

327  integer :: id_sob = -1

◆ id_speed

integer mom::mom_control_struct::id_speed = -1

Definition at line 324 of file MOM.F90.

324  integer :: id_speed = -1

◆ id_ssh

integer mom::mom_control_struct::id_ssh = -1

Definition at line 316 of file MOM.F90.

316  integer :: id_ssh = -1

◆ id_ssh_ga

integer mom::mom_control_struct::id_ssh_ga = -1

Definition at line 317 of file MOM.F90.

317  integer :: id_ssh_ga = -1

◆ id_ssh_inst

integer mom::mom_control_struct::id_ssh_inst = -1

Definition at line 325 of file MOM.F90.

325  integer :: id_ssh_inst = -1

◆ id_sss

integer mom::mom_control_struct::id_sss = -1

Definition at line 320 of file MOM.F90.

320  integer :: id_sss = -1

◆ id_sss_sq

integer mom::mom_control_struct::id_sss_sq = -1

Definition at line 321 of file MOM.F90.

321  integer :: id_sss_sq = -1

◆ id_sssabs

integer mom::mom_control_struct::id_sssabs = -1

Definition at line 329 of file MOM.F90.

329  integer :: id_sssabs = -1

◆ id_sst

integer mom::mom_control_struct::id_sst = -1

Definition at line 318 of file MOM.F90.

318  integer :: id_sst = -1

◆ id_sst_sq

integer mom::mom_control_struct::id_sst_sq = -1

Definition at line 319 of file MOM.F90.

319  integer :: id_sst_sq = -1

◆ id_sstcon

integer mom::mom_control_struct::id_sstcon = -1

Definition at line 328 of file MOM.F90.

328  integer :: id_sstcon = -1

◆ id_ssu

integer mom::mom_control_struct::id_ssu = -1

Definition at line 322 of file MOM.F90.

322  integer :: id_ssu = -1

◆ id_ssv

integer mom::mom_control_struct::id_ssv = -1

Definition at line 323 of file MOM.F90.

323  integer :: id_ssv = -1

◆ id_t

integer mom::mom_control_struct::id_t = -1

Definition at line 307 of file MOM.F90.

307  integer :: id_t = -1

◆ id_t_advection_xy

integer mom::mom_control_struct::id_t_advection_xy = -1

Definition at line 356 of file MOM.F90.

356  integer :: id_t_advection_xy = -1

◆ id_t_advection_xy_2d

integer mom::mom_control_struct::id_t_advection_xy_2d = -1

Definition at line 357 of file MOM.F90.

357  integer :: id_t_advection_xy_2d = -1

◆ id_t_preale

integer mom::mom_control_struct::id_t_preale = -1

Definition at line 384 of file MOM.F90.

384  integer :: id_t_preale = -1

◆ id_t_predia

integer mom::mom_control_struct::id_t_predia = -1

Definition at line 378 of file MOM.F90.

378  integer :: id_t_predia = -1

◆ id_t_tendency

integer mom::mom_control_struct::id_t_tendency = -1

Definition at line 358 of file MOM.F90.

358  integer :: id_t_tendency = -1

◆ id_t_vardec

integer mom::mom_control_struct::id_t_vardec = -1

Definition at line 368 of file MOM.F90.

368  integer :: id_t_vardec = -1

◆ id_tadx

integer mom::mom_control_struct::id_tadx = -1

Definition at line 338 of file MOM.F90.

338  integer :: id_tadx = -1

◆ id_tadx_2d

integer mom::mom_control_struct::id_tadx_2d = -1

Definition at line 346 of file MOM.F90.

346  integer :: id_tadx_2d = -1

◆ id_tady

integer mom::mom_control_struct::id_tady = -1

Definition at line 339 of file MOM.F90.

339  integer :: id_tady = -1

◆ id_tady_2d

integer mom::mom_control_struct::id_tady_2d = -1

Definition at line 347 of file MOM.F90.

347  integer :: id_tady_2d = -1

◆ id_tcon

integer mom::mom_control_struct::id_tcon = -1

Definition at line 309 of file MOM.F90.

309  integer :: id_tcon = -1

◆ id_tdiffx

integer mom::mom_control_struct::id_tdiffx = -1

Definition at line 340 of file MOM.F90.

340  integer :: id_tdiffx = -1

◆ id_tdiffx_2d

integer mom::mom_control_struct::id_tdiffx_2d = -1

Definition at line 348 of file MOM.F90.

348  integer :: id_tdiffx_2d = -1

◆ id_tdiffy

integer mom::mom_control_struct::id_tdiffy = -1

Definition at line 341 of file MOM.F90.

341  integer :: id_tdiffy = -1

◆ id_tdiffy_2d

integer mom::mom_control_struct::id_tdiffy_2d = -1

Definition at line 349 of file MOM.F90.

349  integer :: id_tdiffy_2d = -1

◆ id_th_tendency

integer mom::mom_control_struct::id_th_tendency = -1

Definition at line 359 of file MOM.F90.

359  integer :: id_th_tendency = -1

◆ id_th_tendency_2d

integer mom::mom_control_struct::id_th_tendency_2d = -1

Definition at line 360 of file MOM.F90.

360  integer :: id_th_tendency_2d = -1

◆ id_tob

integer mom::mom_control_struct::id_tob = -1

Definition at line 326 of file MOM.F90.

326  integer :: id_tob = -1

◆ id_u

integer mom::mom_control_struct::id_u = -1

Definition at line 304 of file MOM.F90.

304  integer :: id_u = -1

◆ id_u_preale

integer mom::mom_control_struct::id_u_preale = -1

Definition at line 381 of file MOM.F90.

381  integer :: id_u_preale = -1

◆ id_u_predia

integer mom::mom_control_struct::id_u_predia = -1

Definition at line 375 of file MOM.F90.

375  integer :: id_u_predia = -1

◆ id_uhtr

integer mom::mom_control_struct::id_uhtr = -1

Definition at line 389 of file MOM.F90.

389  integer :: id_uhtr = -1, id_umo = -1, id_umo_2d = 1

◆ id_umo

integer mom::mom_control_struct::id_umo = -1

Definition at line 389 of file MOM.F90.

◆ id_umo_2d

integer mom::mom_control_struct::id_umo_2d = 1

Definition at line 389 of file MOM.F90.

◆ id_v

integer mom::mom_control_struct::id_v = -1

Definition at line 305 of file MOM.F90.

305  integer :: id_v = -1

◆ id_v_preale

integer mom::mom_control_struct::id_v_preale = -1

Definition at line 382 of file MOM.F90.

382  integer :: id_v_preale = -1

◆ id_v_predia

integer mom::mom_control_struct::id_v_predia = -1

Definition at line 376 of file MOM.F90.

376  integer :: id_v_predia = -1

◆ id_vhtr

integer mom::mom_control_struct::id_vhtr = -1

Definition at line 390 of file MOM.F90.

390  integer :: id_vhtr = -1, id_vmo = -1, id_vmo_2d = 1

◆ id_vmo

integer mom::mom_control_struct::id_vmo = -1

Definition at line 390 of file MOM.F90.

◆ id_vmo_2d

integer mom::mom_control_struct::id_vmo_2d = 1

Definition at line 390 of file MOM.F90.

◆ id_volo

integer mom::mom_control_struct::id_volo = -1

Definition at line 315 of file MOM.F90.

315  integer :: id_volo = -1

◆ id_zos

integer mom::mom_control_struct::id_zos = -1

Definition at line 313 of file MOM.F90.

313  integer :: id_zos = -1

◆ id_zossq

integer mom::mom_control_struct::id_zossq = -1

Definition at line 314 of file MOM.F90.

314  integer :: id_zossq = -1

◆ interp_p_surf

logical mom::mom_control_struct::interp_p_surf

If true, linearly interpolate surface pressure over the coupling time step, using specified value at the end of the coupling step. False by default.

Definition at line 247 of file MOM.F90.

247  logical :: interp_p_surf !< If true, linearly interpolate surface pressure

◆ legacy_split

logical mom::mom_control_struct::legacy_split

If true, use the legacy split time stepping code with all the options that were available in the predecessor isopycnal model "GOLD".

Definition at line 183 of file MOM.F90.

183  logical :: legacy_split !< If true, use the legacy split time stepping

◆ meke

type(meke_type), pointer mom::mom_control_struct::meke => NULL()

structure containing fields related to the Mesoscale Eddy Kinetic Energy

Definition at line 175 of file MOM.F90.

175  type(meke_type), pointer :: meke => null() !< structure containing fields

◆ meke_csp

type(meke_cs), pointer mom::mom_control_struct::meke_csp => NULL()

Definition at line 402 of file MOM.F90.

402  type(meke_cs), pointer :: meke_csp => null()

◆ missing

real mom::mom_control_struct::missing =-1.0e34

missing data value for masked fields

Definition at line 259 of file MOM.F90.

259  real :: missing=-1.0e34 !< missing data value for masked fields

◆ mixedlayer_restrat

logical mom::mom_control_struct::mixedlayer_restrat

If true, use submesoscale mixed layer restratifying scheme.

Definition at line 206 of file MOM.F90.

206  logical :: mixedlayer_restrat !< If true, use submesoscale mixed layer restratifying scheme.

◆ mixedlayer_restrat_csp

type(mixedlayer_restrat_cs), pointer mom::mom_control_struct::mixedlayer_restrat_csp => NULL()

Definition at line 401 of file MOM.F90.

401  type(mixedlayer_restrat_cs), pointer :: mixedlayer_restrat_csp => null()

◆ neutral_diffusion_csp

type(neutral_diffusion_cs), pointer mom::mom_control_struct::neutral_diffusion_csp => NULL()

Definition at line 407 of file MOM.F90.

407  type(neutral_diffusion_cs), pointer :: neutral_diffusion_csp => null()

◆ ntrunc

integer mom::mom_control_struct::ntrunc

number u,v truncations since last call to write_energy

Definition at line 266 of file MOM.F90.

266  integer :: ntrunc !< number u,v truncations since last call to write_energy

◆ obc

type(ocean_obc_type), pointer mom::mom_control_struct::obc => NULL()

Definition at line 413 of file MOM.F90.

413  type(ocean_obc_type), pointer :: obc => null()

◆ offline_csp

type(offline_transport_cs), pointer mom::mom_control_struct::offline_csp => NULL()

Definition at line 417 of file MOM.F90.

417  type(offline_transport_cs), pointer :: offline_csp => null()

◆ offline_tracer_mode

logical mom::mom_control_struct::offline_tracer_mode = .false.

If true, step_offline() is called instead of step_MOM(). This is intended for running MOM6 in offline tracer mode.

Definition at line 216 of file MOM.F90.

216  logical :: offline_tracer_mode = .false.

◆ p_surf_begin

real, dimension(:,:), pointer mom::mom_control_struct::p_surf_begin => NULL()

surface pressure (Pa) at start of step_MOM_dyn_...

Definition at line 274 of file MOM.F90.

◆ p_surf_end

real, dimension(:,:), pointer mom::mom_control_struct::p_surf_end => NULL()

surface pressure (Pa) at end of step_MOM_dyn_...

Definition at line 274 of file MOM.F90.

◆ p_surf_prev

real, dimension(:,:), pointer mom::mom_control_struct::p_surf_prev => NULL()

surface pressure (Pa) at end previous call to step_MOM

Definition at line 274 of file MOM.F90.

274  real, pointer, dimension(:,:) :: &
275  p_surf_prev => null(), & !< surface pressure (Pa) at end previous call to step_MOM
276  p_surf_begin => null(), & !< surface pressure (Pa) at start of step_MOM_dyn_...
277  p_surf_end => null() !< surface pressure (Pa) at end of step_MOM_dyn_...

◆ p_surf_prev_set

logical mom::mom_control_struct::p_surf_prev_set

If true, p_surf_prev has been properly set from a previous time-step or the ocean restart file. This is only valid when interp_p_surf is true.

Definition at line 250 of file MOM.F90.

250  logical :: p_surf_prev_set !< If true, p_surf_prev has been properly set from

◆ pass_bbl_thick_kv_bbl

type(group_pass_type) mom::mom_control_struct::pass_bbl_thick_kv_bbl

Definition at line 422 of file MOM.F90.

422  type(group_pass_type) :: pass_bbl_thick_kv_bbl

◆ pass_kv_turb

type(group_pass_type) mom::mom_control_struct::pass_kv_turb

Definition at line 425 of file MOM.F90.

425  type(group_pass_type) :: pass_kv_turb

◆ pass_ray

type(group_pass_type) mom::mom_control_struct::pass_ray

Definition at line 421 of file MOM.F90.

421  type(group_pass_type) :: pass_ray

◆ pass_ssh

type(group_pass_type) mom::mom_control_struct::pass_ssh

Definition at line 427 of file MOM.F90.

427  type(group_pass_type) :: pass_ssh

◆ pass_t_s

type(group_pass_type) mom::mom_control_struct::pass_t_s

Definition at line 424 of file MOM.F90.

424  type(group_pass_type) :: pass_t_s

◆ pass_t_s_h

type(group_pass_type) mom::mom_control_struct::pass_t_s_h

Definition at line 423 of file MOM.F90.

423  type(group_pass_type) :: pass_t_s_h

◆ pass_tau_ustar_psurf

type(group_pass_type) mom::mom_control_struct::pass_tau_ustar_psurf

Definition at line 420 of file MOM.F90.

420  type(group_pass_type) :: pass_tau_ustar_psurf

◆ pass_uv_t_s_h

type(group_pass_type) mom::mom_control_struct::pass_uv_t_s_h

Definition at line 426 of file MOM.F90.

426  type(group_pass_type) :: pass_uv_t_s_h

◆ rel_time

real mom::mom_control_struct::rel_time = 0.0

relative time (sec) since start of current execution

Definition at line 241 of file MOM.F90.

241  real :: rel_time = 0.0 !< relative time (sec) since start of current execution

◆ restart_csp

type(mom_restart_cs), pointer mom::mom_control_struct::restart_csp => NULL()

Definition at line 411 of file MOM.F90.

411  type(mom_restart_cs), pointer :: restart_csp => null()

◆ s

real, dimension( : , : , : ), allocatable mom::mom_control_struct::s

salinity (ppt)

Definition at line 149 of file MOM.F90.

◆ s_advection_xy

real, dimension(:,:,:), pointer mom::mom_control_struct::s_advection_xy => NULL()

Definition at line 291 of file MOM.F90.

◆ s_adx

real, dimension(:,:,:), pointer mom::mom_control_struct::s_adx => NULL()

Definition at line 283 of file MOM.F90.

◆ s_adx_2d

real, dimension(:,:), pointer mom::mom_control_struct::s_adx_2d => NULL()

Definition at line 287 of file MOM.F90.

◆ s_ady

real, dimension(:,:,:), pointer mom::mom_control_struct::s_ady => NULL()

Definition at line 283 of file MOM.F90.

◆ s_ady_2d

real, dimension(:,:), pointer mom::mom_control_struct::s_ady_2d => NULL()

Definition at line 287 of file MOM.F90.

◆ s_diffx

real, dimension(:,:,:), pointer mom::mom_control_struct::s_diffx => NULL()

Definition at line 283 of file MOM.F90.

◆ s_diffx_2d

real, dimension(:,:), pointer mom::mom_control_struct::s_diffx_2d => NULL()

Definition at line 287 of file MOM.F90.

◆ s_diffy

real, dimension(:,:,:), pointer mom::mom_control_struct::s_diffy => NULL()

Definition at line 283 of file MOM.F90.

◆ s_diffy_2d

real, dimension(:,:), pointer mom::mom_control_struct::s_diffy_2d => NULL()

Definition at line 287 of file MOM.F90.

◆ s_prev

real, dimension(:,:,:), pointer mom::mom_control_struct::s_prev => NULL()

Definition at line 291 of file MOM.F90.

◆ s_squared

real, dimension(:,:,:), pointer mom::mom_control_struct::s_squared => NULL()

Definition at line 296 of file MOM.F90.

◆ set_visc_csp

type(set_visc_cs), pointer mom::mom_control_struct::set_visc_csp => NULL()

Definition at line 398 of file MOM.F90.

398  type(set_visc_cs), pointer :: set_visc_csp => null()

◆ sh_prev

real, dimension(:,:,:), pointer mom::mom_control_struct::sh_prev => NULL()

Definition at line 291 of file MOM.F90.

◆ split

logical mom::mom_control_struct::split

If true, use the split time stepping scheme.

Definition at line 182 of file MOM.F90.

182  logical :: split !< If true, use the split time stepping scheme.

◆ sponge_csp

type(sponge_cs), pointer mom::mom_control_struct::sponge_csp => NULL()

Definition at line 414 of file MOM.F90.

414  type(sponge_cs), pointer :: sponge_csp => null()

◆ t

real, dimension( : , : , : ), allocatable mom::mom_control_struct::t

potential temperature (degrees C)

Definition at line 149 of file MOM.F90.

◆ t_advection_xy

real, dimension(:,:,:), pointer mom::mom_control_struct::t_advection_xy => NULL()

Definition at line 291 of file MOM.F90.

291  real, pointer, dimension(:,:,:) :: & !< diagnostic arrays for advection tendencies and total tendencies
292  t_advection_xy => null(), s_advection_xy => null(), &
293  t_prev => null(), s_prev => null(), &
294  th_prev => null(), sh_prev => null()

◆ t_adx

real, dimension(:,:,:), pointer mom::mom_control_struct::t_adx => NULL()

Definition at line 283 of file MOM.F90.

283  real, pointer, dimension(:,:,:) :: & !< diagnostic arrays of advective/diffusive tracer fluxes
284  t_adx => null(), t_ady => null(), t_diffx => null(), t_diffy => null(), &
285  s_adx => null(), s_ady => null(), s_diffx => null(), s_diffy => null()

◆ t_adx_2d

real, dimension(:,:), pointer mom::mom_control_struct::t_adx_2d => NULL()

Definition at line 287 of file MOM.F90.

287  real, pointer, dimension(:,:) :: & !< diagnostic arrays of vertically integrated advective/diffusive fluxes
288  t_adx_2d => null(), t_ady_2d => null(), t_diffx_2d => null(), t_diffy_2d => null(), &
289  s_adx_2d => null(), s_ady_2d => null(), s_diffx_2d => null(), s_diffy_2d => null()

◆ t_ady

real, dimension(:,:,:), pointer mom::mom_control_struct::t_ady => NULL()

Definition at line 283 of file MOM.F90.

◆ t_ady_2d

real, dimension(:,:), pointer mom::mom_control_struct::t_ady_2d => NULL()

Definition at line 287 of file MOM.F90.

◆ t_diffx

real, dimension(:,:,:), pointer mom::mom_control_struct::t_diffx => NULL()

Definition at line 283 of file MOM.F90.

◆ t_diffx_2d

real, dimension(:,:), pointer mom::mom_control_struct::t_diffx_2d => NULL()

Definition at line 287 of file MOM.F90.

◆ t_diffy

real, dimension(:,:,:), pointer mom::mom_control_struct::t_diffy => NULL()

Definition at line 283 of file MOM.F90.

◆ t_diffy_2d

real, dimension(:,:), pointer mom::mom_control_struct::t_diffy_2d => NULL()

Definition at line 287 of file MOM.F90.

◆ t_dyn_rel_adv

real mom::mom_control_struct::t_dyn_rel_adv

The time of the dynamics relative to tracer advection and lateral mixing (in seconds), or equivalently the elapsed time since advectively updating the tracers. t_dyn_rel_adv is invariably positive and may span multiple coupling timesteps.

Definition at line 225 of file MOM.F90.

225  real :: t_dyn_rel_adv !< The time of the dynamics relative to tracer

◆ t_dyn_rel_diag

real mom::mom_control_struct::t_dyn_rel_diag

The time of the diagnostics relative to diabatic processes and remapping (in seconds). t_dyn_rel_diag is always positive, since the diagnostics must lag.

Definition at line 235 of file MOM.F90.

235  real :: t_dyn_rel_diag !< The time of the diagnostics relative to diabatic

◆ t_dyn_rel_thermo

real mom::mom_control_struct::t_dyn_rel_thermo

The time of the dynamics relative to diabatic processes and remapping (in seconds). t_dyn_rel_thermo can be negative or positive depending on whether the diabatic processes are applied before or after the dynamics and may span multiple coupling timesteps.

Definition at line 230 of file MOM.F90.

230  real :: t_dyn_rel_thermo !< The time of the dynamics relative to diabatic

◆ t_prev

real, dimension(:,:,:), pointer mom::mom_control_struct::t_prev => NULL()

Definition at line 291 of file MOM.F90.

◆ t_squared

real, dimension(:,:,:), pointer mom::mom_control_struct::t_squared => NULL()

Definition at line 296 of file MOM.F90.

296  real, pointer, dimension(:,:,:) :: & !< diagnostic arrays for variance decay through ALE
297  t_squared => null(), s_squared => null()

◆ tendency_diagnostics

logical mom::mom_control_struct::tendency_diagnostics = .false.

Definition at line 299 of file MOM.F90.

299  logical :: tendency_diagnostics = .false.

◆ th_prev

real, dimension(:,:,:), pointer mom::mom_control_struct::th_prev => NULL()

Definition at line 291 of file MOM.F90.

◆ thermo_spans_coupling

logical mom::mom_control_struct::thermo_spans_coupling

If true, thermodynamic and tracer time steps can span multiple coupled time steps.

Definition at line 223 of file MOM.F90.

223  logical :: thermo_spans_coupling !< If true, thermodynamic and tracer time

◆ thickness_diffuse

logical mom::mom_control_struct::thickness_diffuse

If true, diffuse interface height w/ a diffusivity KHTH.

Definition at line 204 of file MOM.F90.

204  logical :: thickness_diffuse !< If true, diffuse interface height w/ a diffusivity KHTH.

◆ thickness_diffuse_csp

type(thickness_diffuse_cs), pointer mom::mom_control_struct::thickness_diffuse_csp => NULL()

Definition at line 400 of file MOM.F90.

400  type(thickness_diffuse_cs), pointer :: thickness_diffuse_csp => null()

◆ thickness_diffuse_first

logical mom::mom_control_struct::thickness_diffuse_first

If true, diffuse thickness before dynamics.

Definition at line 205 of file MOM.F90.

205  logical :: thickness_diffuse_first !< If true, diffuse thickness before dynamics.

◆ time

type(time_type), pointer mom::mom_control_struct::time

pointer to ocean clock

Definition at line 240 of file MOM.F90.

240  type(time_type), pointer :: time !< pointer to ocean clock

◆ tracer_adv_csp

type(tracer_advect_cs), pointer mom::mom_control_struct::tracer_adv_csp => NULL()

Definition at line 405 of file MOM.F90.

405  type(tracer_advect_cs), pointer :: tracer_adv_csp => null()

◆ tracer_diff_csp

type(tracer_hor_diff_cs), pointer mom::mom_control_struct::tracer_diff_csp => NULL()

Definition at line 406 of file MOM.F90.

406  type(tracer_hor_diff_cs), pointer :: tracer_diff_csp => null()

◆ tracer_flow_csp

type(tracer_flow_control_cs), pointer mom::mom_control_struct::tracer_flow_csp => NULL()

Definition at line 408 of file MOM.F90.

408  type(tracer_flow_control_cs), pointer :: tracer_flow_csp => null()

◆ tracer_reg

type(tracer_registry_type), pointer mom::mom_control_struct::tracer_reg => NULL()

Definition at line 404 of file MOM.F90.

404  type(tracer_registry_type), pointer :: tracer_reg => null()

◆ tv

type(thermo_var_ptrs) mom::mom_control_struct::tv

structure containing pointers to available thermodynamic fields

Definition at line 170 of file MOM.F90.

170  type(thermo_var_ptrs) :: tv !< structure containing pointers to available

◆ u

real, dimension( : , : , : ), allocatable mom::mom_control_struct::u

zonal velocity component (m/s)

Definition at line 153 of file MOM.F90.

153  real allocable_, dimension(NIMEMB_PTR_,NJMEM_,NKMEM_) :: &
154  u, & !< zonal velocity component (m/s)
155  uh, & !< uh = u * h * dy at u grid points (m3/s or kg/s)
156  uhtr !< accumulated zonal thickness fluxes to advect tracers (m3 or kg)

◆ u_prev

real, dimension(:,:,:), pointer mom::mom_control_struct::u_prev => NULL()

previous value of u stored for diagnostics

Definition at line 164 of file MOM.F90.

164  real, pointer, dimension(:,:,:) :: &
165  u_prev => null(), & !< previous value of u stored for diagnostics
166  v_prev => null() !< previous value of v stored for diagnostics

◆ uh

real, dimension( : , : , : ), allocatable mom::mom_control_struct::uh

uh = u * h * dy at u grid points (m3/s or kg/s)

Definition at line 153 of file MOM.F90.

◆ uhtr

real, dimension( : , : , : ), allocatable mom::mom_control_struct::uhtr

accumulated zonal thickness fluxes to advect tracers (m3 or kg)

Definition at line 153 of file MOM.F90.

◆ update_obc_csp

type(update_obc_cs), pointer mom::mom_control_struct::update_obc_csp => NULL()

Definition at line 412 of file MOM.F90.

412  type(update_obc_cs), pointer :: update_obc_csp => null()

◆ use_ale_algorithm

logical mom::mom_control_struct::use_ale_algorithm

If true, use the ALE algorithm rather than layered isopycnal/stacked shallow water mode. This logical is set by calling the function useRegridding() from the MOM_regridding module.

Definition at line 210 of file MOM.F90.

210  logical :: use_ale_algorithm !< If true, use the ALE algorithm rather than layered

◆ use_cont_abss

logical mom::mom_control_struct::use_cont_abss

If true, , the prognostics T&S are the conservative temperature and absolute salinity. Care should be taken to convert them to potential temperature and practical salinity before exchanging them with the coupler and/or reporting T&S diagnostics.

Definition at line 200 of file MOM.F90.

200  logical :: use_cont_abss !< If true, , the prognostics T&S are the conservative temperature

◆ use_frazil

logical mom::mom_control_struct::use_frazil

If true, liquid seawater freezes if temp below freezing, with accumulated heat deficit returned to surface ocean.

Definition at line 192 of file MOM.F90.

192  logical :: use_frazil !< If true, liquid seawater freezes if temp below freezing,

◆ use_rk2

logical mom::mom_control_struct::use_rk2

If true, use RK2 instead of RK3 in unsplit mode (i.e., no split between barotropic and baroclinic).

Definition at line 186 of file MOM.F90.

186  logical :: use_rk2 !< If true, use RK2 instead of RK3 in unsplit mode

◆ use_temperature

logical mom::mom_control_struct::use_temperature

If true, temp and saln used as state variables.

Definition at line 190 of file MOM.F90.

190  logical :: use_temperature !< If true, temp and saln used as state variables.

◆ usemeke

logical mom::mom_control_struct::usemeke

If true, call the MEKE parameterization.

Definition at line 207 of file MOM.F90.

207  logical :: usemeke !< If true, call the MEKE parameterization.

◆ v

real, dimension( : , : , : ), allocatable mom::mom_control_struct::v

meridional velocity (m/s)

Definition at line 157 of file MOM.F90.

157  real allocable_, dimension(NIMEM_,NJMEMB_PTR_,NKMEM_) :: &
158  v, & !< meridional velocity (m/s)
159  vh, & !< vh = v * h * dx at v grid points (m3/s or kg/s)
160  vhtr !< accumulated meridional thickness fluxes to advect tracers (m3 or kg)

◆ v_prev

real, dimension(:,:,:), pointer mom::mom_control_struct::v_prev => NULL()

previous value of v stored for diagnostics

Definition at line 164 of file MOM.F90.

◆ varmix

type(varmix_cs), pointer mom::mom_control_struct::varmix => NULL()

Definition at line 403 of file MOM.F90.

403  type(varmix_cs), pointer :: varmix => null()

◆ vd_s

type(vardesc) mom::mom_control_struct::vd_s

vardesc array describing salinity

Definition at line 279 of file MOM.F90.

◆ vd_t

type(vardesc) mom::mom_control_struct::vd_t

vardesc array describing potential temperature

Definition at line 279 of file MOM.F90.

279  type(vardesc) :: &
280  vd_t, & !< vardesc array describing potential temperature
281  vd_s !< vardesc array describing salinity

◆ vh

real, dimension( : , : , : ), allocatable mom::mom_control_struct::vh

vh = v * h * dx at v grid points (m3/s or kg/s)

Definition at line 157 of file MOM.F90.

◆ vhtr

real, dimension( : , : , : ), allocatable mom::mom_control_struct::vhtr

accumulated meridional thickness fluxes to advect tracers (m3 or kg)

Definition at line 157 of file MOM.F90.

◆ visc

type(vertvisc_type) mom::mom_control_struct::visc

structure containing vertical viscosities, bottom drag viscosities, and related fields

Definition at line 173 of file MOM.F90.

173  type(vertvisc_type) :: visc !< structure containing vertical viscosities,

◆ write_ic

logical mom::mom_control_struct::write_ic

If true, then the initial conditions will be written to file.

Definition at line 262 of file MOM.F90.

262  logical :: write_ic !< If true, then the initial conditions will be written to file

◆ z_diag_interval

type(time_type) mom::mom_control_struct::z_diag_interval

amount of time between calculating Z-space diagnostics

Definition at line 238 of file MOM.F90.

238  type(time_type) :: z_diag_interval !< amount of time between calculating Z-space diagnostics

◆ z_diag_time

type(time_type) mom::mom_control_struct::z_diag_time

next time to compute Z-space diagnostics

Definition at line 239 of file MOM.F90.

239  type(time_type) :: z_diag_time !< next time to compute Z-space diagnostics

The documentation for this type was generated from the following file: