Steady state 1D aquifer flow

class pygaf.solutions.steady_flow.Steady1dConfFlow

Bases: object

Steady state flow in a 1D confined aquifer.

The Steady1dConfFlow class uses the default Aq1dFiniteConf aquifer object, default SteadyBC type 2 boundary condition object at x=0 and default SteadyBC type 1 boundary condition object at x=L.

aq

Aquifer object.

Type:

obj

bc0

SteadyBC object at x=0 (default type=2).

Type:

obj

bcL

SteadyBC object at x=L (default type=1).

Type:

obj

R

Groundwater recharge rate (units L/T, default 0.0)

Type:

float

class Aq1dFiniteConf(K=1, Ss=0.0001, B=10, L=1000, bot=0, name='Aq1dFiniteConf class')

Bases: Aquifer

1D, finite confined aquifer subclass.

A subclass of the Aquifer class defining a horizontal, 1D confined aquifer with finite lateral extent and confined storage.

The default Aq1dFiniteConf object has hydraulic conductivity K=1, specific storativity Ss=0.0001, aquifer saturated thickness B=10, aquifer length L=1000 and aquifer bottom (datum) elevation bot=0. Exceptions will occur if invalid values are provided for K, Ss, B or L.

The .info and .draw methods display the aquifer information and diagram.

Ss

Aquifer specific storativity (units 1/L, default 1.0e-4).

Type:

float

L

Aquifer length (units L, default 1000.0).

Type:

float

property B

Aquifer thickness (units L, default 10.0).

Setter method checks for valid values and triggers an exception if invalid values are specified.

Type:

float

property D

Aquifer diffusivity (units L2/T, default 1.0e+4).

Type:

float

property K

Aquifer hydraulic conductivity (units L/T, default 1.0).

Setter method checks for valid values and triggers an exception if invalid values are specified.

Type:

float

property L

Aquifer length (units L, default 1000.0).

Setter method checks for valid values and triggers an exception if invalid values are specified.

Type:

float

property S

Aquifer storage coefficient (units 1, default 1.0e-3).

Type:

float

property Ss

Aquifer specific storativity (units 1/L, default 1.0e-4).

Setter method checks for valid values and triggers an exception if invalid values are specified.

Type:

float

draw(dw=6)

Display a drawing of the aquifer.

Parameters:

dw (float) – Width of figure (default 6.0).

info()

Print the aquifer information.

is_1d = True
is_2d = False
is_confined = True
is_finite = True
is_heterogeneous = False
is_homogeneous = True
is_infinite = False
is_leaky = False
is_radial = False
is_semifinite = False
is_unconfined = False
class SteadyBC(type=2, head=10.0, flow=0.0, cond=0.0)

Bases: object

Boundary condition for steady state groundwater flow.

The boundary condition can be type 1, 2 or 3 (see the ‘type’ attribute). An exception occurs if any other value is specified for type. The default SteadyBC object is a type 2 boundary condition with flow=0.0, which is equivalent to a no-flow boundary. The default type 1 Boundary has head=10.0 (same as the default head of all Aquifer classes). The default type 3 boundary condition has head=10.0 and cond=0.0, which is equivalent to a no-flow condition.

Note a utilities function is available to calculate conductance values

type

Boundary condition type; choices are type=1 (Dirichlet, first-type or constant head), type=2 (Neumann, second-type or constant flow) or type=3 (Cauchy or general head).

Type:

int

head

Value of head at the boundary for type 1 and value of

Type:

float

external head for type 2
Type:

units L, default 10.0

flow

value of normal flow at boundary for type 2 (units L/T, default 0.0).

Type:

float

cond

Value of conductance for type 3 (units L2/T, default 0.0).

Type:

float

info()

Print the solution information.

property type

Boundary condition type.

Setter method checks for valid values and triggers an exception if invalid values are specified.

Type:

int

property value

Boundary condition value(s).

Type:

dic

bc_t1_t1(H0, HL, L, T, R, x)

Aquifer solution for type 1 bc at x=0 and type 1 bc at x=L.

bc_t1_t2(H, Q, L, T, R, x)

Aquifer solution for type 1 bc at x=0 and type 2 bc at x=L.

bc_t2_t1(H, Q, L, T, R, x)

Aquifer solution for type 2 bc at x=0 and type 1 bc at x=L.

h(n=25, plot=True, csv='', xlsx='')

Evaluate aquifer head.

Parameters:
  • n (int) – Number of evenly-spaced x values at which to evaluate aquifer head.

  • plot (bool) – Display a plot of the results (default True).

  • csv (str) – Filepath for export of results to csv file; results are exported if the string is not empty (default ‘’).

  • xlsx (str) – Filepath for export of result to xlsx file; results are exported if the string is not empty (default ‘’).

Returns:

Pandas dataframe containing head values.

h_grad(n=25, plot=True, csv='', xlsx='')

Evaluate aquifer head gradient.

Parameters:
  • n (int) – Number of evenly-spaced x values at which to evaluate aquifer flow.

  • plot (bool) – Display a plot of the results (default True).

  • csv (str) – Filepath for export of results to csv file; results are exported if the string is not empty (default ‘’).

  • xlsx (str) – Filepath for export of result to xlsx file; results are exported if the string is not empty (default ‘’).

Returns:

Pandas dataframe containing head values.

info()

Print the solution information.

q(n=25, plot=True, csv='', xlsx='')

Evaluate aquifer flow.

Parameters:
  • n (int) – Number of evenly-spaced x values at which to evaluate aquifer flow.

  • plot (bool) – Display a plot of the results (default True).

  • csv (str) – Filepath for export of results to csv file; results are exported if the string is not empty (default ‘’).

  • xlsx (str) – Filepath for export of result to xlsx file; results are exported if the string is not empty (default ‘’).

Returns:

Pandas dataframe containing head values.

property types

Boundary condition types.

Type:

int