MOM6
mom_ice_shelf_dynamics::ice_shelf_dyn_cs Type Reference

Detailed Description

The control structure for the ice shelf dynamics.

Definition at line 41 of file MOM_ice_shelf_dynamics.F90.

Collaboration diagram for mom_ice_shelf_dynamics::ice_shelf_dyn_cs:
[legend]

Public variables and constants

real, dimension(:,:), pointer u_shelf => NULL()
 the zonal (?) velocity of the ice shelf/sheet on q-points (B grid) [m s-1]?? More...
 
real, dimension(:,:), pointer v_shelf => NULL()
 the meridional velocity of the ice shelf/sheet on q-points (B grid) [m s-1]?? More...
 
real, dimension(:,:), pointer u_face_mask => NULL()
 mask for velocity boundary conditions on the C-grid u-face - this is because the FEM cares about FACES THAT GET INTEGRATED OVER, not vertices. Will represent boundary conditions on computational boundary (or permanent boundary between fast-moving and near-stagnant ice FOR NOW: 1=interior bdry, 0=no-flow boundary, 2=stress bdry condition, 3=inhomogeneous dirichlet boundary, 4=flux boundary: at these faces a flux will be specified which will override velocities; a homogeneous velocity condition will be specified (this seems to give the solver less difficulty) More...
 
real, dimension(:,:), pointer v_face_mask => NULL()
 A mask for velocity boundary conditions on the C-grid v-face, with valued defined similarly to u_face_mask. More...
 
real, dimension(:,:), pointer u_face_mask_bdry => NULL()
 A duplicate copy of u_face_mask? More...
 
real, dimension(:,:), pointer v_face_mask_bdry => NULL()
 A duplicate copy of v_face_mask? More...
 
real, dimension(:,:), pointer u_flux_bdry_val => NULL()
 The ice volume flux into the cell through open boundary u-faces (where u_face_mask=4) [Z m2 s-1 ~> m3 s-1]?? More...
 
real, dimension(:,:), pointer v_flux_bdry_val => NULL()
 The ice volume flux into the cell through open boundary v-faces (where v_face_mask=4) [Z m2 s-1 ~> m3 s-1]?? More...
 
real, dimension(:,:), pointer umask => NULL()
 u-mask on the actual degrees of freedom (B grid) 1=normal node, 3=inhomogeneous boundary node, 0 - no flow node (will also get ice-free nodes) More...
 
real, dimension(:,:), pointer vmask => NULL()
 v-mask on the actual degrees of freedom (B grid) 1=normal node, 3=inhomogeneous boundary node, 0 - no flow node (will also get ice-free nodes) More...
 
real, dimension(:,:), pointer calve_mask => NULL()
 a mask to prevent the ice shelf front from advancing past its initial position (but it may retreat) More...
 
real, dimension(:,:), pointer t_shelf => NULL()
 Veritcally integrated temperature in the ice shelf/stream, on corner-points (B grid) [degC]. More...
 
real, dimension(:,:), pointer tmask => NULL()
 A mask on tracer points that is 1 where there is ice. More...
 
real, dimension(:,:), pointer ice_visc => NULL()
 Glen's law ice viscosity, perhaps in [m]. More...
 
real, dimension(:,:), pointer thickness_bdry_val => NULL()
 The ice thickness at an inflowing boundary [Z ~> m]. More...
 
real, dimension(:,:), pointer u_bdry_val => NULL()
 The zonal ice velocity at inflowing boundaries [m s-1]?? More...
 
real, dimension(:,:), pointer v_bdry_val => NULL()
 The meridional ice velocity at inflowing boundaries [m s-1]?? More...
 
real, dimension(:,:), pointer h_bdry_val => NULL()
 The ice thickness at inflowing boundaries [m]. More...
 
real, dimension(:,:), pointer t_bdry_val => NULL()
 The ice temperature at inflowing boundaries [degC]. More...
 
real, dimension(:,:), pointer taub_beta_eff => NULL()
 nonlinear part of "linearized" basal stress. The exact form depends on basal law exponent and/or whether flow is "hybridized" a la Goldberg 2011 More...
 
real, dimension(:,:), pointer od_rt => NULL()
 A running total for calculating OD_av. More...
 
real, dimension(:,:), pointer float_frac_rt => NULL()
 A running total for calculating float_frac. More...
 
real, dimension(:,:), pointer od_av => NULL()
 The time average open ocean depth [Z ~> m]. More...
 
real, dimension(:,:), pointer float_frac => NULL()
 Fraction of the time a cell is "exposed", i.e. the column thickness is below a threshold. More...
 
integer od_rt_counter = 0
 A counter of the number of contributions to OD_rt. More...
 
real velocity_update_time_step
 The time interval over which to update the ice shelf velocity using the nonlinear elliptic equation, or 0 to update every timestep [s]. More...
 
real elapsed_velocity_time
 The elapsed time since the ice velocies were last udated [s]. More...
 
real g_earth
 The gravitational acceleration [m s-2]. More...
 
real density_ice
 A typical density of ice [kg m-3]. More...
 
logical gl_regularize
 Specifies whether to regularize the floatation condition at the grounding line as in Goldberg Holland Schoof 2009. More...
 
integer n_sub_regularize
 partition of cell over which to integrate for interpolated grounding line the (rectangular) is divided into nxn equally-sized rectangles, over which basal contribution is integrated (iterative quadrature) More...
 
logical gl_couple
 whether to let the floatation condition be determined by ocean column thickness means update_OD_ffrac will be called (note: GL_regularize and GL_couple should be exclusive) More...
 
real cfl_factor
 A factor used to limit subcycled advective timestep in uncoupled runs i.e. dt <= CFL_factor * min(dx / u) More...
 
real a_glen_isothermal
 Ice viscosity parameter in Glen's Lawa, [Pa-1/3 year]. More...
 
real n_glen
 Nonlinearity exponent in Glen's Law. More...
 
real eps_glen_min
 Min. strain rate to avoid infinite Glen's law viscosity, [year-1]. More...
 
real c_basal_friction
 Ceofficient in sliding law tau_b = C u^(n_basal_friction), in units="Pa (m-a)-(n_basal_friction) More...
 
real n_basal_friction
 Exponent in sliding law tau_b = C u^(m_slide) More...
 
real density_ocean_avg
 This does not affect ocean circulation or thermodynamics. It is used to estimate the gravitational driving force at the shelf front (until we think of a better way to do it, but any difference will be negligible). More...
 
real thresh_float_col_depth
 The water column depth over which the shelf if considered to be floating. More...
 
logical moving_shelf_front
 Specify whether to advance shelf front (and calve). More...
 
logical calve_to_mask
 If true, calve off the ice shelf when it passes the edge of a mask. More...
 
real min_thickness_simple_calve
 min. ice shelf thickness criteria for calving [Z ~> m]. More...
 
real cg_tolerance
 The tolerance in the CG solver, relative to initial residual, that deterimnes when to stop the conguage gradient iterations. More...
 
real nonlinear_tolerance
 The fractional nonlinear tolerance, relative to the initial error, that sets when to stop the iterative velocity solver. More...
 
integer cg_max_iterations
 The maximum number of iterations that can be used in the CG solver. More...
 
integer nonlin_solve_err_mode
 1: exit vel solve based on nonlin residual 2: exit based on "fixed point" metric (|u - u_last| / |u| < tol where | | is infty-norm More...
 
logical use_reproducing_sums
 Use reproducing global sums. More...
 
logical debug
 If true, write verbose checksums for debugging purposes and use reproducible sums. More...
 
logical module_is_initialized = .false.
 True if this module has been initialized. More...
 
integer id_u_shelf = -1
 Diagnostic handles. More...
 
integer id_v_shelf = -1
 Diagnostic handles. More...
 
integer id_t_shelf = -1
 Diagnostic handles. More...
 
integer id_float_frac = -1
 Diagnostic handles. More...
 
integer id_col_thick = -1
 Diagnostic handles. More...
 
integer id_od_av = -1
 Diagnostic handles. More...
 
integer id_u_mask = -1
 Diagnostic handles. More...
 
integer id_v_mask = -1
 Diagnostic handles. More...
 
integer id_t_mask = -1
 Diagnostic handles. More...
 
type(diag_ctrl), pointer diag => NULL()
 A structure that is used to control diagnostic output. More...
 

Variables and constants

◆ a_glen_isothermal

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::a_glen_isothermal

Ice viscosity parameter in Glen's Lawa, [Pa-1/3 year].

Definition at line 119 of file MOM_ice_shelf_dynamics.F90.

119  real :: A_glen_isothermal !< Ice viscosity parameter in Glen's Lawa, [Pa-1/3 year].

◆ c_basal_friction

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::c_basal_friction

Ceofficient in sliding law tau_b = C u^(n_basal_friction), in units="Pa (m-a)-(n_basal_friction)

Definition at line 122 of file MOM_ice_shelf_dynamics.F90.

122  real :: C_basal_friction !< Ceofficient in sliding law tau_b = C u^(n_basal_friction), in

◆ calve_mask

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::calve_mask => NULL()

a mask to prevent the ice shelf front from advancing past its initial position (but it may retreat)

Definition at line 70 of file MOM_ice_shelf_dynamics.F90.

70  real, pointer, dimension(:,:) :: calve_mask => null() !< a mask to prevent the ice shelf front from

◆ calve_to_mask

logical mom_ice_shelf_dynamics::ice_shelf_dyn_cs::calve_to_mask

If true, calve off the ice shelf when it passes the edge of a mask.

Definition at line 131 of file MOM_ice_shelf_dynamics.F90.

131  logical :: calve_to_mask !< If true, calve off the ice shelf when it passes the edge of a mask.

◆ cfl_factor

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::cfl_factor

A factor used to limit subcycled advective timestep in uncoupled runs i.e. dt <= CFL_factor * min(dx / u)

Definition at line 116 of file MOM_ice_shelf_dynamics.F90.

116  real :: CFL_factor !< A factor used to limit subcycled advective timestep in uncoupled runs

◆ cg_max_iterations

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::cg_max_iterations

The maximum number of iterations that can be used in the CG solver.

Definition at line 138 of file MOM_ice_shelf_dynamics.F90.

138  integer :: cg_max_iterations !< The maximum number of iterations that can be used in the CG solver

◆ cg_tolerance

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::cg_tolerance

The tolerance in the CG solver, relative to initial residual, that deterimnes when to stop the conguage gradient iterations.

Definition at line 134 of file MOM_ice_shelf_dynamics.F90.

134  real :: cg_tolerance !< The tolerance in the CG solver, relative to initial residual, that

◆ debug

logical mom_ice_shelf_dynamics::ice_shelf_dyn_cs::debug

If true, write verbose checksums for debugging purposes and use reproducible sums.

Definition at line 146 of file MOM_ice_shelf_dynamics.F90.

146  logical :: debug !< If true, write verbose checksums for debugging purposes

◆ density_ice

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::density_ice

A typical density of ice [kg m-3].

Definition at line 102 of file MOM_ice_shelf_dynamics.F90.

102  real :: density_ice !< A typical density of ice [kg m-3].

◆ density_ocean_avg

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::density_ocean_avg

This does not affect ocean circulation or thermodynamics. It is used to estimate the gravitational driving force at the shelf front (until we think of a better way to do it, but any difference will be negligible).

Definition at line 125 of file MOM_ice_shelf_dynamics.F90.

125  real :: density_ocean_avg !< This does not affect ocean circulation or thermodynamics.

◆ diag

type(diag_ctrl), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::diag => NULL()

A structure that is used to control diagnostic output.

Definition at line 158 of file MOM_ice_shelf_dynamics.F90.

158  type(diag_ctrl), pointer :: diag => null() !< A structure that is used to control diagnostic output.

◆ elapsed_velocity_time

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::elapsed_velocity_time

The elapsed time since the ice velocies were last udated [s].

Definition at line 99 of file MOM_ice_shelf_dynamics.F90.

99  real :: elapsed_velocity_time !< The elapsed time since the ice velocies were last udated [s].

◆ eps_glen_min

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::eps_glen_min

Min. strain rate to avoid infinite Glen's law viscosity, [year-1].

Definition at line 121 of file MOM_ice_shelf_dynamics.F90.

121  real :: eps_glen_min !< Min. strain rate to avoid infinite Glen's law viscosity, [year-1].

◆ float_frac

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::float_frac => NULL()

Fraction of the time a cell is "exposed", i.e. the column thickness is below a threshold.

Definition at line 88 of file MOM_ice_shelf_dynamics.F90.

88  real, pointer, dimension(:,:) :: float_frac => null() !< Fraction of the time a cell is "exposed", i.e. the column

◆ float_frac_rt

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::float_frac_rt => NULL()

A running total for calculating float_frac.

Definition at line 86 of file MOM_ice_shelf_dynamics.F90.

86  real, pointer, dimension(:,:) :: float_frac_rt => null() !< A running total for calculating float_frac.

◆ g_earth

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::g_earth

The gravitational acceleration [m s-2].

Definition at line 101 of file MOM_ice_shelf_dynamics.F90.

101  real :: g_Earth !< The gravitational acceleration [m s-2].

◆ gl_couple

logical mom_ice_shelf_dynamics::ice_shelf_dyn_cs::gl_couple

whether to let the floatation condition be determined by ocean column thickness means update_OD_ffrac will be called (note: GL_regularize and GL_couple should be exclusive)

Definition at line 111 of file MOM_ice_shelf_dynamics.F90.

111  logical :: GL_couple !< whether to let the floatation condition be

◆ gl_regularize

logical mom_ice_shelf_dynamics::ice_shelf_dyn_cs::gl_regularize

Specifies whether to regularize the floatation condition at the grounding line as in Goldberg Holland Schoof 2009.

Definition at line 104 of file MOM_ice_shelf_dynamics.F90.

104  logical :: GL_regularize !< Specifies whether to regularize the floatation condition

◆ h_bdry_val

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::h_bdry_val => NULL()

The ice thickness at inflowing boundaries [m].

Definition at line 79 of file MOM_ice_shelf_dynamics.F90.

79  real, pointer, dimension(:,:) :: h_bdry_val => null() !< The ice thickness at inflowing boundaries [m].

◆ ice_visc

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::ice_visc => NULL()

Glen's law ice viscosity, perhaps in [m].

Definition at line 75 of file MOM_ice_shelf_dynamics.F90.

75  real, pointer, dimension(:,:) :: ice_visc => null() !< Glen's law ice viscosity, perhaps in [m].

◆ id_col_thick

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_col_thick = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

◆ id_float_frac

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_float_frac = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

◆ id_od_av

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_od_av = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

◆ id_t_mask

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_t_mask = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

◆ id_t_shelf

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_t_shelf = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

◆ id_u_mask

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_u_mask = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

◆ id_u_shelf

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_u_shelf = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

151  integer :: id_u_shelf = -1, id_v_shelf = -1, id_t_shelf = -1, &
152  id_float_frac = -1, id_col_thick = -1, id_od_av = -1, &
153  id_u_mask = -1, id_v_mask = -1, id_t_mask = -1

◆ id_v_mask

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_v_mask = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

◆ id_v_shelf

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::id_v_shelf = -1

Diagnostic handles.

Definition at line 151 of file MOM_ice_shelf_dynamics.F90.

◆ min_thickness_simple_calve

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::min_thickness_simple_calve

min. ice shelf thickness criteria for calving [Z ~> m].

Definition at line 132 of file MOM_ice_shelf_dynamics.F90.

132  real :: min_thickness_simple_calve !< min. ice shelf thickness criteria for calving [Z ~> m].

◆ module_is_initialized

logical mom_ice_shelf_dynamics::ice_shelf_dyn_cs::module_is_initialized = .false.

True if this module has been initialized.

Definition at line 148 of file MOM_ice_shelf_dynamics.F90.

148  logical :: module_is_initialized = .false. !< True if this module has been initialized.

◆ moving_shelf_front

logical mom_ice_shelf_dynamics::ice_shelf_dyn_cs::moving_shelf_front

Specify whether to advance shelf front (and calve).

Definition at line 130 of file MOM_ice_shelf_dynamics.F90.

130  logical :: moving_shelf_front !< Specify whether to advance shelf front (and calve).

◆ n_basal_friction

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::n_basal_friction

Exponent in sliding law tau_b = C u^(m_slide)

Definition at line 124 of file MOM_ice_shelf_dynamics.F90.

124  real :: n_basal_friction !< Exponent in sliding law tau_b = C u^(m_slide)

◆ n_glen

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::n_glen

Nonlinearity exponent in Glen's Law.

Definition at line 120 of file MOM_ice_shelf_dynamics.F90.

120  real :: n_glen !< Nonlinearity exponent in Glen's Law

◆ n_sub_regularize

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::n_sub_regularize

partition of cell over which to integrate for interpolated grounding line the (rectangular) is divided into nxn equally-sized rectangles, over which basal contribution is integrated (iterative quadrature)

Definition at line 106 of file MOM_ice_shelf_dynamics.F90.

106  integer :: n_sub_regularize

◆ nonlin_solve_err_mode

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::nonlin_solve_err_mode

1: exit vel solve based on nonlin residual 2: exit based on "fixed point" metric (|u - u_last| / |u| < tol where | | is infty-norm

Definition at line 139 of file MOM_ice_shelf_dynamics.F90.

139  integer :: nonlin_solve_err_mode !< 1: exit vel solve based on nonlin residual

◆ nonlinear_tolerance

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::nonlinear_tolerance

The fractional nonlinear tolerance, relative to the initial error, that sets when to stop the iterative velocity solver.

Definition at line 136 of file MOM_ice_shelf_dynamics.F90.

136  real :: nonlinear_tolerance !< The fractional nonlinear tolerance, relative to the initial error,

◆ od_av

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::od_av => NULL()

The time average open ocean depth [Z ~> m].

Definition at line 87 of file MOM_ice_shelf_dynamics.F90.

87  real, pointer, dimension(:,:) :: OD_av => null() !< The time average open ocean depth [Z ~> m].

◆ od_rt

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::od_rt => NULL()

A running total for calculating OD_av.

Definition at line 85 of file MOM_ice_shelf_dynamics.F90.

85  real, pointer, dimension(:,:) :: OD_rt => null() !< A running total for calculating OD_av.

◆ od_rt_counter

integer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::od_rt_counter = 0

A counter of the number of contributions to OD_rt.

Definition at line 91 of file MOM_ice_shelf_dynamics.F90.

91  integer :: OD_rt_counter = 0 !< A counter of the number of contributions to OD_rt.

◆ t_bdry_val

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::t_bdry_val => NULL()

The ice temperature at inflowing boundaries [degC].

Definition at line 80 of file MOM_ice_shelf_dynamics.F90.

80  real, pointer, dimension(:,:) :: t_bdry_val => null() !< The ice temperature at inflowing boundaries [degC].

◆ t_shelf

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::t_shelf => NULL()

Veritcally integrated temperature in the ice shelf/stream, on corner-points (B grid) [degC].

Definition at line 72 of file MOM_ice_shelf_dynamics.F90.

72  real, pointer, dimension(:,:) :: t_shelf => null() !< Veritcally integrated temperature in the ice shelf/stream,

◆ taub_beta_eff

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::taub_beta_eff => NULL()

nonlinear part of "linearized" basal stress. The exact form depends on basal law exponent and/or whether flow is "hybridized" a la Goldberg 2011

Definition at line 82 of file MOM_ice_shelf_dynamics.F90.

82  real, pointer, dimension(:,:) :: taub_beta_eff => null() !< nonlinear part of "linearized" basal stress.

◆ thickness_bdry_val

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::thickness_bdry_val => NULL()

The ice thickness at an inflowing boundary [Z ~> m].

Definition at line 76 of file MOM_ice_shelf_dynamics.F90.

76  real, pointer, dimension(:,:) :: thickness_bdry_val => null() !< The ice thickness at an inflowing boundary [Z ~> m].

◆ thresh_float_col_depth

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::thresh_float_col_depth

The water column depth over which the shelf if considered to be floating.

Definition at line 129 of file MOM_ice_shelf_dynamics.F90.

129  real :: thresh_float_col_depth !< The water column depth over which the shelf if considered to be floating

◆ tmask

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::tmask => NULL()

A mask on tracer points that is 1 where there is ice.

Definition at line 74 of file MOM_ice_shelf_dynamics.F90.

74  real, pointer, dimension(:,:) :: tmask => null() !< A mask on tracer points that is 1 where there is ice.

◆ u_bdry_val

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::u_bdry_val => NULL()

The zonal ice velocity at inflowing boundaries [m s-1]??

Definition at line 77 of file MOM_ice_shelf_dynamics.F90.

77  real, pointer, dimension(:,:) :: u_bdry_val => null() !< The zonal ice velocity at inflowing boundaries [m s-1]??

◆ u_face_mask

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::u_face_mask => NULL()

mask for velocity boundary conditions on the C-grid u-face - this is because the FEM cares about FACES THAT GET INTEGRATED OVER, not vertices. Will represent boundary conditions on computational boundary (or permanent boundary between fast-moving and near-stagnant ice FOR NOW: 1=interior bdry, 0=no-flow boundary, 2=stress bdry condition, 3=inhomogeneous dirichlet boundary, 4=flux boundary: at these faces a flux will be specified which will override velocities; a homogeneous velocity condition will be specified (this seems to give the solver less difficulty)

Definition at line 47 of file MOM_ice_shelf_dynamics.F90.

47  real, pointer, dimension(:,:) :: u_face_mask => null() !< mask for velocity boundary conditions on the C-grid

◆ u_face_mask_bdry

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::u_face_mask_bdry => NULL()

A duplicate copy of u_face_mask?

Definition at line 57 of file MOM_ice_shelf_dynamics.F90.

57  real, pointer, dimension(:,:) :: u_face_mask_bdry => null() !< A duplicate copy of u_face_mask?

◆ u_flux_bdry_val

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::u_flux_bdry_val => NULL()

The ice volume flux into the cell through open boundary u-faces (where u_face_mask=4) [Z m2 s-1 ~> m3 s-1]??

Definition at line 59 of file MOM_ice_shelf_dynamics.F90.

59  real, pointer, dimension(:,:) :: u_flux_bdry_val => null() !< The ice volume flux into the cell through open boundary

◆ u_shelf

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::u_shelf => NULL()

the zonal (?) velocity of the ice shelf/sheet on q-points (B grid) [m s-1]??

Definition at line 42 of file MOM_ice_shelf_dynamics.F90.

42  real, pointer, dimension(:,:) :: u_shelf => null() !< the zonal (?) velocity of the ice shelf/sheet

◆ umask

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::umask => NULL()

u-mask on the actual degrees of freedom (B grid) 1=normal node, 3=inhomogeneous boundary node, 0 - no flow node (will also get ice-free nodes)

Definition at line 64 of file MOM_ice_shelf_dynamics.F90.

64  real, pointer, dimension(:,:) :: umask => null() !< u-mask on the actual degrees of freedom (B grid)

◆ use_reproducing_sums

logical mom_ice_shelf_dynamics::ice_shelf_dyn_cs::use_reproducing_sums

Use reproducing global sums.

Definition at line 141 of file MOM_ice_shelf_dynamics.F90.

141  logical :: use_reproducing_sums !< Use reproducing global sums.

◆ v_bdry_val

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::v_bdry_val => NULL()

The meridional ice velocity at inflowing boundaries [m s-1]??

Definition at line 78 of file MOM_ice_shelf_dynamics.F90.

78  real, pointer, dimension(:,:) :: v_bdry_val => null() !< The meridional ice velocity at inflowing boundaries [m s-1]??

◆ v_face_mask

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::v_face_mask => NULL()

A mask for velocity boundary conditions on the C-grid v-face, with valued defined similarly to u_face_mask.

Definition at line 55 of file MOM_ice_shelf_dynamics.F90.

55  real, pointer, dimension(:,:) :: v_face_mask => null() !< A mask for velocity boundary conditions on the C-grid

◆ v_face_mask_bdry

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::v_face_mask_bdry => NULL()

A duplicate copy of v_face_mask?

Definition at line 58 of file MOM_ice_shelf_dynamics.F90.

58  real, pointer, dimension(:,:) :: v_face_mask_bdry => null() !< A duplicate copy of v_face_mask?

◆ v_flux_bdry_val

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::v_flux_bdry_val => NULL()

The ice volume flux into the cell through open boundary v-faces (where v_face_mask=4) [Z m2 s-1 ~> m3 s-1]??

Definition at line 61 of file MOM_ice_shelf_dynamics.F90.

61  real, pointer, dimension(:,:) :: v_flux_bdry_val => null() !< The ice volume flux into the cell through open boundary

◆ v_shelf

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::v_shelf => NULL()

the meridional velocity of the ice shelf/sheet on q-points (B grid) [m s-1]??

Definition at line 44 of file MOM_ice_shelf_dynamics.F90.

44  real, pointer, dimension(:,:) :: v_shelf => null() !< the meridional velocity of the ice shelf/sheet

◆ velocity_update_time_step

real mom_ice_shelf_dynamics::ice_shelf_dyn_cs::velocity_update_time_step

The time interval over which to update the ice shelf velocity using the nonlinear elliptic equation, or 0 to update every timestep [s].

Definition at line 93 of file MOM_ice_shelf_dynamics.F90.

93  real :: velocity_update_time_step !< The time interval over which to update the ice shelf velocity

◆ vmask

real, dimension(:,:), pointer mom_ice_shelf_dynamics::ice_shelf_dyn_cs::vmask => NULL()

v-mask on the actual degrees of freedom (B grid) 1=normal node, 3=inhomogeneous boundary node, 0 - no flow node (will also get ice-free nodes)

Definition at line 67 of file MOM_ice_shelf_dynamics.F90.

67  real, pointer, dimension(:,:) :: vmask => null() !< v-mask on the actual degrees of freedom (B grid)

The documentation for this type was generated from the following file: