Module arrhenius
Brief summary
The arrhenius module computes the vertically-averaged Arrhenius rate factor state.arrhenius (MPa\(^{-n}\) yr\(^{-1}\)) used by the iceflow solver to account for the temperature- and water-content-dependent viscosity of ice. It is a standalone companion to the enthalpy module — when enthalpy is active, place arrhenius immediately after it in the override /processes list so that each time step's temperature and water-content fields are fresh before the iceflow solve.
State variables
Reads: T, omega
Writes: arrhenius
Physical model
Ice viscosity depends on temperature through the Arrhenius relation. Using a two-regime law (cold / warm ice), the 3D rate factor is:
where \(T_{\rm pa}\) is the pressure-adjusted temperature, \(\omega\) is the water content, and the regime parameters \((A_r, Q_r)\) switch at a threshold temperature \(T_{\rm threshold}\):
Because viscosity (not the rate factor) should be averaged vertically, the module averages over \(B = A^{-1/n}\) and converts back:
where \(w_k\) are the vertical quadrature weights from the iceflow discretization.
Usage
The arrhenius module reads state.T and state.omega produced by enthalpy. A typical process list looks like:
If neither state.T nor state.omega are available at initialization, the module skips the computation silently and relies on the value already stored in state.arrhenius (e.g. set by iceflow or loaded from a checkpoint).
Parameters
Default configuration file (arrhenius.yaml):
arrhenius:
# Two-regime Arrhenius law (cold / warm ice) with water-content enhancement.
# Reads state.E (3D enthalpy) produced by the `enthalpy` module and derives
# temperature and water content on-the-fly. Place `arrhenius` AFTER
# `enthalpy` in the `override /processes` list.
A_cold: 3.985e-13
A_warm: 1.916e+3
Q_cold: 60000.0
Q_warm: 139000.0
T_threshold: 263.15
omega_coef: 181.25
omega_max: 0.01
R: 8.314
Description of the parameters:
| Name | Description | Default value | Units |
|---|---|---|---|
A_cold
|
Pre-exponential factor in the Arrhenius law for cold ice (T_pa < T_threshold). | 3.985e-13 | Pa\( ^{-n} \) s\( ^{-1} \) |
A_warm
|
Pre-exponential factor in the Arrhenius law for warm ice (T_pa >= T_threshold). | 1916.0 | Pa\( ^{-n} \) s\( ^{-1} \) |
Q_cold
|
Activation energy for cold ice in the Arrhenius law. | 60000.0 | J mol\( ^{-1} \) |
Q_warm
|
Activation energy for warm ice in the Arrhenius law. | 139000.0 | J mol\( ^{-1} \) |
T_threshold
|
Pressure-adjusted temperature threshold separating cold and warm ice regimes. | 263.15 | K |
omega_coef
|
Water-content enhancement coefficient: omega_factor = 1 + omega_coef * min(omega, omega_max). | 181.25 | — |
omega_max
|
Cap on water content used in the enhancement factor to avoid unphysical softening. | 0.01 | — |
R
|
Universal gas constant used in the Arrhenius exponential. | 8.314 | J mol\( ^{-1} \) K\( ^{-1} \) |
Contributors: Guillaume Jouvet, Thomas Gregov.