PISM, A Parallel Ice Sheet Model
stable v2.1.1 committed by Constantine Khrulev on 2024-12-04 13:36:58 -0900
|
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) | |
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 | |
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. More... | |
Protected Attributes | |
double | m_V_act_vol |
double | m_d_grain_size |
double | m_diff_crit_temp |
double | m_diff_V_m |
double | m_diff_D_0v |
double | m_diff_Q_v |
double | m_diff_D_0b |
double | m_diff_Q_b |
double | m_diff_delta |
double | m_disl_crit_temp |
double | m_disl_A_cold |
double | m_disl_A_warm |
double | m_disl_n |
double | m_disl_Q_cold |
double | m_disl_Q_warm |
double | m_basal_A |
double | m_basal_n |
double | m_basal_Q |
double | m_gbs_crit_temp |
double | m_gbs_A_cold |
double | m_gbs_A_warm |
double | m_gbs_n |
double | m_gbs_Q_cold |
double | m_p_grain_sz_exp |
double | m_gbs_Q_warm |
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... | |
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.