ttim.linedoublet#
Classes#
Higher Order LineDoublet Base Class. |
|
Create a segment of a leaky wall, which is simulated with a line-doublet. |
|
Create a string of leaky wall segements consisting of line-doublets. |
Module Contents#
- class ttim.linedoublet.LineDoubletHoBase(model, x1=-1, y1=0, x2=1, y2=0, tsandbc=[(0.0, 0.0)], res='imp', order=0, layers=0, type='', name='LineDoubletHoBase', label=None, addtomodel=True)[source]#
Bases:
ttim.element.ElementHigher Order LineDoublet Base Class.
All Higher Order Line Doublet elements are derived from this class
- order = 0#
- nparam#
- x1#
- y1#
- x2#
- y2#
- initialize()[source]#
Initialize the element.
Initialization of terms that cannot be initialized before other elements or the aquifer is defined.
As we don’t want to require a certain order of entering elements, these terms are initialized when Model.solve is called The initialization class needs to be overloaded by all derived classes
- class ttim.linedoublet.LeakyLineDoublet(model, x1=-1, y1=0, x2=1, y2=0, res='imp', order=0, layers=0, label=None, addtomodel=True)[source]#
Bases:
LineDoubletHoBase,ttim.equation.LeakyWallEquationCreate a segment of a leaky wall, which is simulated with a line-doublet.
The specific discharge through the wall is equal to the head difference across the wall divided by the resistance of the wall.
- Parameters:
model (Model object) – Model to which the element is added
x1 (scalar) – x-coordinate of fist point of line-doublet
y1 (scalar) – y-coordinate of fist point of line-doublet
x2 (scalar) – x-coordinate of second point of line-doublet
y2 (scalar) – y-coordinate of second point of line-doublet
res (scalar or string) – if string: ‘imp’ for an impermeable wall (same as res = np.inf) if scalar: resistance of leaky wall
order (int (default is 0)) – polynomial order of potential jump along line-doublet (head jump if transmissivity is equal on each side of wall)
layers (scalar, list or array) – layer(s) in which element is placed if scalar: element is placed in this layer if list or array: element is placed in all these layers
label (str or None) – label of element
See also
- nunknowns#
- initialize()[source]#
Initialize the element.
Initialization of terms that cannot be initialized before other elements or the aquifer is defined.
As we don’t want to require a certain order of entering elements, these terms are initialized when Model.solve is called The initialization class needs to be overloaded by all derived classes
- class ttim.linedoublet.LeakyLineDoubletString(model, xy=[(-1, 0), (1, 0)], res='imp', order=0, layers=0, label=None)[source]#
Bases:
ttim.element.Element,ttim.equation.LeakyWallEquationCreate a string of leaky wall segements consisting of line-doublets.
- Parameters:
model (Model object) – Model to which the element is added
xy (array or list) – list or array of (x,y) pairs of coordinates of end-points of the segements in the string
res (scalar or string) – if string: ‘imp’ for an impermeable wall (same as res = np.inf) if scalar: resistance of leaky wall
order (int (default is 0)) – polynomial order of potential jump along line-doublet (head jump if transmissivity is equal on each side of wall)
layers (scalar, list or array) – layer(s) in which element is placed if scalar: element is placed in this layer if list or array: element is placed in all these layers
label (str or None) – label of element
See also
- res = 'imp'#
- order = 0#
- ldlist = []#
- nld#
- initialize()[source]#
Initialize the element.
Initialization of terms that cannot be initialized before other elements or the aquifer is defined.
As we don’t want to require a certain order of entering elements, these terms are initialized when Model.solve is called The initialization class needs to be overloaded by all derived classes