user_shelf_init module reference¶
This module specifies the initial values and evolving properties of the MOM6 ice shelf, using user-provided code.
Data Types¶
The control structure for the user_ice_shelf module. |
Functions/Subroutines¶
This subroutine sets up the initial mass and area covered by the ice shelf, based on user-provided code. |
|
This subroutine updates the ice shelf thickness, as specified by user-provided code. |
|
This subroutine updates the ice shelf mass, as specified by user-provided code. |
|
This subroutine writes out the user ice shelf code version number to the model log. |
Detailed Description¶
This module specifies the initial values and evolving properties of the MOM6 ice shelf, using user-provided code.
Type Documentation¶
-
type
user_shelf_init/user_ice_shelf_cs¶ The control structure for the user_ice_shelf module.
- Type fields:
%rho_ocean[real] :: The ocean’s typical density [R ~> kg m-3].%max_draft[real] :: The maximum ocean draft of the ice shelf [Z ~> m].%min_draft[real] :: The minimum ocean draft of the ice shelf [Z ~> m].%flat_shelf_width[real] :: The range over which the shelf is min_draft thick [km].%shelf_slope_scale[real] :: The range over which the shelf slopes [km].%pos_shelf_edge_0[real] :: The x-position of the shelf edge at time 0 [km].%shelf_speed[real] :: The ice shelf speed of translation [km day-1].%first_call[logical] :: If true, this module has not been called before.
Function/Subroutine Documentation¶
-
subroutine
user_shelf_init/user_initialize_shelf_mass(mass_shelf, area_shelf_h, h_shelf, hmask, G, US, CS, param_file, new_sim)¶ This subroutine sets up the initial mass and area covered by the ice shelf, based on user-provided code.
- Parameters:
g :: [in] The ocean’s grid structure
mass_shelf :: [out] The ice shelf mass per unit area averaged
h_shelf :: [out] The ice shelf thickness [Z ~> m].
area_shelf_h :: [out] The area per cell covered by the ice shelf [L2 ~> m2].
hmask :: [out] A mask indicating which tracer points are
us :: [in] A structure containing unit conversion factors
cs :: A pointer to the user ice shelf control structure
param_file :: [in] A structure to parse for run-time parameters
new_sim :: [in] If true, this is a new run; otherwise it is being started from a restart file.
- Call to:
- Called from:
-
subroutine
user_shelf_init/user_init_ice_thickness(h_shelf, area_shelf_h, hmask, G, US, param_file)¶ This subroutine updates the ice shelf thickness, as specified by user-provided code.
- Parameters:
g :: [in] The ocean’s grid structure
h_shelf :: [out] The ice shelf thickness [Z ~> m].
area_shelf_h :: [out] The area per cell covered by the ice shelf [L2 ~> m2].
hmask :: [out] A mask indicating which tracer points are
us :: [in] A structure containing unit conversion factors
param_file :: [in] A structure to parse for run-time parameters
- Call to:
- Called from:
-
subroutine
user_shelf_init/user_update_shelf_mass(mass_shelf, area_shelf_h, h_shelf, hmask, G, CS, Time, new_sim)¶ This subroutine updates the ice shelf mass, as specified by user-provided code.
- Parameters:
g :: [in] The ocean’s grid structure
mass_shelf :: [inout] The ice shelf mass per unit area averaged
area_shelf_h :: [inout] The area per cell covered by the ice shelf [L2 ~> m2].
h_shelf :: [inout] The ice shelf thickness [Z ~> m].
hmask :: [inout] A mask indicating which tracer points are
cs :: A pointer to the user ice shelf control structure
time :: [in] The current model time
new_sim :: [in] If true, this the start of a new run.
- Called from:
-
subroutine
user_shelf_init/write_user_log(param_file)¶ This subroutine writes out the user ice shelf code version number to the model log.
- Parameters:
param_file :: [in] A structure to parse for run-time parameters
- Called from: