HantushWellModel#

class HantushWellModel(use_numba=False, quad=False)[source]#

An implementation of the Hantush well function for multiple pumping wells.

Parameters
  • up (bool, optional) – indicates whether a positive stress will cause the head to go up (True, default) or down (False)

  • meanstress (float) – mean value of the stress, used to set the initial value such that the final step times the mean stress equals 1

  • cutoff (float) – proportion after which the step function is cut off. Default is 0.999.

Notes

The impulse response function is:

\[\theta(r, t) = \frac{A}{2t} \exp(-t/a - abr^2/t)\]

where r is the distance from the pumping well to the observation point and must be specified. A, a, and b are parameters, which are slightly different from the Hantush response function. The gain is defined as:

\(\text{gain} = A K_0 \left( 2r \sqrt(b) \right)\)

The implementation used here is explained in Veling and Maas (2010).

Methods#

__init__

block

Method to return the block function.

gain

get_init_parameters

Get initial parameters and bounds.

get_t

Internal method to determine the times at which to evaluate the step-response, from t=0.

get_tmax

Method to get the response time for a certain cutoff.

impulse

Method to return the impulse response function.

numba_step

numpy_step

quad_step

set_distances

step

Method to return the step function.

variance_gain

Calculate variance of the gain from parameters A and b.