# Shallow ice approximation (SIA)¶

Note

The explicit time stepping of the mass continuity equation in the case of the SIA flow comes with a severe restriction on time step length:

Here \(D\) is the maximum diffusivity of the SIA flow and \(R\) is
`time_stepping`

`.adaptive_ratio`

, a tuning parameter that further reduces the
maximum allowed time step length.

The maximum diffusivity \(D\) may be achieved at an isolated grid point near the ice
margin. In this case it might make sense to limit the diffusivity of the SIA flow,
sacrificing accuracy at a few grid points to increase time step length and reduce the
computational cost. Set `stress_balance`

`.sia`

`.limit_diffusivity`

to enable this
mechanism.

When `stress_balance`

`.sia`

`.limit_diffusivity`

is `false`

PISM stops as soon as
the SIA diffusivity at any grid point exceeds
`stress_balance`

`.sia`

`.max_diffusivity`

. We do this to make it easier to detect
problematic model configurations: in many cases it does not make sense to continue a
simulation if \(D\) is very large.

## Surface gradient method¶

PISM computes surface gradients to determine the “driving stress”

where \(H\) is the ice thickness, and \(h\) is the ice surface elevation.

In the SIA model surface gradients at *staggered* grid locations are computed using one of
the following three finite-difference approximations (selected using
`stress_balance`

`.sia`

`.surface_gradient_method`

):

`mahaffy`

: This most “standard” way computes the surface slope onto the staggered grid for the SIA [64]. It makes \(O(\dx^2,\dy^2)\) errors.`haseloff`

: This is the default method. It only differs from`mahaffy`

at ice-margin locations, where the slope is approximated using one-sided finite differences in cases where an adjacent ice-free bedrock surface elevation is above the ice elevation.`eta`

: In this method we first transform the thickness \(H\) by \(\eta = H^{(2n+2)/n}\) and then differentiate the sum of the thickness and the bed using centered differences:\[\nabla h = \nabla H + \nabla b = \frac{n}{(2n+2)} \eta^{(-n-2)/(2n+2)} \nabla \eta + \nabla b.\]Here \(b\) is the bed elevation, \(h\) is the surface elevation, and \(n\) is the Glen exponent. This transformation sometimes has the benefits that the surface values of the horizontal velocity and vertical velocity, and the driving stress, are better behaved near the margin. See [58] for technical explanation of this transformation and compare [65]. The actual finite difference schemes applied to compute the surface slope are similar to option

`mahaffy`

.Note

This method may improve the model performance near

*grounded*margins but should not be used in simulations of marine ice sheets.

To the best of our knowledge there is no theoretical advice on the best, most robust mechanism.

## Parameterization of bed roughness¶

Schoof [66] describes how to alter the SIA stress balance to model ice flow over bumpy bedrock topgraphy. One computes the amount by which bumpy topography lowers the SIA diffusivity. An internal quantity used in this method is a smoothed version of the bedrock topography. As a practical matter for PISM, this theory improves the SIA’s ability to handle bed roughness because it parameterizes the effects of “higher-order” stresses which act on the ice as it flows over bumps. For additional technical description of PISM’s implementation, see Using Schoof’s parameterized bed roughness technique in PISM.

There are two associated parameters:

`stress_balance`

`.sia`

`.bed_smoother`

`.range`

gives the half-width of the square smoothing domain in meters. If zero is given then the mechanism is turned off. The mechanism is on by default using executable`pismr`

, with the half-width set to 5 km, giving Schoof’s recommended smoothing size of 10 km [66].`stress_balance`

`.sia`

`.bed_smoother`

`.theta_min`

is the minimum value of \(\theta\) in the parameterization.

This mechanism is turned off by default in `pismv`

.

Under the default `output`

`.size`

(`medium`

), PISM writes fields `topgsmooth`

and `schoofs_theta`

from this mechanism. The thickness relative to the smoothed
bedrock elevation, namely `topgsmooth`

, is the difference between the unsmoothed
surface elevation and the smoothed bedrock elevation. It is *only used internally by this
mechanism*, to compute a modified value of the diffusivity; the rest of PISM does not use
this or any other smoothed bed. The field `schoofs_theta`

is a number \(\theta\)
between `stress_balance`

`.sia`

`.bed_smoother`

`.theta_min`

(usually zero) and \(1\), with
values significantly below one indicating a reduction in diffusivity, essentially a drag
coefficient, from bumpy bed.

## Coupling to the age of the ice¶

The age of the ice can be used in two parameterizations in the SIA stress balance model:

Ice grain size parameterization based on data from [67] and [68] (Vostok core data). In PISM, only the Goldsby-Kohlstedt flow law (see Ice rheology) uses the grain size.

Set

`stress_balance`

`.sia`

`.grain_size_age_coupling`

to enable this parameterization.The flow enhancement factor can be coupled to the age of the ice as in [69]: \(e\) in (12) is set to

`stress_balance`

`.sia`

`.enhancement_factor_interglacial`

during Eemian and Holocene,`stress_balance`

`.sia`

`.enhancement_factor`

otherwise.

See

`time`

`.eemian_start`

,`time`

`.eemian_end`

, and`time`

`.holocene_start`

.Set

`stress_balance`

`.sia`

`.e_age_coupling`

to enable this parameterization.

## Parameters¶

Prefix: `stress_balance.sia.`

`Glen_exponent`

(3) Glen exponent in ice flow law for SIA`bed_smoother`

`.range`

(5000*meters*) half-width of smoothing domain in the bed roughness parameterization for SIA [66]; set to zero to disable`bed_smoother`

`.theta_min`

(0) minimum value of \(\theta\) in the bed roughness parameterization for SIA [66]`e_age_coupling`

(no) Couple the SIA enhancement factor to age as in [44].`enhancement_factor`

(1) Flow enhancement factor for SIA`enhancement_factor_interglacial`

(1) Flow enhancement factor for SIA; used for ice accumulated during interglacial periods.`flow_law`

(`gpbld`

) The SIA flow law.`grain_size_age_coupling`

(no) Use age of the ice to compute grain size to use with the Goldsby-Kohlstedt [70] flow law`limit_diffusivity`

(no) Limit SIA diffusivity by`stress_balance`

`.sia`

`.max_diffusivity`

.`max_diffusivity`

(100*m2 s-1*) Maximum allowed diffusivity of the SIA flow. PISM stops with an error message if the SIA diffusivity exceeds this limit.`surface_gradient_method`

(`haseloff`

) method used for surface gradient calculation at staggered grid points

Previous | Up | Next |