mom_checksum_packages module reference

Provides routines that do checksums of groups of MOM variables.

More…

Data Types

stats

A type for storing statistica about a variable.

Functions/Subroutines

mom_state_chksum_5arg()

Write out chksums for the model’s basic state variables, including transports.

mom_state_chksum_3arg()

Write out chksums for the model’s basic state variables.

mom_thermo_chksum()

Write out chksums for the model’s thermodynamic state variables.

mom_surface_chksum()

Write out chksums for the ocean surface variables.

mom_accel_chksum()

Write out chksums for the model’s accelerations.

mom_state_stats()

Monitor and write out statistics for the model’s state variables.

Detailed Description

Provides routines that do checksums of groups of MOM variables.

Type Documentation

type mom_checksum_packages/stats

A type for storing statistica about a variable.

Type fields:
  • % minimum [real,private] :: The minimum value [degC] or [ppt] or other units.

  • % maximum [real,private] :: The maximum value [degC] or [ppt] or other units.

  • % average [real,private] :: The average value [degC] or [ppt] or other units.

Function/Subroutine Documentation

subroutine mom_checksum_packages/mom_state_chksum_5arg(mesg, u, v, h, uh, vh, G, GV, US, haloshift, symmetric, omit_corners, vel_scale)

Write out chksums for the model’s basic state variables, including transports.

Parameters:
  • mesg :: [in] A message that appears on the chksum lines.

  • g :: [in] The ocean’s grid structure.

  • gv :: [in] The ocean’s vertical grid structure.

  • u :: [in] The zonal velocity [L T-1 ~> m s-1] or other units.

  • v :: [in] The meridional velocity [L T-1 ~> m s-1] or other units.

  • h :: [in] Layer thicknesses [H ~> m or kg m-2].

  • uh :: [in] Volume flux through zonal faces = u*h*dy

  • vh :: [in] Volume flux through meridional faces = v*h*dx

  • us :: [in] A dimensional unit scaling type

  • haloshift :: [in] The width of halos to check (default 0).

  • symmetric :: [in] If true, do checksums on the fully symmetric computational domain.

  • omit_corners :: [in] If true, avoid checking diagonal shifts

  • vel_scale :: [in] The scaling factor to convert velocities to [m s-1]

subroutine mom_checksum_packages/mom_state_chksum_3arg(mesg, u, v, h, G, GV, US, haloshift, symmetric, omit_corners)

Write out chksums for the model’s basic state variables.

Parameters:
  • mesg :: [in] A message that appears on the chksum lines.

  • g :: [in] The ocean’s grid structure.

  • gv :: [in] The ocean’s vertical grid structure.

  • u :: [in] Zonal velocity [L T-1 ~> m s-1] or [m s-1].

  • v :: [in] Meridional velocity [L T-1 ~> m s-1] or [m s-1]..

  • h :: [in] Layer thicknesses [H ~> m or kg m-2].

  • us :: [in] A dimensional unit scaling type, which is used to rescale u and v if present.

  • haloshift :: [in] The width of halos to check (default 0).

  • symmetric :: [in] If true, do checksums on the fully symmetric computational domain.

  • omit_corners :: [in] If true, avoid checking diagonal shifts

subroutine mom_checksum_packages/mom_thermo_chksum(mesg, tv, G, US, haloshift, omit_corners)

Write out chksums for the model’s thermodynamic state variables.

Parameters:
  • mesg :: [in] A message that appears on the chksum lines.

  • tv :: [in] A structure pointing to various thermodynamic variables.

  • g :: [in] The ocean’s grid structure.

  • us :: [in] A dimensional unit scaling type

  • haloshift :: [in] The width of halos to check (default 0).

  • omit_corners :: [in] If true, avoid checking diagonal shifts

subroutine mom_checksum_packages/mom_surface_chksum(mesg, sfc_state, G, US, haloshift, symmetric)

Write out chksums for the ocean surface variables.

Parameters:
  • mesg :: [in] A message that appears on the chksum lines.

  • sfc_state :: [inout] transparent ocean surface state structure shared with the calling routine data in this structure is intent out.

  • g :: [in] The ocean’s grid structure.

  • us :: [in] A dimensional unit scaling type

  • haloshift :: [in] The width of halos to check (default 0).

  • symmetric :: [in] If true, do checksums on the fully symmetric computational domain.

Called from:

mom::extract_surface_state

subroutine mom_checksum_packages/mom_accel_chksum(mesg, CAu, CAv, PFu, PFv, diffu, diffv, G, GV, US, pbce, u_accel_bt, v_accel_bt, symmetric)

Write out chksums for the model’s accelerations.

Parameters:
  • mesg :: [in] A message that appears on the chksum lines.

  • g :: [in] The ocean’s grid structure.

  • gv :: [in] The ocean’s vertical grid structure.

  • cau :: [in] Zonal acceleration due to Coriolis

  • cav :: [in] Meridional acceleration due to Coriolis

  • pfu :: [in] Zonal acceleration due to pressure gradients

  • pfv :: [in] Meridional acceleration due to pressure gradients

  • diffu :: [in] Zonal acceleration due to convergence of the

  • diffv :: [in] Meridional acceleration due to convergence of

  • us :: [in] A dimensional unit scaling type

  • pbce :: [in] The baroclinic pressure anomaly in each layer

  • u_accel_bt :: [in] The zonal acceleration from terms in the

  • v_accel_bt :: [in] The meridional acceleration from terms in

  • symmetric :: [in] If true, do checksums on the fully symmetric computational domain.

Called from:

mom_dynamics_split_rk2::step_mom_dyn_split_rk2 mom_dynamics_split_rk2b::step_mom_dyn_split_rk2b mom_dynamics_unsplit::step_mom_dyn_unsplit mom_dynamics_unsplit_rk2::step_mom_dyn_unsplit_rk2

subroutine mom_checksum_packages/mom_state_stats(mesg, u, v, h, Temp, Salt, G, GV, US, allowChange, permitDiminishing)

Monitor and write out statistics for the model’s state variables.

Parameters:
  • g :: [in] The ocean’s grid structure.

  • gv :: [in] The ocean’s vertical grid structure.

  • mesg :: [in] A message that appears on the chksum lines.

  • u :: [in] The zonal velocity [L T-1 ~> m s-1].

  • v :: [in] The meridional velocity [L T-1 ~> m s-1].

  • h :: [in] Layer thicknesses [H ~> m or kg m-2].

  • temp :: [in] Temperature [C ~> degC].

  • salt :: [in] Salinity [S ~> ppt].

  • us :: [in] A dimensional unit scaling type

  • allowchange :: [in] do not flag an error if the statistics change.

  • permitdiminishing :: [in] do not flag error if the extrema are diminishing.

Call to:

mom_error_handler::mom_mesg

Called from:

mom_diabatic_driver::diabatic mom_diabatic_driver::diabatic_ale mom_diabatic_driver::diabatic_ale_legacy mom_diabatic_driver::layered_diabatic