|
PISM, A Parallel Ice Sheet Model stable 0.4.1779
|
If the bed elevation topg is smoothed by preprocessing then we observe a reduction in the peak values of the SIA diffusivities. From such smoothing there is (generically) also a reduction in the peak magnitudes of horizontal velocities from both the SIA and SSA models. The major consequence of these reductions, through the adaptive time-stepping mechanism, is that PISM can take longer time steps and thus that it can complete model runs in shorter time.
Large peak diffusivities coming from bed roughness are located (generically) at margin locations where the ice is on, or has flowed onto, fjord-like bed topography. At coarser resolutions (e.g. 20km and up), it appears that the effect of increasing bed roughness is not as severe as at finer resolutions (e.g. 10km, 5km and finer). Of course it is true that the shallow models we use, namely the SIA and SSA models, are missing significant stress gradients at the same margin locations which have large bed slopes.
Here we are emphasizing the performance "hit" which the whole model experiences if some small part of the ice sheet is on a rough bed. That part therefore is not well-modeled anyway, compared to the majority of the ice sheet. (Switching to full Stokes or Blatter higher order models without major spatial adaptivity would probably imply a gain in the balanced stress components and a loss of the ability to model the ice sheet at high resolution. There is a tradeoff between completeness of the continuum model and usable resolution needed to resolve the features of the real ice sheet.)
There exists a theory which addresses exactly this situation for the SIA model, and explains rigorously that one should use a smoothed bed in that model. But with an associated reduction in diffusivity. This theory explains how to improve the SIA model to handle bed roughness more correctly, because it parameterizes the effects of "higher-order" stresses which act on the ice as it flows over bed topography. Specifically it shows the way to a double performance boost for PISM:
The theory is in Christian Schoof's (2003) The effect of basal topography on ice sheet dynamics [Schoofbasaltopg2003]. His mathematical technique is to expand the Stokes equations in two levels of horizontal scales, one for the entire ice sheet (denoted
) and one for the horizontal scale (wavelength) of bed topography (
). The "inner" scaling assumes that the typical ice sheet thickness
is small compared to
, while the "outer" scaling assumes that
is small compared to
:
Specifically, there is an "inner" horizontal variable
describing the local topography on scales comparable to
or smaller, and an "outer" horizontal variable
describing the large scale bed topography and ice sheet flow on scales larger than
.
In order to describe the Schoof scheme using PISM notation, we start by recalling the mass continuity equation which is fundamental to any shallow ice theory:
Within PISM this equation is handled by IceModel::massContExplicitStep(). Recall that
is the mass balance added to the ice column per time. (It plays no further role here.) In the SIA case with zero basal sliding, the horizontal mass flux is
where
is given next. Thus the mass continuity equation is diffusive. The diffusivity
is a function of the ice geometry and the ice flow law. In the isothermal Glen power law (power
) case we recall
where
[c.f. details in BLKCB].
Consider now the "original" bed topography
, which we assume for the moment is independent of time. (Time-independence is not actually critical, and such a restriction can be removed.) We will use
to denote the horizontal model coordinates, though they are denoted
elsewhere in these PISM docs. Suppose a locally-smoothed bed is computed by averaging
over a rectangular region of sides
by
, namely:
where the slashed integral symbol is defined as
Consider also the "local bed topography"
As a function of the local coordinates
, the local bed topography
is the amount by which the bed deviates from the "local average"
. Generally we will use
,
as the smoothing domain, but these specific ranges are not required by the formulas above. Note that the average of the local bed topgraphy is zero by definition:
The result of Schoof's scaling arguments ([Schoofbasaltopg2003], equation (49)] is to modify the diffusivity by multiplying by a factor
:
where
is defined by (siadiffusivity) earlier, and
Here the ice thickness and ice surface elevation are related to the smoothed bed topography, so that in PISM notation
This can be treated as the definition of the ice thickness
in the above formula for
.
The formula for
has additional terms if there is basal sliding, but we consider only the non-sliding SIA here.
The very important fact that
is proven in appendix A of [Schoofbasaltopg2003] by a Jensen's inequality argument. (See also the convexity argument at the bottom of this page.)
The above formulas already reflect the recommendations Schoof gives on how to apply his formulas ([Schoofbasaltopg2003], subsection 4.2). The rest of this page is devoted to how the class PISMBedSmoother implements a practical version of this theory, based on these recommendations plus some additional approximation.
The averages appearing in his scaling arguments are over an infinite domain, e.g.
For practical modeling use, Schoof specifically recommends averaging over some finite length scale which should be "considerably greater than the grid spacing, but much smaller than the size of the ice sheet." Furthermore he recommends that, because of the typical aspect ratio of ice sheets, ""Bed topography on much larger length scales than 10 km should then be resolved explicitly through the smoothed bed height
rather than the correction factor
."" Thus in PISM we use
km as the default. Naturally the values are configurable also. (The condition
could, perhaps, be a sign to turn off this mechanism.)
It is, of course, possible to have bed roughness of significant magnitude at essentially any wavelength. We make no claim that PISM results are good models of ice flow over arbitrary geometry; clearly the current models cannot come close to the non-shallow solution (Stokes) in such cases. Rather, the goal right now is to improve on the existing shallow models, the diffusive SIA specifically, while maintaining or increasing high-resolution performance and comprehensive model quality, which necessarily includes many other modeled physical processes like ice thermal state, basal lubrication, and so on. The desirable properties of the Schoof scheme are accepted not because the resulting model is perfect, but because we gain both a physical modeling improvement and a computational performance improvement from its use.
How do we actually compute expression (thetadefn) quickly? Schoof has this suggestion, which we follow: ""To find
for values of [surface elevation for which
has not already been computed], some interpolation scheme should then be used.
is then represented at each grid point by some locally-defined interpolating function [of the surface elevation].""
We need a "locally-defined interpolating function". As with any approximation scheme, higher accuracy is achieved by doing "more work", which here is an increase in memory used for storing spatially-dependent coefficients. Pade rational approximations, for example, were considered but are excluded because of the appearance of uncontrolled poles in the domain of approximation. The 4th degree Taylor polynomial is chosen here because it shares the same convexity as the rational function it approximates; this is proven below.
Use of Taylor polynomial
only requires the storage of three fields (below), but it has been demonstrated to be reasonably accurate by trying beds of various roughnesses in Matlab/Octave scripts. The derivation of the Taylor polynomial is most easily understood by starting with an abstract rational function like the one which appears in (thetadefn), as follows.
The fourth-order Taylor polynomial of the function
around
is
so
. Let
where
is some function and
a scalar. Then
Now,
can be written
So our strategy should be clear, to approximate
by the Taylor polynomial as a function of
, whose the coefficients depend on
. We thereby get a rapidly-computable approximation for
using stored coefficients which depend on
. In fact, let
for fixed
, and let
. Recall that the mean of this
is zero, so that the first-order term drops out in the above expansion of
. We have the following approximation of
:
where
for
and
.
Note that the coefficients
depend only on the bed topography, and not on the ice geometry. Thus we will pre-process the original bed elevations
to compute and store the fields
. The computation of equation (thetaapprox) is fast and easily-parallelized if these fields are pre-stored.
The computation of the coefficients
and the smoothed bed
at the pre-processing stage is more involved, especially when done in parallel. The parameters
must be set, but as noted above we use a default value of 10 km based on Schoof's recommendation. This physical distance may be less than or more than the grid spacing. In the case that the grid spacing is 1 km, for example, we see that there is a large smoothing domain in terms of the number of grid points. Therefore move the unsmoothed topography to processor zero and do the smoothing and the coefficient-computing there. The class PISMBedSmoother implements these details.
The approximation (thetaapprox) given above relates to the Jensen's inequality argument used by Schoof in Appendix A of [Schoofbasaltopg2003]. For the nonsliding case, his argument shows that because
is convex on
for
, therefore
.
Thus it is desirable for the approximation
to be convex on the same interval, and this is true. In fact,
and this function turns out to be positive for all
. In fact we will show that the minimum of
is positive. That minimum occurs where
or
. It is a minimum because
is a positive constant. And
1.7.3