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 | Protected Member Functions | Protected Attributes | List of all members
pism::rheology::GPBLD Class Reference

Glen (1955) and Paterson-Budd (1982) flow law with additional water fraction factor from Lliboutry & Duval (1985). More...

#include <GPBLD.hh>

+ Inheritance diagram for pism::rheology::GPBLD:

Public Member Functions

 GPBLD (const std::string &prefix, const Config &config, EnthalpyConverter::Ptr EC)
 
- Public Member Functions inherited from pism::rheology::FlowLaw
 FlowLaw (const std::string &prefix, const Config &config, EnthalpyConverter::Ptr EC)
 
virtual ~FlowLaw ()=default
 
void effective_viscosity (double hardness, double gamma, double *nu, double *dnu) const
 Computes the regularized effective viscosity and its derivative with respect to the second invariant \( \gamma \). More...
 
void effective_viscosity (double hardness, double gamma, double eps, double *nu, double *dnu) const
 
std::string name () const
 
double exponent () const
 
EnthalpyConverter::Ptr EC () const
 
double hardness (double E, double p) const
 
void hardness_n (const double *enthalpy, const double *pressure, unsigned int n, double *result) const
 
double softness (double E, double p) const
 
double flow (double stress, double enthalpy, double pressure, double grain_size) const
 The flow law itself. More...
 
void flow_n (const double *stress, const double *E, const double *pressure, const double *grainsize, unsigned int n, double *result) const
 

Protected Member Functions

double softness_impl (double enthalpy, double pressure) const
 The softness factor in the Glen-Paterson-Budd-Lliboutry-Duval flow law. For constitutive law form. More...
 
void flow_n_impl (const double *stress, const double *enthalpy, const double *pressure, const double *grainsize, unsigned int n, double *result) const
 
- Protected Member Functions inherited from pism::rheology::FlowLaw
virtual double flow_impl (double stress, double E, double pressure, double grainsize) const
 
virtual double hardness_impl (double E, double p) const
 
virtual void hardness_n_impl (const double *enthalpy, const double *pressure, unsigned int n, double *result) const
 
double softness_paterson_budd (double T_pa) const
 Return the softness parameter A(T) for a given temperature T. More...
 

Protected Attributes

double m_T_0
 
double m_water_frac_coeff
 
double m_water_frac_observed_limit
 
- Protected Attributes inherited from pism::rheology::FlowLaw
std::string m_name
 
double m_rho
 ice density More...
 
double m_beta_CC_grad
 Clausius-Clapeyron gradient. More...
 
double m_melting_point_temp
 melting point temperature (for water, 273.15 K) More...
 
EnthalpyConverter::Ptr m_EC
 
double m_schoofReg
 regularization parameter for \( \gamma \) More...
 
double m_viscosity_power
 \( (1 - n) / (2n) \); used to compute viscosity More...
 
double m_hardness_power
 \( - 1 / n \); used to compute hardness More...
 
double m_A_cold
 Paterson-Budd softness, cold case. More...
 
double m_A_warm
 Paterson-Budd softness, warm case. More...
 
double m_Q_cold
 Activation energy, cold case. More...
 
double m_Q_warm
 Activation energy, warm case. More...
 
double m_crit_temp
 critical temperature (cold – warm transition) More...
 
double m_standard_gravity
 acceleration due to gravity More...
 
double m_ideal_gas_constant
 ideal gas constant More...
 
double m_n
 power law exponent More...
 

Detailed Description

Glen (1955) and Paterson-Budd (1982) flow law with additional water fraction factor from Lliboutry & Duval (1985).

See [AschwandenBlatter]. The basic references are [Glen] and [PatersonBudd] and [LliboutryDuval1985].

Definition at line 33 of file GPBLD.hh.


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