namespace mom_sum_output

Overview

Reports integrated quantities for monitoring the model state. More…

namespace mom_sum_output {

// global functions

subroutine, public mom_sum_output_init(
    G G,
    US US,
    param_file param_file,
    directory directory,
    ntrnc ntrnc,
    Input_start_time Input_start_time,
    CS CS
    );

subroutine, public write_energy(
    u u,
    v v,
    h h,
    tv tv,
    day day,
    n n,
    G G,
    GV GV,
    US US,
    CS CS,
    tracer_CSp tracer_CSp,
    OBC OBC,
    dt_forcing dt_forcing
    );

subroutine, public accumulate_net_input(fluxes fluxes, sfc_state sfc_state, dt dt, G G, CS CS);

} // namespace mom_sum_output

Detailed Documentation

Reports integrated quantities for monitoring the model state.

By Robert Hallberg, April 1994 - June 2002

This file contains the subroutine (write_energy) that writes horizontally integrated quantities, such as energies and layer volumes, and other summary information to an output file. Some of these quantities (APE or resting interface height) are defined relative to the global histogram of topography. The subroutine that compiles that histogram (depth_list_setup) is also included in this file.

In addition, if the number of velocity truncations since the previous call to write_energy exceeds maxtrunc or the total energy exceeds a very large threshold, a fatal termination is triggered.

Global Functions

subroutine, public mom_sum_output_init(
    G G,
    US US,
    param_file param_file,
    directory directory,
    ntrnc ntrnc,
    Input_start_time Input_start_time,
    CS CS
    )

MOM_sum_output_init initializes the parameters and settings for the MOM_sum_output module.

Parameters:

g

The ocean’s grid structure.

us

A dimensional unit scaling type

param_file

A structure to parse for run-time parameters.

directory

The directory where the energy file goes.

ntrnc

The integer that stores the number of times the velocity has been truncated since the last call to write_energy.

input_start_time

The start time of the simulation.

cs

A pointer that is set to point to the control structure for this module.

subroutine, public write_energy(
    u u,
    v v,
    h h,
    tv tv,
    day day,
    n n,
    G G,
    GV GV,
    US US,
    CS CS,
    tracer_CSp tracer_CSp,
    OBC OBC,
    dt_forcing dt_forcing
    )

This subroutine calculates and writes the total model energy, the energy and mass of each layer, and other globally integrated physical quantities.

Parameters:

g

The ocean’s grid structure.

gv

The ocean’s vertical grid structure.

us

A dimensional unit scaling type

u

The zonal velocity [L T-1 ~> m s-1].

v

The meridional velocity [L T-1 ~> m s-1].

h

Layer thicknesses [H ~> m or kg m-2].

tv

A structure pointing to various thermodynamic variables.

day

The current model time.

n

The time step number of the current execution.

cs

The control structure returned by a previous call to MOM_sum_output_init.

tracer_csp

tracer control structure.

obc

Open boundaries control structure.

dt_forcing

The forcing time step

subroutine, public accumulate_net_input(
    fluxes fluxes,
    sfc_state sfc_state,
    dt dt,
    G G,
    CS CS
    )

This subroutine accumates the net input of volume, salt and heat, through the ocean surface for use in diagnosing conservation.

Parameters:

fluxes

A structure containing pointers to any possible forcing fields. Unused fields are unallocated.

sfc_state

A structure containing fields that describe the surface state of the ocean.

dt

The amount of time over which to average [s].

g

The ocean’s grid structure.

cs

The control structure returned by a previous call to MOM_sum_output_init.