PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800

◆ CalovGreveIntegrand()

static double pism::surface::CalovGreveIntegrand ( double  sigma,
double  TacC 
)
static

Compute the integrand in integral (6) in [CalovGreve05].

The integral is

\[\mathrm{PDD} = \int_{t_0}^{t_0+\mathtt{dt}} dt\, \bigg[\frac{\sigma}{\sqrt{2\pi}}\,\exp\left(-\frac{T_{ac}(t)^2}{2\sigma^2}\right) + \frac{T_{ac}(t)}{2}\,\mathrm{erfc} \left(-\frac{T_{ac}(t)}{\sqrt{2}\,\sigma}\right)\bigg] \]

This procedure computes the quantity in square brackets. The value \(T_{ac}(t)\) in the above integral is in degrees C. Here we think of the argument TacC as temperature in Celsius, but really it is the temperature above a threshold at which it is "positive".

This integral is used for the expected number of positive degree days. The user can choose \(\sigma\) by option -pdd_std_dev. Note that the integral is over a time interval of length dt instead of a whole year as stated in CalovGreve05 . If sigma is zero, return the positive part of TacC.

Definition at line 94 of file localMassBalance.cc.

References pism::array::max().

Referenced by pism::surface::PDDMassBalance::get_PDDs().