anaflow.flow.heterogeneous¶
Anaflow subpackage providing flow solutions in heterogeneous aquifers.
The following functions are provided
ext_thiem_2d (rad, r_ref, trans_gmean, var, …) |
The extended Thiem solution in 2D. |
ext_thiem_3d (rad, r_ref, cond_gmean, var, …) |
The extended Thiem solution in 3D. |
ext_thiem_tpl (rad, r_ref, cond_gmean, …[, …]) |
The extended Thiem solution for truncated power-law fields. |
ext_thiem_tpl_3d (rad, r_ref, cond_gmean, …) |
The extended Theis solution for truncated power-law fields in 3D. |
ext_theis_2d (time, rad, storage, …[, …]) |
The extended Theis solution in 2D. |
ext_theis_3d (time, rad, storage, cond_gmean, …) |
The extended Theis solution in 3D. |
ext_theis_tpl (time, rad, storage, …[, …]) |
The extended Theis solution for truncated power-law fields. |
ext_theis_tpl_3d (time, rad, storage, …[, …]) |
The extended Theis solution for truncated power-law fields in 3D. |
neuman2004 (time, rad, storage, trans_gmean, …) |
The transient solution for the apparent transmissivity from [Neuman2004]. |
neuman2004_steady (rad, r_ref, trans_gmean, …) |
The steady solution for the apparent transmissivity from [Neuman2004]. |
-
ext_thiem_2d
(rad, r_ref, trans_gmean, var, len_scale, rate=-0.0001, h_ref=0.0, T_well=None, prop=1.6)[source]¶ The extended Thiem solution in 2D.
The extended Thiem solution for steady-state flow under a pumping condition in a confined aquifer. The type curve is describing the effective drawdown in a 2D statistical framework, where the transmissivity distribution is following a log-normal distribution with a gaussian correlation function.
Parameters: - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - r_ref (
float
) – Radius of the reference head. - trans_gmean (
float
) – Geometric-mean transmissivity. - var (
float
) – Variance of log-transmissivity. - len_scale (
float
) – Correlation-length of log-transmissivity. - rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - h_ref (
float
, optional) – Reference head at the reference-radius r_ref. Default:0.0
- T_well (
float
, optional) – Explicit transmissivity value at the well. Default:None
- prop (
float
, optional) – Proportionality factor used within the upscaling procedure. Default:1.6
Returns: head – Array with all heads at the given radii.
Return type: References
[Zech2013] Zech, A. ‘’Impact of Aqifer Heterogeneity on Subsurface Flow and Salt Transport at Different Scales: from a method determine parameters of heterogeneous permeability at local scale to a large-scale model for the sedimentary basin of Thuringia.’’ PhD thesis, Friedrich-Schiller-Universität Jena, 2013 Notes
If you want to use cartesian coordiantes, just use the formula
r = sqrt(x**2 + y**2)
Examples
>>> ext_thiem_2d([1,2,3], 10, 0.001, 1, 10, -0.001) array([-0.53084596, -0.35363029, -0.25419375])
- rad (
-
ext_thiem_3d
(rad, r_ref, cond_gmean, var, len_scale, anis=1.0, lat_ext=1.0, rate=-0.0001, h_ref=0.0, K_well='KH', prop=1.6)[source]¶ The extended Thiem solution in 3D.
The extended Thiem solution for steady-state flow under a pumping condition in a confined aquifer. The type curve is describing the effective drawdown in a 3D statistical framework, where the conductivity distribution is following a log-normal distribution with a gaussian correlation function and taking vertical anisotropy into account.
Parameters: - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - r_ref (
float
) – Reference radius with known head (see h_ref) - cond_gmean (
float
) – Geometric-mean conductivity. - var (
float
) – Variance of the log-conductivity. - len_scale (
float
) – Corralation-length of log-conductivity. - anis (
float
, optional) – Anisotropy-ratio of the vertical and horizontal corralation-lengths. Default: 1.0 - lat_ext (
float
, optional) – Lateral extend of the aquifer (thickness). Default:1.0
- rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - h_ref (
float
, optional) – Reference head at the reference-radius r_ref. Default:0.0
- K_well (string/float, optional) – Explicit conductivity value at the well. One can choose between the
harmonic mean (
"KH"
), the arithmetic mean ("KA"
) or an arbitrary float value. Default:"KH"
- prop (
float
, optional) – Proportionality factor used within the upscaling procedure. Default:1.6
Returns: head – Array with all heads at the given radii.
Return type: References
[Zech2013] Zech, A. ‘’Impact of Aqifer Heterogeneity on Subsurface Flow and Salt Transport at Different Scales: from a method determine parameters of heterogeneous permeability at local scale to a large-scale model for the sedimentary basin of Thuringia.’’ PhD thesis, Friedrich-Schiller-Universität Jena, 2013 Notes
If you want to use cartesian coordiantes, just use the formula
r = sqrt(x**2 + y**2)
Examples
>>> ext_thiem_3d([1,2,3], 10, 0.001, 1, 10, 1, 1, -0.001) array([-0.48828026, -0.31472059, -0.22043022])
- rad (
-
ext_thiem_tpl
(rad, r_ref, cond_gmean, len_scale, hurst, var=None, c=1.0, dim=2.0, lat_ext=1.0, rate=-0.0001, h_ref=0.0, K_well='KH', prop=1.6)[source]¶ The extended Thiem solution for truncated power-law fields.
The extended Theis solution for steady flow under a pumping condition in a confined aquifer. The type curve is describing the effective drawdown in a d-dimensional statistical framework, where the conductivity distribution is following a log-normal distribution with a truncated power-law correlation function build on superposition of gaussian modes.
Parameters: - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - r_ref (
float
) – Reference radius with known head (see h_ref) - cond_gmean (
float
) – Geometric-mean conductivity. You can also treat this as transmissivity by leaving ‘lat_ext=1’. - len_scale (
float
) – Corralation-length of log-conductivity. - hurst (
float
) – Hurst coefficient of the TPL model. Should be in (0, 1). - var (
float
) – Variance of the log-conductivity. If var is given, c will be calculated accordingly. Default:None
- c (
float
, optional) – Intensity of variation in the TPL model. Is overwritten if var is given. Default:1.0
- dim (
float
, optional) – Dimension of space. Default:2.0
- lat_ext (
float
, optional) –Lateral extend of the aquifer:
- sqare-root of cross-section in 1D
- thickness in 2D
- meaningless in 3D
Default:
1.0
- rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - h_ref (
float
, optional) – Reference head at the reference-radius r_ref. Default:0.0
- K_well (
float
, optional) – Explicit conductivity value at the well. One can choose between the harmonic mean ("KH"
), the arithmetic mean ("KA"
) or an arbitrary float value. Default:"KH"
- prop (
float
, optional) – Proportionality factor used within the upscaling procedure. Default:1.6
Returns: head – Array with all heads at the given radii and time-points.
Return type: Notes
If you want to use cartesian coordiantes, just use the formula
r = sqrt(x**2 + y**2)
- rad (
-
ext_thiem_tpl_3d
(rad, r_ref, cond_gmean, len_scale, hurst, var=None, c=1.0, anis=1, lat_ext=1.0, rate=-0.0001, h_ref=0.0, K_well='KH', prop=1.6)[source]¶ The extended Theis solution for truncated power-law fields in 3D.
The extended Theis solution for transient flow under a pumping condition in a confined aquifer with anisotropy in 3D. The type curve is describing the effective drawdown in a 3-dimensional statistical framework, where the conductivity distribution is following a log-normal distribution with a truncated power-law correlation function build on superposition of gaussian modes.
Parameters: - time (
numpy.ndarray
) – Array with all time-points where the function should be evaluated - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - storage (
float
) – Storage of the aquifer. - cond_gmean (
float
) – Geometric-mean conductivity. - len_scale (
float
) – Corralation-length of log-conductivity. - hurst (
float
) – Hurst coefficient of the TPL model. Should be in (0, 1). - var (
float
) – Variance of the log-conductivity. If var is given, c will be calculated accordingly. Default:None
- c (
float
, optional) – Intensity of variation in the TPL model. Is overwritten if var is given. Default:1.0
- anis (
float
, optional) – Anisotropy-ratio of the vertical and horizontal corralation-lengths. Default: 1.0 - lat_ext (
float
, optional) – Lateral extend of the aquifer (thickness). Default:1.0
- rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - r_well (
float
, optional) – Radius of the pumping-well. Default:0.0
- r_bound (
float
, optional) – Radius of the outer boundary of the aquifer. Default:np.inf
- h_bound (
float
, optional) – Reference head at the outer boundary as well as initial condition. Default:0.0
- K_well (
float
, optional) – Explicit conductivity value at the well. One can choose between the harmonic mean ("KH"
), the arithmetic mean ("KA"
) or an arbitrary float value. Default:"KH"
- prop (
float
, optional) – Proportionality factor used within the upscaling procedure. Default:1.6
- far_err (
float
, optional) – Relative error for the farfield transmissivity for calculating the cutoff-point of the solution. Default:0.01
- struc_grid (
bool
, optional) – If this is set toFalse
, the rad and time array will be merged and interpreted as single, r-t points. In this case they need to have the same shapes. Otherwise a structured r-t grid is created. Default:True
- parts (
int
, optional) – Since the solution is calculated by setting the transmissivity to local constant values, one needs to specify the number of partitions of the transmissivity. Default:30
- lap_kwargs (
dict
orNone
optional) – Dictionary forget_lap_inv
containing method and method_dict. The default is equivalent tolap_kwargs = {"method": "stehfest", "method_dict": None}
. Default:None
Returns: head – Array with all heads at the given radii and time-points.
Return type: Notes
If you want to use cartesian coordiantes, just use the formula
r = sqrt(x**2 + y**2)
- time (
-
ext_theis_2d
(time, rad, storage, trans_gmean, var, len_scale, rate=-0.0001, r_well=0.0, r_bound=inf, h_bound=0.0, T_well=None, prop=1.6, struc_grid=True, far_err=0.01, parts=30, lap_kwargs=None)[source]¶ The extended Theis solution in 2D.
The extended Theis solution for transient flow under a pumping condition in a confined aquifer. The type curve is describing the effective drawdown in a 2D statistical framework, where the transmissivity distribution is following a log-normal distribution with a gaussian correlation function.
Parameters: - time (
numpy.ndarray
) – Array with all time-points where the function should be evaluated - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - storage (
float
) – Storage of the aquifer. - trans_gmean (
float
) – Geometric-mean transmissivity. - var (
float
) – Variance of log-transmissivity. - len_scale (
float
) – Correlation-length of log-transmissivity. - rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - r_well (
float
, optional) – Radius of the pumping-well. Default:0.0
- r_bound (
float
, optional) – Radius of the outer boundary of the aquifer. Default:np.inf
- h_bound (
float
, optional) – Reference head at the outer boundary as well as initial condition. Default:0.0
- T_well (
float
, optional) – Explicit transmissivity value at the well. Harmonic mean by default. - prop (
float
, optional) – Proportionality factor used within the upscaling procedure. Default:1.6
- far_err (
float
, optional) – Relative error for the farfield transmissivity for calculating the cutoff-point of the solution. Default:0.01
- struc_grid (
bool
, optional) – If this is set toFalse
, the rad and time array will be merged and interpreted as single, r-t points. In this case they need to have the same shapes. Otherwise a structured r-t grid is created. Default:True
- parts (
int
, optional) – Since the solution is calculated by setting the transmissivity to local constant values, one needs to specify the number of partitions of the transmissivity. Default:30
- lap_kwargs (
dict
orNone
optional) – Dictionary forget_lap_inv
containing method and method_dict. The default is equivalent tolap_kwargs = {"method": "stehfest", "method_dict": None}
. Default:None
Returns: head – Array with all heads at the given radii and time-points.
Return type: Notes
If you want to use cartesian coordiantes, just use the formula
r = sqrt(x**2 + y**2)
Examples
>>> ext_theis_2d([10,100], [1,2,3], 0.001, 0.001, 1, 10, -0.001) array([[-0.33737576, -0.17400123, -0.09489812], [-0.58443489, -0.40847176, -0.31095166]])
- time (
-
ext_theis_3d
(time, rad, storage, cond_gmean, var, len_scale, anis=1.0, lat_ext=1.0, rate=-0.0001, r_well=0.0, r_bound=inf, h_bound=0.0, K_well='KH', prop=1.6, far_err=0.01, struc_grid=True, parts=30, lap_kwargs=None)[source]¶ The extended Theis solution in 3D.
The extended Theis solution for transient flow under a pumping condition in a confined aquifer. The type curve is describing the effective drawdown in a 3D statistical framework, where the transmissivity distribution is following a log-normal distribution with a gaussian correlation function and taking vertical anisotropy into account.
Parameters: - time (
numpy.ndarray
) – Array with all time-points where the function should be evaluated - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - storage (
float
) – Storage of the aquifer. - cond_gmean (
float
) – Geometric-mean conductivity. - var (
float
) – Variance of the log-conductivity. - len_scale (
float
) – Corralation-length of log-conductivity. - anis (
float
, optional) – Anisotropy-ratio of the vertical and horizontal corralation-lengths. Default: 1.0 - lat_ext (
float
, optional) – Lateral extend of the aquifer (thickness). Default:1.0
- rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - r_well (
float
, optional) – Radius of the pumping-well. Default:0.0
- r_bound (
float
, optional) – Radius of the outer boundary of the aquifer. Default:np.inf
- h_bound (
float
, optional) – Reference head at the outer boundary as well as initial condition. Default:0.0
- K_well (
float
, optional) – Explicit conductivity value at the well. One can choose between the harmonic mean ("KH"
), the arithmetic mean ("KA"
) or an arbitrary float value. Default:"KH"
- prop (
float
, optional) – Proportionality factor used within the upscaling procedure. Default:1.6
- far_err (
float
, optional) – Relative error for the farfield transmissivity for calculating the cutoff-point of the solution. Default:0.01
- struc_grid (
bool
, optional) – If this is set toFalse
, the rad and time array will be merged and interpreted as single, r-t points. In this case they need to have the same shapes. Otherwise a structured r-t grid is created. Default:True
- parts (
int
, optional) – Since the solution is calculated by setting the transmissivity to local constant values, one needs to specify the number of partitions of the transmissivity. Default:30
- lap_kwargs (
dict
orNone
optional) – Dictionary forget_lap_inv
containing method and method_dict. The default is equivalent tolap_kwargs = {"method": "stehfest", "method_dict": None}
. Default:None
Returns: head – Array with all heads at the given radii and time-points.
Return type: Notes
If you want to use cartesian coordiantes, just use the formula
r = sqrt(x**2 + y**2)
Examples
>>> ext_theis_3d([10,100], [1,2,3], 0.001, 0.001, 1, 10, 1, 1, -0.001) array([[-0.32756786, -0.16717569, -0.09141211], [-0.5416396 , -0.36982684, -0.27798614]])
- time (
-
ext_theis_tpl
(time, rad, storage, cond_gmean, len_scale, hurst, var=None, c=1.0, dim=2.0, lat_ext=1.0, rate=-0.0001, r_well=0.0, r_bound=inf, h_bound=0.0, K_well='KH', prop=1.6, far_err=0.01, struc_grid=True, parts=30, lap_kwargs=None)[source]¶ The extended Theis solution for truncated power-law fields.
The extended Theis solution for transient flow under a pumping condition in a confined aquifer. The type curve is describing the effective drawdown in a d-dimensional statistical framework, where the conductivity distribution is following a log-normal distribution with a truncated power-law correlation function build on superposition of gaussian modes.
Parameters: - time (
numpy.ndarray
) – Array with all time-points where the function should be evaluated - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - storage (
float
) – Storage of the aquifer. - cond_gmean (
float
) – Geometric-mean conductivity. You can also treat this as transmissivity by leaving ‘lat_ext=1’. - len_scale (
float
) – Corralation-length of log-conductivity. - hurst (
float
) – Hurst coefficient of the TPL model. Should be in (0, 1). - var (
float
) – Variance of the log-conductivity. If var is given, c will be calculated accordingly. Default:None
- c (
float
, optional) – Intensity of variation in the TPL model. Is overwritten if var is given. Default:1.0
- dim (
float
, optional) – Dimension of space. Default:2.0
- lat_ext (
float
, optional) –Lateral extend of the aquifer:
- sqare-root of cross-section in 1D
- thickness in 2D
- meaningless in 3D
Default:
1.0
- rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - r_well (
float
, optional) – Radius of the pumping-well. Default:0.0
- r_bound (
float
, optional) – Radius of the outer boundary of the aquifer. Default:np.inf
- h_bound (
float
, optional) – Reference head at the outer boundary as well as initial condition. Default:0.0
- K_well (
float
, optional) – Explicit conductivity value at the well. One can choose between the harmonic mean ("KH"
), the arithmetic mean ("KA"
) or an arbitrary float value. Default:"KH"
- prop (
float
, optional) – Proportionality factor used within the upscaling procedure. Default:1.6
- far_err (
float
, optional) – Relative error for the farfield transmissivity for calculating the cutoff-point of the solution. Default:0.01
- struc_grid (
bool
, optional) – If this is set toFalse
, the rad and time array will be merged and interpreted as single, r-t points. In this case they need to have the same shapes. Otherwise a structured r-t grid is created. Default:True
- parts (
int
, optional) – Since the solution is calculated by setting the transmissivity to local constant values, one needs to specify the number of partitions of the transmissivity. Default:30
- lap_kwargs (
dict
orNone
optional) – Dictionary forget_lap_inv
containing method and method_dict. The default is equivalent tolap_kwargs = {"method": "stehfest", "method_dict": None}
. Default:None
Returns: head – Array with all heads at the given radii and time-points.
Return type: Notes
If you want to use cartesian coordiantes, just use the formula
r = sqrt(x**2 + y**2)
- time (
-
ext_theis_tpl_3d
(time, rad, storage, cond_gmean, len_scale, hurst, var=None, c=1.0, anis=1, lat_ext=1.0, rate=-0.0001, r_well=0.0, r_bound=inf, h_bound=0.0, K_well='KH', prop=1.6, far_err=0.01, struc_grid=True, parts=30, lap_kwargs=None)[source]¶ The extended Theis solution for truncated power-law fields in 3D.
The extended Theis solution for transient flow under a pumping condition in a confined aquifer with anisotropy in 3D. The type curve is describing the effective drawdown in a 3-dimensional statistical framework, where the conductivity distribution is following a log-normal distribution with a truncated power-law correlation function build on superposition of gaussian modes.
Parameters: - time (
numpy.ndarray
) – Array with all time-points where the function should be evaluated - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - storage (
float
) – Storage of the aquifer. - cond_gmean (
float
) – Geometric-mean conductivity. - len_scale (
float
) – Corralation-length of log-conductivity. - hurst (
float
) – Hurst coefficient of the TPL model. Should be in (0, 1). - var (
float
) – Variance of the log-conductivity. If var is given, c will be calculated accordingly. Default:None
- c (
float
, optional) – Intensity of variation in the TPL model. Is overwritten if var is given. Default:1.0
- anis (
float
, optional) – Anisotropy-ratio of the vertical and horizontal corralation-lengths. Default: 1.0 - lat_ext (
float
, optional) – Lateral extend of the aquifer (thickness). Default:1.0
- rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - r_well (
float
, optional) – Radius of the pumping-well. Default:0.0
- r_bound (
float
, optional) – Radius of the outer boundary of the aquifer. Default:np.inf
- h_bound (
float
, optional) – Reference head at the outer boundary as well as initial condition. Default:0.0
- K_well (
float
, optional) – Explicit conductivity value at the well. One can choose between the harmonic mean ("KH"
), the arithmetic mean ("KA"
) or an arbitrary float value. Default:"KH"
- prop (
float
, optional) – Proportionality factor used within the upscaling procedure. Default:1.6
- far_err (
float
, optional) – Relative error for the farfield transmissivity for calculating the cutoff-point of the solution. Default:0.01
- struc_grid (
bool
, optional) – If this is set toFalse
, the rad and time array will be merged and interpreted as single, r-t points. In this case they need to have the same shapes. Otherwise a structured r-t grid is created. Default:True
- parts (
int
, optional) – Since the solution is calculated by setting the transmissivity to local constant values, one needs to specify the number of partitions of the transmissivity. Default:30
- lap_kwargs (
dict
orNone
optional) – Dictionary forget_lap_inv
containing method and method_dict. The default is equivalent tolap_kwargs = {"method": "stehfest", "method_dict": None}
. Default:None
Returns: head – Array with all heads at the given radii and time-points.
Return type: Notes
If you want to use cartesian coordiantes, just use the formula
r = sqrt(x**2 + y**2)
- time (
-
neuman2004
(time, rad, storage, trans_gmean, var, len_scale, rate=-0.0001, r_well=0.0, r_bound=inf, h_bound=0.0, struc_grid=True, parts=30, lap_kwargs=None)[source]¶ The transient solution for the apparent transmissivity from [Neuman2004].
This solution is build on the apparent transmissivity from Neuman 2004, which represents a mean drawdown in an ensemble of pumping tests in heterogeneous transmissivity fields following an exponential covariance.
Parameters: - time (
numpy.ndarray
) – Array with all time-points where the function should be evaluated. - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated. - storage (
float
) – Storage of the aquifer. - trans_gmean (
float
) – Geometric-mean transmissivity. - var (
float
) – Variance of log-transmissivity. - len_scale (
float
) – Correlation-length of log-transmissivity. - rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - r_well (
float
, optional) – Radius of the pumping-well. Default:0.0
- r_bound (
float
, optional) – Radius of the outer boundary of the aquifer. Default:np.inf
- h_bound (
float
, optional) – Reference head at the outer boundary as well as initial condition. Default:0.0
- struc_grid (
bool
, optional) – If this is set toFalse
, the rad and time array will be merged and interpreted as single, r-t points. In this case they need to have the same shapes. Otherwise a structured r-t grid is created. Default:True
- parts (
int
, optional) – Since the solution is calculated by setting the transmissivity to local constant values, one needs to specify the number of partitions of the transmissivity. Default:30
- lap_kwargs (
dict
orNone
optional) – Dictionary forget_lap_inv
containing method and method_dict. The default is equivalent tolap_kwargs = {"method": "stehfest", "method_dict": None}
. Default:None
Returns: head – Array with all heads at the given radii and time-points.
Return type: References
[Neuman2004] Neuman, Shlomo P., Alberto Guadagnini, and Monica Riva. ‘’Type-curve estimation of statistical heterogeneity.’’ Water resources research 40.4, 2004 - time (
-
neuman2004_steady
(rad, r_ref, trans_gmean, var, len_scale, rate=-0.0001, h_ref=0.0)[source]¶ The steady solution for the apparent transmissivity from [Neuman2004].
This solution is build on the apparent transmissivity from Neuman 1994, which represents a mean drawdown in an ensemble of pumping tests in heterogeneous transmissivity fields following an exponential covariance.
Parameters: - rad (
numpy.ndarray
) – Array with all radii where the function should be evaluated - r_ref (
float
) – Radius of the reference head. - trans_gmean (
float
) – Geometric-mean transmissivity. - var (
float
) – Variance of log-transmissivity. - len_scale (
float
) – Correlation-length of log-transmissivity. - rate (
float
, optional) – Pumpingrate at the well. Default: -1e-4 - h_ref (
float
, optional) – Reference head at the reference-radius r_ref. Default:0.0
Returns: head – Array with all heads at the given radii.
Return type: References
[Neuman2004] Neuman, Shlomo P., Alberto Guadagnini, and Monica Riva. ‘’Type-curve estimation of statistical heterogeneity.’’ Water resources research 40.4, 2004 - rad (