PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
Public Member Functions | Private Attributes | List of all members
pism::stressbalance::SSAStrengthExtension Class Reference

Gives an extension coefficient to maintain ellipticity of SSA where ice is thin. More...

#include <SSA.hh>

Public Member Functions

 SSAStrengthExtension (const Config &c)
 
void set_notional_strength (double my_nuH)
 Set strength = (viscosity times thickness). More...
 
void set_min_thickness (double my_min_thickness)
 Set minimum thickness to trigger use of extension. More...
 
double get_notional_strength () const
 Returns strength = (viscosity times thickness). More...
 
double get_min_thickness () const
 Returns minimum thickness to trigger use of extension. More...
 

Private Attributes

double m_min_thickness
 
double m_constant_nu
 

Detailed Description

Gives an extension coefficient to maintain ellipticity of SSA where ice is thin.

The SSA is basically a nonlinear elliptic, but vector-valued, equation which determines the ice velocity field from the driving stress, the basal shear stress, the ice hardness, and some boundary conditions. The problem loses ellipticity (coercivity) if the thickness actually goes to zero. This class provides an extension coefficient to maintain ellipticity.

More specifically, the SSA equations are

\[ \def\ddx#1{\ensuremath{\frac{\partial #1}{\partial x}}} \def\ddy#1{\ensuremath{\frac{\partial #1}{\partial y}}} - 2 \ddx{}\left[\nu H \left(2 \ddx{u} + \ddy{v}\right)\right] - \ddy{}\left[\nu H \left(\ddy{u} + \ddx{v}\right)\right] + \tau_{(b)x} = - \rho g H \ddx{h}, \]

and another similar equation for the \(y\)-component. Schoof SchoofStream shows that these PDEs are the variational equations for a coercive functional, thus (morally) elliptic.

The quantity \(\nu H\) is the nonlinear coefficient, and conceptually it is a membrane strength. This class extends \(\nu H\) to have a minimum value at all points. It is a class, and not just a configuration constant, because setting both the thickness \(H\) and the value \(\nu H\) are allowed, and setting each of these does not affect the value of the other.

Definition at line 57 of file SSA.hh.


The documentation for this class was generated from the following files: