MOM6
|
Data Types | |
type | diagnostics_cs |
Functions/Subroutines | |
subroutine, public | calculate_diagnostic_fields (u, v, h, uh, vh, tv, ADp, CDp, fluxes, dt, G, GV, CS, eta_bt) |
Diagnostics not more naturally calculated elsewhere are computed here. More... | |
subroutine | find_weights (Rlist, R_in, k, nz, wt, wt_p) |
This subroutine finds location of R_in in an increasing ordered list, Rlist, returning as k the element such that Rlist(k) <= R_in < Rlist(k+1), and where wt and wt_p are the linear weights that should be assigned to elements k and k+1. More... | |
subroutine | calculate_vertical_integrals (h, tv, fluxes, G, GV, CS) |
Subroutine calculates vertical integrals of several tracers, along with the mass-weight of these tracers, the total column mass, and the carefully calculated column height. More... | |
subroutine | calculate_energy_diagnostics (u, v, h, uh, vh, ADp, CDp, G, CS) |
This subroutine calculates terms in the mechanical energy budget. More... | |
subroutine, public | register_time_deriv (f_ptr, deriv_ptr, CS) |
This subroutine registers fields to calculate a diagnostic time derivative. More... | |
subroutine | calculate_derivs (dt, G, CS) |
This subroutine calculates all registered time derivatives. More... | |
subroutine, public | mom_diagnostics_init (MIS, ADp, CDp, Time, G, GV, param_file, diag, CS) |
subroutine | set_dependent_diagnostics (MIS, ADp, CDp, G, CS) |
This subroutine sets up diagnostics upon which other diagnostics depend. More... | |
subroutine, public | mom_diagnostics_end (CS, ADp) |
|
private |
This subroutine calculates all registered time derivatives.
[in] | dt | The time interval over which differences occur, in s. |
[in,out] | g | The ocean's grid structure. |
[in,out] | cs | Control structure returned by previous call to diagnostics_init. |
Definition at line 1086 of file MOM_diagnostics.F90.
Referenced by calculate_diagnostic_fields().
subroutine, public mom_diagnostics::calculate_diagnostic_fields | ( | real, dimension( g %isdb: g %iedb, g %jsd: g %jed, g %ke), intent(in) | u, |
real, dimension( g %isd: g %ied, g %jsdb: g %jedb, g %ke), intent(in) | v, | ||
real, dimension( g %isd: g %ied, g %jsd: g %jed, g %ke), intent(in) | h, | ||
real, dimension( g %isdb: g %iedb, g %jsd: g %jed, g %ke), intent(in) | uh, | ||
real, dimension( g %isd: g %ied, g %jsdb: g %jedb, g %ke), intent(in) | vh, | ||
type(thermo_var_ptrs), intent(in) | tv, | ||
type(accel_diag_ptrs), intent(in) | ADp, | ||
type(cont_diag_ptrs), intent(in) | CDp, | ||
type(forcing), intent(in) | fluxes, | ||
real, intent(in) | dt, | ||
type(ocean_grid_type), intent(inout) | G, | ||
type(verticalgrid_type), intent(in) | GV, | ||
type(diagnostics_cs), intent(inout) | CS, | ||
real, dimension( g %isd: g %ied, g %jsd: g %jed), intent(in), optional | eta_bt | ||
) |
Diagnostics not more naturally calculated elsewhere are computed here.
[in,out] | g | The ocean's grid structure. |
[in] | gv | The ocean's vertical grid structure. |
[in] | u | The zonal velocity, in m s-1. |
[in] | v | The meridional velocity, in m s-1. |
[in] | h | Layer thicknesses, in H (usually m or kg m-2). |
[in] | uh | Transport through zonal faces = u*h*dy, m3/s(Bouss) kg/s(non-Bouss). |
[in] | vh | transport through meridional faces = v*h*dx, m3/s(Bouss) kg/s(non-Bouss). |
[in] | tv | A structure pointing to various thermodynamic variables. |
[in] | adp | structure with pointers to accelerations in momentum equation. |
[in] | cdp | structure with pointers to terms in continuity equation. |
[in] | fluxes | A structure containing the surface fluxes. |
[in] | dt | The time difference in s since the last call to this subroutine. |
[in,out] | cs | Control structure returned by a previous call to diagnostics_init. |
[in] | eta_bt | An optional barotropic variable that gives the "correct" free surface height (Boussinesq) or total water column mass per unit area (non-Boussinesq). This is used to dilate the layer thicknesses when calculating interface heights, in m or kg m-2. |
Definition at line 174 of file MOM_diagnostics.F90.
References calculate_derivs(), calculate_energy_diagnostics(), calculate_vertical_integrals(), find_weights(), mom_spatial_means::global_area_mean(), mom_spatial_means::global_layer_mean(), mom_spatial_means::global_volume_mean(), mom_error_handler::mom_error(), and mom_wave_speed::wave_speed().
|
private |
This subroutine calculates terms in the mechanical energy budget.
[in,out] | g | The ocean's grid structure. |
[in] | u | The zonal velocity, in m s-1. |
[in] | v | The meridional velocity, in m s-1. |
[in] | h | Layer thicknesses, in H (usually m or kg m-2). |
[in] | uh | Transport through zonal faces=u*h*dy: m3/s (Bouss) kg/s(non-Bouss). |
[in] | vh | Transport through merid faces=v*h*dx: m3/s (Bouss) kg/s(non-Bouss). |
[in] | adp | Structure pointing to accelerations in momentum equation. |
[in] | cdp | Structure pointing to terms in continuity equations. |
[in,out] | cs | Control structure returned by a previous call to diagnostics_init. |
Definition at line 839 of file MOM_diagnostics.F90.
Referenced by calculate_diagnostic_fields().
|
private |
Subroutine calculates vertical integrals of several tracers, along with the mass-weight of these tracers, the total column mass, and the carefully calculated column height.
[in,out] | g | The ocean's grid structure. |
[in] | gv | The ocean's vertical grid structure. |
[in] | h | Layer thicknesses, in H (usually m or kg m-2). |
[in] | tv | A structure pointing to various thermodynamic variables. |
[in] | fluxes | A structure containing the surface fluxes. |
[in,out] | cs | A control structure returned by a previous call to diagnostics_init. |
Definition at line 711 of file MOM_diagnostics.F90.
References mom_eos::int_density_dz().
Referenced by calculate_diagnostic_fields().
|
private |
This subroutine finds location of R_in in an increasing ordered list, Rlist, returning as k the element such that Rlist(k) <= R_in < Rlist(k+1), and where wt and wt_p are the linear weights that should be assigned to elements k and k+1.
Definition at line 648 of file MOM_diagnostics.F90.
Referenced by calculate_diagnostic_fields().
subroutine, public mom_diagnostics::mom_diagnostics_end | ( | type(diagnostics_cs), pointer | CS, |
type(accel_diag_ptrs), intent(inout) | ADp | ||
) |
Definition at line 1456 of file MOM_diagnostics.F90.
subroutine, public mom_diagnostics::mom_diagnostics_init | ( | type(ocean_internal_state), intent(in) | MIS, |
type(accel_diag_ptrs), intent(inout) | ADp, | ||
type(cont_diag_ptrs), intent(inout) | CDp, | ||
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(diagnostics_cs), pointer | CS | ||
) |
[in] | mis | For "MOM Internal State" a set of pointers to the fields and accelerations that make up the ocean's internal physical state. |
[in,out] | adp | Structure with pointers to momentum equation terms. |
[in,out] | cdp | Structure with pointers to continuity equation terms. |
[in] | time | Current model time. |
[in] | g | The ocean's grid structure. |
[in] | gv | The ocean's vertical grid structure. |
[in] | param_file | A structure to parse for run-time parameters. |
[in,out] | diag | Structure to regulate diagnostic output. |
cs | Pointer set to point to control structure for this module. |
Definition at line 1115 of file MOM_diagnostics.F90.
References mom_error_handler::mom_error(), register_time_deriv(), set_dependent_diagnostics(), and mom_wave_speed::wave_speed_init().
subroutine, public mom_diagnostics::register_time_deriv | ( | real, dimension(:,:,:), target | f_ptr, |
real, dimension(:,:,:), target | deriv_ptr, | ||
type(diagnostics_cs), pointer | CS | ||
) |
This subroutine registers fields to calculate a diagnostic time derivative.
f_ptr | Field whose derivative is taken. |
deriv_ptr | Field in which the calculated time derivatives placed. |
cs | Control structure returned by previous call to diagnostics_init. |
Definition at line 1049 of file MOM_diagnostics.F90.
References mom_error_handler::mom_error().
Referenced by mom_diagnostics_init(), and set_dependent_diagnostics().
|
private |
This subroutine sets up diagnostics upon which other diagnostics depend.
[in] | mis | For "MOM Internal State" a set of pointers to the fields and accelerations making up ocean internal physical state. |
[in,out] | adp | Structure pointing to accelerations in momentum equation. |
[in,out] | cdp | Structure pointing to terms in continuity equation. |
[in] | g | The ocean's grid structure. |
cs | Pointer to the control structure for this module. |
Definition at line 1389 of file MOM_diagnostics.F90.
References register_time_deriv().
Referenced by mom_diagnostics_init().