timflow.steady.well.TargetHeadWellString#

class timflow.steady.well.TargetHeadWellString(model, xy, rw=0.1, res=0.0, layers=0, hcp=10, xcp=None, ycp=None, lcp=0, label=None)#

Bases: WellStringBase

A string of wells for which the head is specified at a point.

The head in the wells is equal but unknown and the head at the control point (lcp, xcp, ycp) must equal the specified head hcp.

Parameters:
  • model (Model object) – model to which the element is added

  • xy (list of tuples or np.ndarray) – list of (x, y) tuples or 2d array of x and y coordinates of the wells

  • rw (float) – radius of the wells

  • res (float) – resistance of the well screens

  • layers (int, array or list) – layer (int) or layers (list or array) where well is screened

  • hcp (float) – head at the control point (lcp, xcp, ycp)

  • xcp (float) – x-coordinate where head is specified

  • ycp (float) – y-coordinate where head is specified

  • lcp (int) – layer in which head is specified, default is the first layer, layer 0

  • label (string or None (default: None)) – label of the well string

Methods#

potinf(x, y[, aq])

Returns array of size (nparam, naq).

disvecinf(x, y[, aq])

Returns array of size (2, nparam, naq).

discharge()

Discharge of the element in each layer.

discharge_per_well()

Discharge per well in each layer.

headinside()

The head inside the wells.

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

Returns array of size (len(layers),nparam).

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

Returns array of size len(layers) only used in building equations.

disvec(x, y[, aq])

Returns array of size (2, nparam, naq).

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

Returns two arrays of size (len(layers),nparam).

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

Returns two arrays of size len(layers) only used in building equations.