timflow.transient.model.ModelMaq#

class timflow.transient.model.ModelMaq(kaq=[1], z=[1, 0], c=[], Saq=[0.001], Sll=[0], poraq=[0.3], porll=[0.3], topboundary='conf', phreatictop=False, tmin=1, tmax=10, tstart=0, M=10, steady=None)#

Bases: TimModel

Create model specifying a multi-aquifer sequence of aquifer-leakylayer-etc.

Parameters:
  • kaq (float, array or list) – hydraulic conductivity of each aquifer from the top down if float, hydraulic conductivity is the same in all aquifers

  • z (array or list) – elevation tops and bottoms of the aquifers from the top down leaky layers may have zero thickness if top=’conf’: length is 2 * number of aquifers if top=’semi’: length is 2 * number of aquifers + 1 as top of leaky layer on top of systems needs to be specified

  • c (float, array or list) – resistance of leaky layers from the top down if float, resistance is the same for all leaky layers if top=’conf’: length is number of aquifers - 1 if top=’semi’: length is number of aquifers

  • Saq (float, array or list) – specific storage of all aquifers if float, sepcific storage is same in all aquifers if phreatictop is True and topboundary is ‘conf’, Saq of top aquifer is phreatic storage coefficient (and not multiplied with the layer thickness)

  • Sll (float, array or list) – specific storage of all leaky layers if float, sepcific storage is same in all leaky layers if phreatictop is True and topboundary is ‘semi’, Sll of top leaky layer is phreatic storage coefficient (and not multiplied with the layer thickness)

  • topboundary (string, 'conf' or 'semi' (default is 'conf')) – indicating whether the top is confined (‘conf’) or semi-confined (‘semi’)

  • phreatictop (boolean) – the storage coefficient of the top model layer is treated as phreatic storage (and not multiplied with the aquifer thickness)

  • tmin (scalar) – the minimum time for which heads can be computed after any change in boundary condition.

  • tmax (scalar) – the maximum time for which heads can be computed

  • tstart (scalar) – time at start of simulation (default 0)

  • M (integer) – the number of terms to be used in the numerical inversion algorithm. 10 is usually sufficient. If drawdown curves appear to oscillate, more terms may be needed, but this seldom happens.

  • steady (optional instance of a solved timflow.steady model) – a timflow.steady model may be included to add steady-state flow

Methods#

compute_laplace_parameters()

Compute the parameters for the Laplace transform inversion.

potential(x, y, t[, layers, aq, derivative, returnphi])

Returns pot[naq, ntimes] if layers=None, otherwise pot[len(layers), ntimes].

potentialone(x, y, time[, layers, aq, derivative, ...])

Returns pot[naq] if layers=None, otherwise pot[len(layers)].

disvec(x, y, t[, layers, aq, derivative])

Compute discharge vectgor.

head(x, y, t[, layers, aq, derivative, neglect_steady])

Head at x, y, t where t can be multiple times.

headalongline(x, y, t[, layers])

Head along line or curve.

disvecalongline(x, y, t[, layers])

Discharge vector along line or curve.

headgrid(xg, yg, t[, layers, printrow])

Grid of heads.

headgrid2(x1, x2, nx, y1, y2, ny, t[, layers, printrow])

Grid of heads.

inverseLapTran(pot, t)

Returns array of potentials of len(t) t must be ordered and tmin<=t<=tmax.

solve([printmat, sendback, silent])

Compute solution.

aquifer_summary()

Return DataFrame with summary of aquifer(s) parameters in model.