mom_is_diag_mediator module reference

Convenient wrappers to the FMS diag_manager interfaces with additional diagnostic capabilies.

More…

Data Types

axestype

2D/3D axes type to contain 1D axes handles and pointers to masks

diag_type

This type is used to represent a diagnostic at the diag_mediator level.

diag_ctrl

The SIS_diag_ctrl data type contains times to regulate diagnostics along with masks and axes to use with diagnostics, and a list of structures with data about each diagnostic.

Detailed Description

Convenient wrappers to the FMS diag_manager interfaces with additional diagnostic capabilies.

Type Documentation

type mom_is_diag_mediator/axestype

2D/3D axes type to contain 1D axes handles and pointers to masks

Type fields:
  • % id [character (len=15)] :: The id string for this particular combination of handles.

  • % rank [integer] :: Number of dimensions in the list of axes.

  • % handles [integer(:),allocatable] :: Handles to 1D axes.

  • % diag_cs [type( diag_ctrl ),pointer] :: A structure that is used to regulate diagnostic output.

type mom_is_diag_mediator/diag_type

This type is used to represent a diagnostic at the diag_mediator level.

Type fields:
  • % in_use [logical,private] :: This diagnostic is in use.

  • % fms_diag_id [integer,private] :: underlying FMS diag id

  • % name [character (len=24),private] :: The diagnostic name.

  • % conversion_factor [real,private] :: A factor to multiply data by before posting to FMS, if non-zero.

  • % mask2d [real(:,:),pointer, private] :: A 2-d mask on the data domain for this diagnostic [nondim].

  • % mask2d_comp [real(:,:),pointer, private] :: A 2-d mask on the computational domain for this diagnostic [nondim].

type mom_is_diag_mediator/diag_ctrl

The SIS_diag_ctrl data type contains times to regulate diagnostics along with masks and axes to use with diagnostics, and a list of structures with data about each diagnostic.

Type fields:
  • % axesbl [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axestl [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescul [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescvl [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axesbi [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axesti [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescui [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescvi [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axesbc [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axestc [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescuc [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescvc [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axesbc0 [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axestc0 [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescuc0 [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescvc0 [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axesb1 [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axest1 [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescu1 [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % axescv1 [type( axestype )] :: The following are 3D and 2D axis groups defined for output. The names indicate the horizontal locations (B, T, Cu, or Cv), vertical locations (L, i, or 1) and thickness categories (c, c0, or 1).

  • % mask2dt [real(:,:),pointer] :: 2D mask array for cell-center points

  • % mask2dbu [real(:,:),pointer] :: 2D mask array for cell-corners

  • % mask2dcu [real(:,:),pointer] :: 2D mask array for east-faces

  • % mask2dcv [real(:,:),pointer] :: 2D mask array for north-faces

  • % mask2dt_comp [real(:,:),pointer] :: Computational domain mask arrays for diagnostics.

  • % diags [type( diag_type )(:),allocatable] :: The array of diagnostics.

  • % next_free_diag_id [integer] :: The next unused diagnostic ID.

  • % missing_value [real] :: default missing value to be sent to ALL diagnostics registerations [various]

  • % us [type( unit_scale_type ),pointer] :: A dimensional unit scaling type.

  • % doc_unit [integer] :: The unit number of a diagnostic documentation file. This file is open if doc_unit is > 0.

  • % is [integer] :: The start i-index of cell centers within the computational domain.

  • % ie [integer] :: The end i-index of cell centers within the computational domain.

  • % js [integer] :: The start j-index of cell centers within the computational domain.

  • % je [integer] :: The end j-index of cell centers within the computational domain.

  • % isd [integer] :: The start i-index of cell centers within the data domain.

  • % ied [integer] :: The end i-index of cell centers within the data domain.

  • % jsd [integer] :: The start j-index of cell centers within the data domain.

  • % jed [integer] :: The end j-index of cell centers within the data domain.

  • % time_int [real] :: The time interval for any fields that are offered for averaging [s].

  • % time_end [type(time_type)] :: The end time of the valid interval for any offered field.

  • % ave_enabled [logical] :: .true. if averaging is enabled.