PISM, A Parallel Ice Sheet Model  stable v2.1.1 committed by Constantine Khrulev on 2024-12-04 13:36:58 -0900

◆ update()

void pism::stressbalance::WeertmanSliding::update ( const Inputs inputs,
bool  full_update 
)
virtual

Compute sliding velocity using a Weertman-style parameterization from [Tomkin2007], equation 5.

\[ u_s = \frac{2 A_s \beta_c (\rho g H)^{n}}{N - P} \cdot |\nabla h|^{n-1} \cdot \nabla h, \]

where

  • \( A_s \) is the sliding parameter,
  • \( \beta_c \) is a parameter capturing the effect of the presence of valley walls (set to 1 in this implementation),
  • \( \rho \) is the ice density,
  • \( H \) is the ice thickness,
  • \( h \) is the ice surface elevation ,
  • \( n \) is the flow law exponent (usually 3),
  • \( g \) is the acceleration due to gravity,
  • \( N \) is the ice overburden pressure,
  • \( P \) is the basal water pressure.

With these modifications and noting that \( N = \rho g H \), the formula above becomes

\[ u_s = \frac{2 A_s}{1 - k} \cdot (N |\nabla h|)^{n-1} \cdot \nabla h, \]

where

  • \( N = \rho g H \),
  • \( P = k N \) (we assume that basal water pressure is a given fraction of overburden)

This parameterization is used for areas of grounded ice where the base of the ice is temperate.

Implements pism::stressbalance::ShallowStressBalance.

Definition at line 74 of file WeertmanSliding.cc.

References pism::Geometry::cell_type, pism::ParallelSection::check(), pism::array::diff_x_p(), pism::array::diff_y_p(), pism::stressbalance::Inputs::enthalpy, pism::ParallelSection::failed(), pism::stressbalance::Inputs::geometry, pism::array::Array3D::get_column(), pism::Geometry::ice_surface_elevation, pism::Geometry::ice_thickness, pism::k, pism::Component::m_config, pism::stressbalance::ShallowStressBalance::m_EC, pism::stressbalance::ShallowStressBalance::m_flow_law, pism::Component::m_grid, pism::stressbalance::ShallowStressBalance::m_velocity, pism::Vector2d::magnitude(), and n.