namespace mom_cvmix_ddiff

Overview

Interface to CVMix double diffusion scheme. More…

namespace mom_cvmix_ddiff {

// global variables

character(len=40) mdl = "MOM_CVMix_ddiff";

// global functions

logical function, public cvmix_ddiff_init(
    Time Time,
    G G,
    GV GV,
    US US,
    param_file param_file,
    diag diag,
    CS CS
    );

subroutine, public compute_ddiff_coeffs(
    h h,
    tv tv,
    G G,
    GV GV,
    US US,
    j j,
    Kd_T Kd_T,
    Kd_S Kd_S,
    CS CS
    );

logical function, public cvmix_ddiff_is_used(param_file param_file);
subroutine, public cvmix_ddiff_end(CS CS);

} // namespace mom_cvmix_ddiff

Detailed Documentation

Interface to CVMix double diffusion scheme.

Global Variables

character(len=40) mdl = "MOM_CVMix_ddiff"

This module’s name.

Global Functions

logical function, public cvmix_ddiff_init(
    Time Time,
    G G,
    GV GV,
    US US,
    param_file param_file,
    diag diag,
    CS CS
    )

Initialized the CVMix double diffusion module.

Parameters:

time

The current time.

g

Grid structure.

gv

Vertical grid structure.

us

A dimensional unit scaling type

param_file

Run-time parameter file handle

diag

Diagnostics control structure.

cs

This module’s control structure.

subroutine, public compute_ddiff_coeffs(
    h h,
    tv tv,
    G G,
    GV GV,
    US US,
    j j,
    Kd_T Kd_T,
    Kd_S Kd_S,
    CS CS
    )

Subroutine for computing vertical diffusion coefficients for the double diffusion mixing parameterization.

Parameters:

g

Grid structure.

gv

Vertical grid structure.

us

A dimensional unit scaling type

h

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

tv

Thermodynamics structure.

kd_t

Interface double diffusion diapycnal diffusivity for temp [Z2 T-1 ~> m2 s-1].

kd_s

Interface double diffusion diapycnal diffusivity for salt [Z2 T-1 ~> m2 s-1].

cs

The control structure returned by a previous call to CVMix_ddiff_init.

j

Meridional grid indice.

logical function, public cvmix_ddiff_is_used(param_file param_file)

Reads the parameter “USE_CVMIX_DDIFF” and returns state. This function allows other modules to know whether this parameterization will be used without needing to duplicate the log entry.

Parameters:

param_file

A structure to parse for run-time parameters

subroutine, public cvmix_ddiff_end(CS CS)

Clear pointers and dealocate memory.

Parameters:

cs

Control structure for this module that will be deallocated in this subroutine