MOM6
|
The control structure with parameters for the MOM_bulk_mixed_layer module.
Definition at line 32 of file MOM_bulk_mixed_layer.F90.
Public variables and constants | |
integer | nkml |
The number of layers in the mixed layer. | |
integer | nkbl |
The number of buffer layers. | |
integer | nsw |
The number of bands of penetrating shortwave radiation. | |
real | mstar |
The ratio of the friction velocity cubed to the TKE input to the mixed layer, nondimensional. | |
real | nstar |
The fraction of the TKE input to the mixed layer available to drive entrainment [nondim]. | |
real | nstar2 |
The fraction of potential energy released by convective adjustment that drives entrainment [nondim]. | |
logical | absorb_all_sw |
If true, all shortwave radiation is absorbed by the ocean, instead of passing through to the bottom mud. | |
real | tke_decay |
The ratio of the natural Ekman depth to the TKE decay scale, nondimensional. | |
real | bulk_ri_ml |
The efficiency with which mean kinetic energy released by mechanically forced entrainment of the mixed layer is converted to TKE [nondim]. | |
real | bulk_ri_convective |
The efficiency with which convectively released mean kinetic energy becomes TKE [nondim]. | |
real | hmix_min |
The minimum mixed layer thickness [H ~> m or kg m-2]. | |
real | h_limit_fluxes |
When the total ocean depth is less than this value [H ~> m or kg m-2], scale away all surface forcing to avoid boiling the ocean. | |
real | ustar_min |
A minimum value of ustar to avoid numerical problems [Z T-1 ~> m s-1]. If the value is small enough, this should not affect the solution. | |
real | omega |
The Earth's rotation rate [T-1 ~> s-1]. | |
real | dt_ds_wt |
When forced to extrapolate T & S to match the layer densities, this factor (in degC / ppt) is combined with the derivatives of density with T & S to determines what direction is orthogonal to density contours. It should be a typical value of (dR/dS) / (dR/dT) in oceanic profiles. 6 degC ppt-1 might be reasonable. | |
real | hbuffer_min |
The minimum buffer layer thickness when the mixed layer is very large [H ~> m or kg m-2]. | |
real | hbuffer_rel_min |
The minimum buffer layer thickness relative to the combined mixed and buffer layer thicknesses when they are thin [nondim]. | |
real | bl_detrain_time |
A timescale that characterizes buffer layer detrainment events [T ~> s]. | |
real | bl_extrap_lim |
A limit on the density range over which extrapolation can occur when detraining from the buffer layers, relative to the density range within the mixed and buffer layers, when the detrainment is going into the lightest interior layer [nondim]. | |
real | bl_split_rho_tol |
The fractional tolerance for matching layer target densities when splitting layers to deal with massive interior layers that are lighter than one of the mixed or buffer layers [nondim]. | |
logical | ml_resort |
If true, resort the layers by density, rather than doing convective adjustment. | |
integer | ml_presort_nz_conv_adj |
If ML_resort is true, do convective adjustment on this many layers (starting from the top) before sorting the remaining layers. | |
real | omega_frac |
When setting the decay scale for turbulence, use this fraction of the absolute rotation rate blended with the local value of f, as sqrt((1-of)*f^2 + of*4*omega^2). | |
logical | correct_absorption |
If true, the depth at which penetrating shortwave radiation is absorbed is corrected by moving some of the heating upward in the water column. The default is false. | |
logical | resolve_ekman |
If true, the nkml layers in the mixed layer are chosen to optimally represent the impact of the Ekman transport on the mixed layer TKE budget. | |
type(time_type), pointer | time => NULL() |
A pointer to the ocean model's clock. | |
logical | tke_diagnostics = .false. |
If true, calculate extensive diagnostics of the TKE budget. | |
logical | do_rivermix = .false. |
Provide additional TKE to mix river runoff at the river mouths to rivermix_depth. | |
real | rivermix_depth = 0.0 |
The depth of mixing if do_rivermix is true [Z ~> m]. | |
logical | limit_det |
If true, limit the extent of buffer layer detrainment to be consistent with neighbors. | |
real | lim_det_dh_sfc |
The fractional limit in the change between grid points of the surface region (mixed & buffer layer) thickness [nondim]. 0.5 by default. | |
real | lim_det_dh_bathy |
The fraction of the total depth by which the thickness of the surface region (mixed & buffer layer) is allowed to change between grid points. Nondimensional, 0.2 by default. | |
logical | use_river_heat_content |
If true, use the fluxesrunoff_Hflx field to set the heat carried by runoff, instead of using SST for temperature of liq_runoff. | |
logical | use_calving_heat_content |
Use SST for temperature of froz_runoff. | |
logical | salt_reject_below_ml |
It true, add salt below mixed layer (layer mode only) | |
type(diag_ctrl), pointer | diag => NULL() |
A structure that is used to regulate the timing of diagnostic output. | |
real | allowed_t_chg |
The amount by which temperature is allowed to exceed previous values during detrainment, K. | |
real | allowed_s_chg |
The amount by which salinity is allowed to exceed previous values during detrainment, ppt. | |
real, dimension(:,:), allocatable | ml_depth |
The mixed layer depth [H ~> m or kg m-2]. | |
real, dimension(:,:), allocatable | diag_tke_wind |
The wind source of TKE. | |
real, dimension(:,:), allocatable | diag_tke_ribulk |
The resolved KE source of TKE. | |
real, dimension(:,:), allocatable | diag_tke_conv |
The convective source of TKE. | |
real, dimension(:,:), allocatable | diag_tke_pen_sw |
The TKE sink required to mix penetrating shortwave heating. | |
real, dimension(:,:), allocatable | diag_tke_mech_decay |
The decay of mechanical TKE. | |
real, dimension(:,:), allocatable | diag_tke_conv_decay |
The decay of convective TKE. | |
real, dimension(:,:), allocatable | diag_tke_mixing |
The work done by TKE to deepen the mixed layer. | |
real, dimension(:,:), allocatable | diag_tke_conv_s2 |
The convective source of TKE due to to mixing in sigma2. | |
real, dimension(:,:), allocatable | diag_pe_detrain |
The spurious source of potential energy due to mixed layer. | |
real, dimension(:,:), allocatable | diag_pe_detrain2 |
The spurious source of potential energy due to mixed layer only. | |
logical | allow_clocks_in_omp_loops |
If true, clocks can be called from inside loops that can be threaded. To run with multiple threads, set to False. | |
type(group_pass_type) | pass_h_sum_hmbl_prev |
For group halo pass. | |
integer | id_ml_depth = -1 |
Diagnostic IDs. | |
integer | id_tke_wind = -1 |
Diagnostic IDs. | |
integer | id_tke_mixing = -1 |
Diagnostic IDs. | |
integer | id_tke_ribulk = -1 |
Diagnostic IDs. | |
integer | id_tke_conv = -1 |
Diagnostic IDs. | |
integer | id_tke_pen_sw = -1 |
Diagnostic IDs. | |
integer | id_tke_mech_decay = -1 |
Diagnostic IDs. | |
integer | id_tke_conv_decay = -1 |
Diagnostic IDs. | |
integer | id_tke_conv_s2 = -1 |
Diagnostic IDs. | |
integer | id_pe_detrain = -1 |
Diagnostic IDs. | |
integer | id_pe_detrain2 = -1 |
Diagnostic IDs. | |
integer | id_h_mismatch = -1 |
Diagnostic IDs. | |
integer | id_hsfc_used = -1 |
Diagnostic IDs. | |
integer | id_hsfc_max = -1 |
Diagnostic IDs. | |
integer | id_hsfc_min = -1 |
Diagnostic IDs. | |