Numerical-model parameter reference¶
The 1D and 2D numerical models both accept one dictionary at construction:
from siim.siim1d import siim as siim1d
from siim.siim2d import siim as siim2d
m1 = siim1d({'zELA': 1200, 'progress_bar': False})
m2 = siim2d({'zELA': 1200, 'seed': 0, 'progress_bar': False})
Keys are case-sensitive and unknown keys raise ValueError. Defaults below are
the public constructor defaults; an arrow shows a sentinel that is resolved
during construction. SI units are used unless stated otherwise: metres, years,
Pascals, and combinations of them appropriate to each coefficient.
This page covers the 1D and 2D numerical wrappers, including the additional keys accepted by the escarpment variant. The analytical classes expose their own constructor signatures in Analytical steady state.
Parameters accepted by both models¶
Grid, time, and state¶
key |
1D default |
2D default |
meaning |
|---|---|---|---|
|
|
|
Number of nodes in x. In 1D, |
|
|
|
Initial model time (yr). |
|
|
|
Final model time (yr); the clock is |
|
|
|
Number of master time points, including both endpoints. |
|
|
|
Requested saved frames. 1D also accepts |
|
|
|
State convention. |
|
|
|
Ice-thickness diffusivity (m²/yr); |
|
|
|
NumPy array, pandas DataFrame, or CSV path. Array shape is |
|
|
|
Show tqdm run progress. |
Climate, uplift, and base level¶
key |
default |
meaning |
|---|---|---|
|
|
Precipitation/runoff rate (m/yr), as a scalar or length- |
|
|
Linear mass-balance gradient (yr⁻¹). |
|
|
Equilibrium-line altitude (m), scalar or length- |
|
|
All-snow elevation (m). To derive ELA from it, pass |
|
|
Tectonic uplift rate (m/yr). Accepted array shapes differ by model; see below. |
|
|
Base-level waterline (m), scalar or length- |
|
|
Apply the waterline/effective-pressure gate to mode-B/C glacial erosion. |
|
|
Dimensionless gate width γ. Must be nonnegative; |
|
|
Uplift of mode-B/C bed at base-level outlets. |
U accepts these forms:
1D: a scalar,
(nt,),(nx,),(nx, nt), or a flat array of sizenx*ntinterpreted in row-major(nx, nt)order.2D: a scalar,
(nt,),(ny, nx), or(nt, ny, nx).
The 1D border_bed_uplift override is scalar. In 2D it may be scalar,
(ny, nx), or (nt, ny, nx); None reuses U, including its local and
time-varying structure.
Fluvial and glacial physics¶
key |
default |
meaning |
|---|---|---|
|
|
Dimensionless fluvial slope exponent. |
|
|
Dimensionless fluvial discharge/area exponent. |
|
|
Fluvial erodibility in |
|
|
Glen flow-law coefficient (Pa⁻³ s⁻¹). |
|
|
Dimensionless valley width-to-mean-thickness ratio, |
|
|
One of |
|
|
Critical thickness scale (m) used by the power and effective-exponential laws. |
|
|
Regularized-Coulomb sliding length (m). |
|
|
Dimensionless primary steady-state glacial slope exponent. |
|
|
Dimensionless glacial erosion-law exponent. Supplying it back-derives |
|
|
Advanced dimensionless flux-exponent override. It changes the analytical interpretation and the effective-exponential numerical law. The exact power and Coulomb numerical laws retain their law-derived exponents and emit a warning when |
|
|
Dimensionless accumulation-profile shape exponent used by the embedded analytical reference. |
|
|
Glacial erodibility in |
|
|
Coulomb yield stress (Pa). |
|
|
Dimensionless minimum relative gap maintained from the regularized-Coulomb pole. |
The nu/ell/mu relationships depend on the sliding law. Prefer nu for
ordinary runs. Use direct exponent overrides only when you mean to depart from
the exact-law/default analytical pairing.
Choosing glacial parameters explains what beta, ce/ell,
lambda_p and lambda_c set physically and how they trade off.
1D-only parameters¶
key |
default |
meaning |
|---|---|---|
|
|
Profile length (m). |
|
|
Requested spacing (m); when set, |
|
|
Head-catchment reference length (m). |
|
|
Hack-law coefficient in |
|
|
Dimensionless Hack-law exponent. |
|
|
Dimensionless tributary-contribution parameter. |
|
|
AAR-like ratio used by the analytical reference; must lie in |
|
|
Left boundary condition: |
|
|
Right boundary condition: |
|
|
Cap accumulation at |
|
|
In mode B, treat ice reaching a closed basin as floating/bed-decoupled. |
|
|
Centerline-to-mean depth ratio in |
When initial_topography=None, 1D creates a quadratic one- or two-sided
profile from the boundary conditions. Its stored arrays use the model’s native
x order, from L down to 0.
2D-only parameters¶
Domain, routing, and initial surface¶
key |
default |
meaning |
|---|---|---|
|
|
Domain lengths (m). |
|
|
Number of nodes in y; |
|
|
Edge status in |
|
|
Peak of the generated tent surface (m); used only when |
|
|
Amplitude of uniform nonnegative random relief added to the initial surface (m), whether generated or supplied. Set |
|
|
Random seed for initial relief. Set an integer for reproducible runs. |
|
|
|
|
|
Reserved router plug point; currently this is the only accepted value. |
|
|
Reserved flexure/diffusion plug point; currently this is the only accepted value. |
|
|
Hillslope diffusivity (m²/yr). |
|
|
Level-scheduled parallel mode-B/C eroder. |
Width carving and mode-C routing¶
key |
default |
meaning |
|---|---|---|
|
|
|
|
|
Excess footprint erosion η: footprint rate is |
|
|
Defaults |
|
|
Dimensionless cross-valley dip coefficient for trunk-surface routing. |
|
|
Routing-surface EMA coefficient: |
|
|
Coefficient in |
|
|
Dimensionless exponent in that glacier-width correction. |
The mode-C helpers affect routing and mass balance, so they can change the true simulation. They are not display filters. See Configuring a run for the interaction and ELA-retuning guidance.
Flexure and optional diagnostics¶
key |
default |
meaning |
|---|---|---|
|
|
Enable elastic-plate flexure from rock denudation/uplift and, by default, ice loading. |
|
|
Include ice load when |
|
|
Lithospheric density (kg/m³), scalar or |
|
|
Asthenospheric density (kg/m³). |
|
|
Effective elastic thickness (m). |
|
|
Accumulate per-step eroded volume through the flow graph and report it: |
Initial-topography formats¶
A NumPy array keeps the separately supplied grid dimensions and lengths. A
DataFrame or CSV supplies the grid as well and therefore overrides nx/L in
1D or nx/ny/Lx/Ly in 2D. These formats require pandas.
1D columns:
x,topography__elevation, and optionaltime.2D columns:
x,y,topography__elevation, and optionaltime.
If time is present, only its latest value is loaded. Coordinates must form a
finite, uniformly spaced grid; the 2D grid must have no missing cells. The 1D
loader sorts x ascending, whereas the model’s native m.x runs from L to
zero, so reverse an array yourself if its physical orientation is opposite to
the boundary convention you intend.
In 2D, the loaded or supplied surface is the base passed to the same initializer
as a generated surface. Uniform noise in [0, noise_amplitude) is then added
away from fixed-value edges. Use noise_amplitude=0 when an imported DEM must
remain exact; otherwise set an integer seed to reproduce the perturbation.
Running the 2D model through the optional adapter¶
m.run() uses the standalone in-house driver. m.run(driver='xsimlab') uses
the optional fastscape/xsimlab adapter and requires its conda environment. The
two drivers expose the same output contract. The hooks= argument is honored
only by the xsimlab driver; the in-house driver rejects a non-None value.
See Use siim’s glacial processes in your own fastscape model for direct process composition.
Escarpment-variant additions¶
siim.escarpment.siim_escarpment accepts every 2D key above plus the following
keys. The uplift and initial-topography switches are independent.
key |
default |
meaning |
|---|---|---|
|
|
|
|
|
Target integrated uplift deposited as the wave passes (m); required with |
|
|
Gaussian 1/e half-width (m). |
|
|
Wave propagation velocity (m/yr). |
|
|
Initial wave-centre position relative to the left edge (m). |
|
|
Dimensionless multiplier on the wave’s peak rate; |
|
|
Background uplift rate added to the wave (m/yr). For the embedded analytical reference, representative uplift is |
|
|
|
|
|
Plateau elevation (m); required with |
|
|
Elevation change across the plateau (m), used to seed the divide. |
|
|
Fraction of the x extent occupied by the plateau. |
|
|
Escarpment transition width (m). |
The plateau initializer also honors the ordinary 2D seed,
noise_amplitude, grid, and boundary parameters. See 2D landscape model for
the class API.