ext_theis_2d(time, rad, storage, trans_gmean, var, len_scale, rate=-0.0001, r_well=0.0, r_bound=inf, h_bound=0.0, T_well=None, prop=1.6, struc_grid=True, far_err=0.01, parts=30, lap_kwargs=None)[source]

The extended Theis solution in 2D.

The extended Theis solution for transient flow under a pumping condition in a confined aquifer. The type curve is describing the effective drawdown in a 2D statistical framework, where the transmissivity distribution is following a log-normal distribution with a gaussian correlation function.

  • time (numpy.ndarray) – Array with all time-points where the function should be evaluated

  • rad (numpy.ndarray) – Array with all radii where the function should be evaluated

  • storage (float) – Storage of the aquifer.

  • trans_gmean (float) – Geometric-mean transmissivity.

  • var (float) – Variance of log-transmissivity.

  • len_scale (float) – Correlation-length of log-transmissivity.

  • rate (float, optional) – Pumpingrate at the well. Default: -1e-4

  • r_well (float, optional) – Radius of the pumping-well. Default: 0.0

  • r_bound (float, optional) – Radius of the outer boundary of the aquifer. Default: np.inf

  • h_bound (float, optional) – Reference head at the outer boundary as well as initial condition. Default: 0.0

  • T_well (float, optional) – Explicit transmissivity value at the well. Harmonic mean by default.

  • prop (float, optional) – Proportionality factor used within the upscaling procedure. Default: 1.6

  • far_err (float, optional) – Relative error for the farfield transmissivity for calculating the cutoff-point of the solution. Default: 0.01

  • struc_grid (bool, optional) – If this is set to False, the rad and time array will be merged and interpreted as single, r-t points. In this case they need to have the same shapes. Otherwise a structured r-t grid is created. Default: True

  • parts (int, optional) – Since the solution is calculated by setting the transmissivity to local constant values, one needs to specify the number of partitions of the transmissivity. Default: 30

  • lap_kwargs (dict or None optional) – Dictionary for get_lap_inv containing method and method_dict. The default is equivalent to lap_kwargs = {"method": "stehfest", "method_dict": None}. Default: None


head – Array with all heads at the given radii and time-points.

Return type



If you want to use cartesian coordiantes, just use the formula r = sqrt(x**2 + y**2)


>>> ext_theis_2d([10,100], [1,2,3], 0.001, 0.001, 1, 10, -0.001)
array([[-0.33737576, -0.17400123, -0.09489812],
       [-0.58443489, -0.40847176, -0.31095166]])