MOM6
|
Regrid columns for the SLight coordinate.
Data Types | |
type | slight_cs |
Control structure containing required parameters for the SLight coordinate. More... | |
Functions/Subroutines | |
subroutine, public | init_coord_slight (CS, nk, ref_pressure, target_density, interp_CS) |
Initialise a slight_CS with pointers to parameters. More... | |
subroutine, public | end_coord_slight (CS) |
subroutine, public | set_slight_params (CS, max_interface_depths, max_layer_thickness, min_thickness, compressibility_fraction, dz_ml_min, nz_fixed_surface, Rho_ML_avg_depth, nlay_ML_offset, fix_haloclines, halocline_filter_length, halocline_strat_tol, interp_CS) |
subroutine, public | build_slight_column (CS, eqn_of_state, H_to_Pa, m_to_H, H_subroundoff, nz, depth, h_col, T_col, S_col, p_col, z_col, z_col_new) |
Build a SLight coordinate column. More... | |
subroutine | rho_interfaces_col (rho_col, h_col, z_col, rho_tgt, nz, z_col_new, CS, reliable, debug) |
Finds the new interface locations in a column of water that match the prescribed target densities. More... | |
subroutine, public coord_slight::build_slight_column | ( | type(slight_cs), intent(in) | CS, |
type(eos_type), pointer | eqn_of_state, | ||
real, intent(in) | H_to_Pa, | ||
real, intent(in) | m_to_H, | ||
real, intent(in) | H_subroundoff, | ||
integer, intent(in) | nz, | ||
real, intent(in) | depth, | ||
real, dimension(nz), intent(in) | h_col, | ||
real, dimension(nz), intent(in) | T_col, | ||
real, dimension(nz), intent(in) | S_col, | ||
real, dimension(nz), intent(in) | p_col, | ||
real, dimension(nz+1), intent(in) | z_col, | ||
real, dimension(nz+1), intent(inout) | z_col_new | ||
) |
Build a SLight coordinate column.
[in] | cs | Coordinate control structure |
eqn_of_state | Equation of state structure | |
[in] | h_to_pa | GVH_to_Pa |
[in] | m_to_h | GVm_to_H |
[in] | h_subroundoff | GVH_subroundoff |
[in] | nz | Number of levels |
[in] | depth | Depth of ocean bottom (positive in m) |
[in] | s_col | T and S for column |
[in] | h_col | Layer thicknesses, in m |
[in] | p_col | Layer quantities |
[in] | z_col | Interface positions relative to the surface in H units (m or kg m-2) |
[in,out] | z_col_new | Absolute positions of interfaces |
Definition at line 152 of file coord_slight.F90.
References mom_eos::calculate_density_derivs(), mom_error_handler::mom_error(), and rho_interfaces_col().
subroutine, public coord_slight::end_coord_slight | ( | type(slight_cs), pointer | CS | ) |
Definition at line 89 of file coord_slight.F90.
Referenced by mom_regridding::end_regridding().
subroutine, public coord_slight::init_coord_slight | ( | type(slight_cs), pointer | CS, |
integer, intent(in) | nk, | ||
real, intent(in) | ref_pressure, | ||
real, dimension(:), intent(in) | target_density, | ||
type(interp_cs_type), intent(in) | interp_CS | ||
) |
Initialise a slight_CS with pointers to parameters.
cs | Unassociated pointer to hold the control structure |
Definition at line 72 of file coord_slight.F90.
References mom_error_handler::mom_error().
|
private |
Finds the new interface locations in a column of water that match the prescribed target densities.
[in] | nz | Number of layers |
[in] | rho_col | Initial layer reference densities. |
[in] | h_col | Initial layer thicknesses. |
[in] | z_col | Initial interface heights. |
[in] | rho_tgt | Interface target densities. |
[in,out] | z_col_new | New interface heights. |
[in] | cs | Coordinate control structure |
[in,out] | reliable | If true, the interface positions are well defined from a stable region. |
[in] | debug | If present and true, do debugging checks. |
Definition at line 445 of file coord_slight.F90.
References mom_error_handler::mom_error(), regrid_interp::nr_iterations, and regrid_interp::nr_tolerance.
Referenced by build_slight_column().
subroutine, public coord_slight::set_slight_params | ( | type(slight_cs), pointer | CS, |
real, dimension(:), intent(in), optional | max_interface_depths, | ||
real, dimension(:), intent(in), optional | max_layer_thickness, | ||
real, intent(in), optional | min_thickness, | ||
real, intent(in), optional | compressibility_fraction, | ||
real, intent(in), optional | dz_ml_min, | ||
integer, intent(in), optional | nz_fixed_surface, | ||
real, intent(in), optional | Rho_ML_avg_depth, | ||
real, intent(in), optional | nlay_ML_offset, | ||
logical, intent(in), optional | fix_haloclines, | ||
real, intent(in), optional | halocline_filter_length, | ||
real, intent(in), optional | halocline_strat_tol, | ||
type(interp_cs_type), intent(in), optional | interp_CS | ||
) |
Definition at line 101 of file coord_slight.F90.
References mom_error_handler::mom_error().