phillips_initialization module reference

Initialization for the “Phillips” channel configuration.

More…

Functions/Subroutines

phillips_initialize_thickness()

Initialize the thickness field for the Phillips model test case.

phillips_initialize_velocity()

Initialize the velocity fields for the Phillips model test case.

phillips_initialize_sponges()

Sets up the the inverse restoration time (Idamp), and the values towards which the interface heights and an arbitrary number of tracers should be restored within each sponge for the Phillips model test case.

sech()

sech calculates the hyperbolic secant.

phillips_initialize_topography()

Initialize topography.

Detailed Description

By Robert Hallberg, April 1994 - June 2002.

This subroutine initializes the fields for the simulations. The one argument passed to initialize, Time, is set to the current time of the simulation. The fields which are initialized here are: u - Zonal velocity [L T-1 ~> m s-1]. v - Meridional velocity [L T-1 ~> m s-1]. h - Layer thickness [H ~> m or kg m-2] (must be positive) D - Basin depth [Z ~> m] (positive downward) f - The Coriolis parameter [T-1 ~> s-1]. If ENABLE_THERMODYNAMICS is defined: T - Temperature [C ~> degC]. S - Salinity [S ~> ppt]. If SPONGE is defined: A series of subroutine calls are made to set up the damping rates and reference profiles for all variables that are damped in the sponge. Any user provided tracer code is also first linked through this subroutine.

Forcing-related fields (taux, tauy, buoy, ustar, etc.) are set in MOM_surface_forcing.F90.

These variables are all set in the set of subroutines (in this file) Phillips_initialize_thickness, Phillips_initialize_velocity, Phillips_initialize_topography and Phillips_initialize_sponges that seet up fields that are specific to the Phillips instability test case.

Function/Subroutine Documentation

subroutine phillips_initialization/phillips_initialize_thickness(h, depth_tot, G, GV, US, param_file, just_read)

Initialize the thickness field for the Phillips model test case.

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

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

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

  • h :: [out] The thickness that is being initialized [Z ~> m]

  • depth_tot :: [in] The nominal total depth of the ocean [Z ~> m]

  • param_file :: [in] A structure indicating the open file to parse for model parameter values.

  • just_read :: [in] If true, this call will only read parameters without changing h.

subroutine phillips_initialization/phillips_initialize_velocity(u, v, G, GV, US, param_file, just_read)

Initialize the velocity fields for the Phillips model test case.

Parameters:
  • g :: [in] Grid structure

  • gv :: [in] Vertical grid structure

  • u :: [out] i-component of velocity [L T-1 ~> m s-1]

  • v :: [out] j-component of velocity [L T-1 ~> m s-1]

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

  • param_file :: [in] A structure indicating the open file to parse for modelparameter values.

  • just_read :: [in] If true, this call will only read parameters without changing u & v.

Call to:

sech

subroutine phillips_initialization/phillips_initialize_sponges(G, GV, US, tv, param_file, CSp, h)

Sets up the the inverse restoration time (Idamp), and the values towards which the interface heights and an arbitrary number of tracers should be restored within each sponge for the Phillips model test case.

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

  • gv :: [in] Vertical grid structure

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

  • tv :: [in] A structure containing pointers to any available thermodynamic fields, potential temperature and salinity or mixed layer density. Absent fields have NULL ptrs.

  • param_file :: [in] A structure indicating the open file to parse for model parameter values.

  • csp :: A pointer that is set to point to the control structure for the sponge module.

  • h :: [in] Thickness field [H ~> m or kg m-2].

Call to:

mom_sponge::initialize_sponge

Called from:

mom_state_initialization::mom_initialize_state

function phillips_initialization/sech(x) [real]

sech calculates the hyperbolic secant.

Parameters:

x :: [in] Input value [nondim].

Return:

undefined :: Result [nondim].

Called from:

phillips_initialize_velocity

subroutine phillips_initialization/phillips_initialize_topography(D, G, param_file, max_depth, US)

Initialize topography.

Parameters:
  • g :: [in] The dynamic horizontal grid type

  • d :: [out] Ocean bottom depth [Z ~> m]

  • param_file :: [in] Parameter file structure

  • max_depth :: [in] Maximum model depth [Z ~> m]

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

Called from:

mom_fixed_initialization::mom_initialize_topography