timflow.transient.linesink.MscreenLineSink#

class timflow.transient.linesink.MscreenLineSink(model, x1=-1, y1=0, x2=1, y2=0, tsandQ=[(0.0, 1.0)], res=0.0, wh='H', layers=[0, 1], vres=0.0, wv=1.0, label=None, addtomodel=True)#

Bases: LineSinkBase, timflow.transient.equation.MscreenEquation

MscreenLineSink that varies through time.

Must be screened in multiple layers but heads are same in all screened layers

Methods#

initialize()

Initialize the element.

setflowcoef()

Separate function so that this can be overloaded for other types.

potinf(x, y[, aq])

Can be called with only one x,y value.

disvecinf(x, y[, aq])

Can be called with only one x,y value.

headinside(t)

The head inside the line-sink.

plot([ax, layer])

Plot the element.

potential(x, y[, aq])

Returns complex array of size (ngvbc, naq, npval).

unitpotential(x, y[, aq])

Returns complex array of size (naq, npval).

unitpotentialone(x, y, jtime[, aq])

Returns complex array of size (naq, npval).

disvec(x, y[, aq])

Returns 2 complex arrays of size (ngvbc, naq, npval).

unitdisvec(x, y[, aq])

Returns 2 complex arrays of size (naq, npval).

potinflayers(x, y[, layers, aq])

Layers can be scalar, list, or array.

potentiallayers(x, y[, layers, aq])

Returns complex array of size (ngvbc, len(layers),npval).

unitpotentiallayers(x, y[, layers, aq])

Returns complex array of size (len(layers), npval).

disvecinflayers(x, y[, layers, aq])

Layers can be scalar, list, or array.

disveclayers(x, y[, layers, aq])

Returns 2 complex array of size (ngvbc, len(layers), npval).

unitdisveclayers(x, y[, layers, aq])

Returns complex array of size (len(layers), npval).

discharge(t[, derivative])

The discharge in each layer.

dischargeold(t[, derivative])

The discharge in each layer.

run_after_solve()

Function to run after a solution is completed.

equation()

Matrix rows for multi-screen conditions where total discharge is specified.