timflow.steady.model.ModelMaq#

class timflow.steady.model.ModelMaq(kaq=1, z=None, c=None, npor=0.3, topboundary='conf', hstar=None)#

Bases: Model

Create a model by specifying a mult-aquifer sequence of aquifer-leaky layer.

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 of tops and bottoms of the aquifers from the top down. Leaky layers may have zero thickness.

    • if topboundary=’conf’: length is 2 * number of aquifers

    • if topboundary=’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 topboundary=’conf’: length is number of aquifers - 1

    • if topboundary=’semi’: length is number of aquifers

  • npor (float, array or list) –

    Porosity of all aquifers and leaky layers from the top down.
    • if float, porosity is the same for all layers

    • if topboundary=’conf’: length is 2 * number of aquifers - 1

    • if topboundary=’semi’: length is 2 * number of aquifers

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

  • hstar (float or None (default is None)) – Head value above semi-confining top, only read if topboundary=’semi’.

Examples

Build a model:

ml = ModelMaq(kaq=[10, 20], z=[20, 12, 10, 0], c=1000)

Methods#

remove_element(e)

Remove element e from model.

disvec(x, y[, aq])

Discharge vector at x, y.

normflux(x, y, theta)

Flux at point x, y in direction of angle theta.

intnormflux_segment(x1, y1, x2, y2[, method, ndeg])

Integrated normal (perpendicular) flux over specified line segment.

intnormflux(xy[, method, ndeg])

Integrated normal (perpendicular) flux over polyline.

head(x, y[, layers, aq])

Head at x, y.

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

Grid of heads.

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

Grid of heads.

headalongline(x, y[, layers])

Head along line or curve.

disvecalongline(x, y[, layers])

Compute discharge vector along line.

solve([printmat, sendback, silent])

Compute solution.

solve_mp([nproc, printmat, sendback, silent])

Compute solution, multiprocessing implementation.

aquifer_summary()

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