timflow.steady.well.Well#
- class timflow.steady.well.Well(model, xw=0, yw=0, Qw=100.0, rw=0.1, res=0.0, layers=0, label=None, xc=None, yc=None)#
Bases:
WellBaseWell Class to create a well with a specified discharge.
Notes
The well may be screened in multiple layers. The resistance of the screen may be specified. The head is computed such that the discharge \(Q_i\) in layer \(i\) is computed as.
\[Q_i = 2\pi r_w(h_i - h_w)/c\]where \(c\) is the resistance of the well screen and \(h_w\) is the head inside the well. The total discharge is distributed over the screens such that \(h_w\) is the same in each screened layer.
- Parameters:
model (Model object) – model to which the element is added
xw (float) – x-coordinate of the well
yw (float) – y-coordinate of the well
Qw (float) – total discharge of the well
rw (float) – radius of the well
res (float) – resistance of the well screen
layers (int, array or list) – layer (int) or layers (list or array) where well is screened
label (string or None (default: None)) – label of the well
xc (float) – x-location of control point (default None, which puts it at xw)
yc (float) – y-location of control point (default None, which puts it at yw + rw)
Examples
Create a well in multiple layers:
ml = Model3D(kaq=10, z=np.arange(20, -1, -2), kzoverkh=0.1) Well(ml, 100, 200, 1000, layers=[0, 1, 2, 3])
Methods#
|
Returns array of size (nparam, naq). |
|
Returns array of size (2, nparam, naq). |
The head inside the well. |
|
The discharge in each layer. |
|
|
Compute a capture zone. |
|
Plot a capture zone. |
|
Returns array of size (len(layers),nparam). |
|
Returns array of size len(layers) only used in building equations. |
|
Returns array of size (2, nparam, naq). |
|
Returns two arrays of size (len(layers),nparam). |
|
Returns two arrays of size len(layers) only used in building equations. |