Well near impermeable wall#

import matplotlib.pyplot as plt
import numpy as np

import timflow.transient as tft

plt.rcParams["font.size"] = 8.0
plt.rcParams["figure.figsize"] = (8, 3)
ml = tft.ModelMaq(kaq=10, z=[10, 0], Saq=1e-4, tmin=0.01, tmax=10)
w = tft.Well(ml, 0, 20, rw=0.3, tsandQ=[(0, 100)], layers=0)
ml.solve()
self.neq  1
solution complete
t = np.logspace(-2, 1, 100)
h = w.headinside(t)
plt.plot(t, h[0])
plt.grid()
../../_images/678434ae04a470dbfe0f8f7ef97b2803202d8d68805df29fd0d5b7a9c4671471.png
ml.plots.contour(win=[-30, 50, -10, 30], ngr=40, t=1, decimals=2);
../../_images/57002647d06c33ba471b73a41e6917514e9d4e0fba4f7f04106c49c4115f222b.png
ml2 = tft.ModelMaq(kaq=10, z=[10, 0], Saq=1e-4, tmin=0.01, tmax=10)
w2 = tft.Well(ml2, 0, 20, rw=0.3, tsandQ=[(0, 100)])
wall = tft.LeakyWallString(
    ml2, xy=[(-20, 0), (20, 0), (40, 20)], res="imp", order=5, layers=0
)
ml2.solve()
self.neq  13
solution complete
h2 = w2.headinside(t)
plt.plot(t, h[0], label="no wall")
plt.plot(t, h2[0], label="wall")
plt.legend()
plt.grid()
../../_images/30c1be9c921b995643b9096fac98240fc0259524c9b410709e27e2201599b103.png
ml2.plots.contour(win=[-30, 50, -10, 30], ngr=40, t=1, decimals=2, parallel=True);
../../_images/4fb1388a96e66eac3a07e25b1b267d1dd71e90761156cb2213cc409c056777a6.png