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>
Public Member Functions | |
GoldsbyKohlstedt (const std::string &prefix, const Config &config, EnthalpyConverter::Ptr EC) | |
![]() | |
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 |
![]() | |
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.