|
PISM, A Parallel Ice Sheet Model 2.2.2-d6b3a29ca committed by Constantine Khrulev on 2025-03-28
|
A hybrid of Goldsby-Kohlstedt (2001) ice (constitutive form) and Paterson-Budd (1982)-Glen (viscosity form). More...
#include <GoldsbyKohlstedt.hh>
Inheritance diagram for pism::rheology::GoldsbyKohlstedt:Public Member Functions | |
| GoldsbyKohlstedt (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 \). | |
| 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. | |
| void | flow_n (const double *stress, const double *E, const double *pressure, const double *grainsize, unsigned int n, double *result) const |
Protected Member Functions | |
| virtual double | flow_impl (double stress, double E, double pressure, double grainsize) const |
| double | softness_impl (double E, double p) const __attribute__((noreturn)) |
| double | hardness_impl (double E, double p) const |
| virtual double | flow_from_temp (double stress, double temp, double pressure, double gs) const |
| GKparts | flowParts (double stress, double temp, double pressure) const |
Protected Member Functions inherited from pism::rheology::FlowLaw | |
| virtual void | flow_n_impl (const double *stress, const double *E, const double *pressure, const double *grainsize, unsigned int n, double *result) 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. | |
A hybrid of Goldsby-Kohlstedt (2001) ice (constitutive form) and Paterson-Budd (1982)-Glen (viscosity form).
Each FlowLaw has both a forward flow law in "constitutive law" form ("flow_from_temp()") and an inverted-and-vertically-integrated flow law ("effective_viscosity()"). Only the former form of the flow law is known for Goldsby-Kohlstedt. If one can invert-and-vertically-integrate the G-K law then one can build a "trueGKIce" derived class.
Definition at line 45 of file GoldsbyKohlstedt.hh.