MOM6
|
Interface to CVMix interior shear schemes.
Data Types | |
type | cvmix_shear_cs |
Control structure including parameters for CVMix interior shear schemes. More... | |
Functions/Subroutines | |
subroutine, public | calculate_cvmix_shear (u_H, v_H, h, tv, KH, KM, G, GV, CS) |
Subroutine for calculating (internal) diffusivity. More... | |
logical function, public | cvmix_shear_init (Time, G, GV, param_file, diag, CS) |
Initialized the cvmix internal shear mixing routine. More... | |
logical function, public | cvmix_shear_is_used (param_file) |
Reads the parameters "LMD94" and "PP81" and returns state. This function allows other modules to know whether this parameterization will be used without needing to duplicate the log entry. More... | |
Variables | |
character(len=40) | mdl = "MOM_CVMix_shear" |
This module's name. More... | |
subroutine, public mom_cvmix_shear::calculate_cvmix_shear | ( | real, dimension(szi_(g),szj_(g),szk_(g)), intent(in) | u_H, |
real, dimension(szi_(g),szj_(g),szk_(g)), intent(in) | v_H, | ||
real, dimension(szi_(g),szj_(g),szk_(g)), intent(in) | h, | ||
type(thermo_var_ptrs), intent(in) | tv, | ||
real, dimension(szi_(g),szj_(g),szk_(g)+1), intent(out) | KH, | ||
real, dimension(szi_(g),szj_(g),szk_(g)+1), intent(out) | KM, | ||
type(ocean_grid_type), intent(in) | G, | ||
type(verticalgrid_type), intent(in) | GV, | ||
type(cvmix_shear_cs), pointer | CS | ||
) |
Subroutine for calculating (internal) diffusivity.
[in] | g | Grid structure. |
[in] | gv | Vertical grid structure. |
[in] | u_h | Initial zonal velocity on T points, in m s-1. |
[in] | v_h | Initial meridional velocity on T points, in m s-1. |
[in] | h | Layer thickness, in m or kg m-2. |
[in] | tv | Thermodynamics structure. |
[out] | kh | The vertical viscosity at each interface (not layer!) in m2 s-1. |
[out] | km | The vertical viscosity at each interface (not layer!) in m2 s-1. |
cs | The control structure returned by a previous call to CVMix_shear_init. |
Definition at line 48 of file MOM_cvmix_shear.F90.
Referenced by mom_set_diffusivity::set_diffusivity().
logical function, public mom_cvmix_shear::cvmix_shear_init | ( | type(time_type), intent(in) | Time, |
type(ocean_grid_type), intent(in) | G, | ||
type(verticalgrid_type), intent(in) | GV, | ||
type(param_file_type), intent(in) | param_file, | ||
type(diag_ctrl), intent(inout), target | diag, | ||
type(cvmix_shear_cs), pointer | CS | ||
) |
Initialized the cvmix internal shear mixing routine.
[in] | time | The current time. |
[in] | g | Grid structure. |
[in] | gv | Vertical grid structure. |
[in] | param_file | Run-time parameter file handle |
[in,out] | diag | Diagnostics control structure. |
cs | This module's control structure. |
Definition at line 131 of file MOM_cvmix_shear.F90.
References mom_kappa_shear::kappa_shear_is_used(), mdl, and mom_error_handler::mom_error().
logical function, public mom_cvmix_shear::cvmix_shear_is_used | ( | type(param_file_type), intent(in) | param_file | ) |
Reads the parameters "LMD94" and "PP81" and returns state. This function allows other modules to know whether this parameterization will be used without needing to duplicate the log entry.
[in] | param_file | Run-time parameter files handle. |
Definition at line 206 of file MOM_cvmix_shear.F90.
References mdl.
Referenced by mom_diabatic_driver::diabatic_driver_init(), and mom_set_visc::set_visc_register_restarts().
character(len=40) mom_cvmix_shear::mdl = "MOM_CVMix_shear" |
This module's name.
Definition at line 41 of file MOM_cvmix_shear.F90.
Referenced by cvmix_shear_init(), and cvmix_shear_is_used().