namespace coord_hycom

Overview

Regrid columns for the HyCOM coordinate. More…

namespace coord_hycom {

// global functions

subroutine, public init_coord_hycom(
    CS CS,
    nk nk,
    coordinateResolution coordinateResolution,
    target_density target_density,
    interp_CS interp_CS
    );

subroutine, public end_coord_hycom(CS CS);

subroutine, public set_hycom_params(
    CS CS,
    max_interface_depths max_interface_depths,
    max_layer_thickness max_layer_thickness,
    interp_CS interp_CS
    );

subroutine, public build_hycom1_column(
    CS CS,
    eqn_of_state eqn_of_state,
    nz nz,
    depth depth,
    h h,
    T T,
    S S,
    p_col p_col,
    z_col z_col,
    z_col_new z_col_new,
    zScale zScale,
    h_neglect h_neglect,
    h_neglect_edge h_neglect_edge
    );

} // namespace coord_hycom

Detailed Documentation

Regrid columns for the HyCOM coordinate.

Global Functions

subroutine, public init_coord_hycom(
    CS CS,
    nk nk,
    coordinateResolution coordinateResolution,
    target_density target_density,
    interp_CS interp_CS
    )

Initialise a hycom_CS with pointers to parameters.

Parameters:

cs

Unassociated pointer to hold the control structure

nk

Number of layers in generated grid

coordinateresolution

Nominal near-surface resolution [m]

target_density

Interface target densities [kg m-3]

interp_cs

Controls for interpolation

subroutine, public end_coord_hycom(CS CS)

This subroutine deallocates memory in the control structure for the coord_hycom module.

Parameters:

cs

Coordinate control structure

subroutine, public set_hycom_params(
    CS CS,
    max_interface_depths max_interface_depths,
    max_layer_thickness max_layer_thickness,
    interp_CS interp_CS
    )

This subroutine can be used to set the parameters for the coord_hycom module.

Parameters:

cs

Coordinate control structure

max_interface_depths

Maximum depths of interfaces in m

max_layer_thickness

Maximum thicknesses of layers in m

interp_cs

Controls for interpolation

subroutine, public build_hycom1_column(
    CS CS,
    eqn_of_state eqn_of_state,
    nz nz,
    depth depth,
    h h,
    T T,
    S S,
    p_col p_col,
    z_col z_col,
    z_col_new z_col_new,
    zScale zScale,
    h_neglect h_neglect,
    h_neglect_edge h_neglect_edge
    )

Build a HyCOM coordinate column.

Parameters:

cs

Coordinate control structure

eqn_of_state

Equation of state structure

nz

Number of levels

depth

Depth of ocean bottom (positive [H ~> m or kg m-2])

t

Temperature of column [degC]

s

Salinity of column [ppt]

h

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

p_col

Layer pressure [Pa]

z_col

Interface positions relative to the surface [H ~> m or kg m-2]

z_col_new

Absolute positions of interfaces

zscale

Scaling factor from the input thicknesses in [m] to desired units for zInterface, perhaps m_to_H.

h_neglect

A negligibly small width for the purpose of cell reconstructions in the same units as h.

h_neglect_edge

A negligibly small width for the purpose of edge value calculations in the same units as h0.