Line-sink ditch

A string of line-sinks for which the total discharge is specified


In [1]:
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
from ttim import *

In [2]:
ml = ModelMaq(kaq=10, z=[10, 0], Saq=1e-4, tmin=0.01, tmax=10)
x = np.linspace(-100, 100, 21)
y = np.zeros(len(x))
lsd = LineSinkDitchString(ml, xy=list(zip(x, y)), tsandQ=[(0, 100)])
ml.solve()


self.neq  20
solution complete

In [3]:
t = 2
print(f'Discharge at time t={t}:, {lsd.discharge(t)}')


Discharge at time t=2:, [[99.99999972]]

In [5]:
for i, Q in enumerate(lsd.discharge_list(t=t)):
    print(f'Discharge of segment {i}: {Q}')


Discharge of segment 0: [[13.72066952]]
Discharge of segment 1: [[6.04460443]]
Discharge of segment 2: [[4.97677729]]
Discharge of segment 3: [[4.30323129]]
Discharge of segment 4: [[3.90805018]]
Discharge of segment 5: [[3.65055705]]
Discharge of segment 6: [[3.47803788]]
Discharge of segment 7: [[3.36384238]]
Discharge of segment 8: [[3.29380413]]
Discharge of segment 9: [[3.2604252]]
Discharge of segment 10: [[3.26042517]]
Discharge of segment 11: [[3.29380416]]
Discharge of segment 12: [[3.36384242]]
Discharge of segment 13: [[3.478038]]
Discharge of segment 14: [[3.65055708]]
Discharge of segment 15: [[3.90805017]]
Discharge of segment 16: [[4.30323113]]
Discharge of segment 17: [[4.9767767]]
Discharge of segment 18: [[6.04460434]]
Discharge of segment 19: [[13.72067031]]

In [6]:
ml = ModelMaq(kaq=10, z=[10, 0], Saq=1e-4, tmin=0.01, tmax=10)
x = np.linspace(-100, 100, 21)
y = np.zeros(len(x))
lsd = LineSinkDitchString(ml, xy=list(zip(x, y)), tsandQ=[(0, 100)], Astorage=100)
ml.solve()


self.neq  20
solution complete

In [7]:
t = 2
print(f'Discharge at time t={t}:, {lsd.discharge(t)}')


Discharge at time t=2:, [[94.47093728]]

In [11]:
np.sum(lsd.headinside(2, derivative=1) * lsd.Astorage)


Out[11]:
-110.5812863933381

In [ ]: