Test well elements#

import numpy as np

import timflow.steady as tfs

Well with specified \(Q\) screened in multiple layers#

ml = tfs.ModelMaq(
    kaq=[10, 20, 5],
    z=[21, 20, 12, 10, 2, 0, -10],
    c=[100, 100, 200],
    hstar=10,
    topboundary="semi",
)
w = tfs.Well(model=ml, xw=20, yw=40, rw=0.3, Qw=100, layers=[0, 1])
ml.solve()
hinside = w.headinside()
assert np.allclose(hinside[1:], hinside[0])
print("head inside: ", hinside)
print("discharge: ", w.discharge())
Number of elements, Number of equations: 2 , 2
.
.

solution complete
head inside:  [9.57680792 9.57680792]
discharge:  [35.22668368 64.77331632  0.        ]

Well with specified \(Q\) screened in multiple layers with entry resistance#

ml = tfs.ModelMaq(
    kaq=[10, 20, 5],
    z=[21, 20, 12, 10, 2, 0, -10],
    c=[100, 100, 200],
    hstar=10,
    topboundary="semi",
)
w = tfs.Well(model=ml, xw=20, yw=40, rw=0.3, Qw=100, res=0.1, layers=[0, 1])
ml.solve()
hinside = w.headinside()
assert np.allclose(hinside[1:], hinside[0])
print("head inside: ", hinside)
print("discharge: ", w.discharge())
Number of elements, Number of equations: 2 , 2
.
.

solution complete
head inside:  [9.2292987 9.2292987]
discharge:  [41.8665623 58.1334377  0.       ]

Well with specified head screened in multiple layers with entry resistance#

ml = tfs.ModelMaq(
    kaq=[10, 20, 5],
    z=[21, 20, 12, 10, 5, 0, -10],
    c=[100, 100, 200],
    hstar=10,
    topboundary="semi",
)
w = tfs.HeadWell(model=ml, xw=20, yw=40, rw=0.3, res=0.1, hw=6, layers=[0, 1])
ml.solve()
hinside = w.headinside()
assert np.allclose(hinside[1:], hinside[0])
print("head inside: ", hinside)
print("discharge: ", w.discharge())
Number of elements, Number of equations: 2 , 2
.
.

solution complete
head inside:  [6. 6.]
discharge:  [218.35372483 191.00043004   0.        ]