Xsection#
- class timflow.steady.inhomogeneity1d.Xsection(model, x1, x2, kaq, c, z, npor, ltype, model3d, hstar, N, name=None)#
Bases:
timflow.steady.aquifer.AquiferDataBase class for cross-section inhomogeneities.
- Parameters:
model (Model object) – model to which the element is added, usually an instance of ModelXsection
x1 (float) – left boundary of inhomogeneity (may be -np.inf if extends to infinity)
x2 (float) – right boundary of inhomogeneity (may be np.inf if extends to infinity)
kaq (float, array or list) – hydraulic conductivity of each layer from the top down
c (float, array or list) – resistance of leaky layers from the top down
z (array or list) – elevation tops and bottoms of the layers from the top down, leaky layers may have zero thickness
npor (float, array or list) – porosity of all aquifer layers from the top down
ltype (string, array or list) – type of the layers: ‘a’ for aquifer, ‘l’ for leaky layer
hstar (float, optional) – head value above semi-confining top, only read if topboundary=’semi’
N (float, optional) – infiltration rate, only read if topboundary=’conf’
name (string, optional) – name of the inhomogeneity
- plot(ax=None, labels: bool = False, params: bool = False, names: bool = False, fmt: str | None = None, units: dict | None = None, layer_names: tuple | dict = ('aquifer', 'leaky layer'), ha: str = 'center', **kwargs)#
Plot the cross-section.
- Parameters:
ax (plt.Axes, optional) – Axis to plot the cross-section on. If None, a new axis will be created.
labels (bool, optional) – If True, add layer-name labels.
params (bool, optional) – If True, add parameter labels.
names (bool, optional) – If True, add inhomogeneity names.
fmt (str) – format string for parameters
units (dict, optional) – Dictionary with units for parameters, only used if params is True. Use timflow parameter names as keys e.g. {“kaq”: “m/d”, “c”: “d”}.
layer_names (tuple or dict, optional) – names for aquifers and leaky layers, default is (‘aquifer’, ‘leaky layer’). If a dict is provided, it maps layer type and number to a name, e.g. {‘aquifer 0’: ‘top aquifer’, ‘leaky layer 1’: ‘clay layer’
ha (str, optional) – Horizontal alignment for parameter labels. Defaults to “center”.
- findlayer(z)#
Returns layer-number, layer-type and model-layer-number.
- summary()#
Get summary of aquifer parameters.
- Returns:
Summary of aquifer parameters including layer type, thickness, hydraulic conductivity, and resistance.
- Return type:
pd.DataFrame