Wolfram Language Paclet Repository
Community-contributed installable additions to the Wolfram Language
Finite-element groundwater seepage analysis and flow nets for 2D and axisymmetric problems
Contributed by: Malcolm Woodruff
TerraPercolatio solves steady-state groundwater seepage by the finite element method and draws true flow nets. It handles confined and unconfined problems in plane (2D) or axisymmetric geometry, with multi-layer, anisotropic soils. For unconfined problems it locates the phreatic surface and seepage faces iteratively, applies rainfall/surface infiltration through an unsaturated zone, and produces pore-pressure fields — including capped suction — ready for limit-equilibrium slope-stability analysis. Equipotentials come from the head field; flow lines come from the exact conjugate (stream-function) problem, so the flow net is correct in heterogeneous, anisotropic ground.
To install this paclet in your Wolfram Language environment,
evaluate this code:
PacletInstall["MalcolmWoodruff/TerraPercolatio"]
To load the code after installation, evaluate this code:
Needs["MalcolmWoodruff`TerraPercolatio`"]
Draw the flow net for an unconfined dam solution:
| In[1]:= | ![]() |
| Out[3]= | ![]() |
Plot the pore-pressure field:
| In[4]:= |
| Out[4]= | ![]() |
A 10 m × 16 m excavation behind sheet-pile walls, dewatered to a floor 3 m below ground, in a 10 m stratum over an impermeable base. One quarter is modelled with symmetry planes at x = 0 and y = 0 (both natural no-flow boundaries). The walls and the excavated void are subtracted from the domain by constructive solid geometry, so wall faces are true no-flow boundaries. The far-field water table is held at ground level. All parameters are named below:
| In[5]:= | ![]() |
| Out[6]= |
Total inflow (4 × the quarter-model flux through the floor) and exit gradients on the floor — note the 3D result that the pit corner is more critical than mid-wall:
| In[7]:= | ![]() |
| Out[8]= |
Section on the symmetry plane y = 0: equipotentials (red), streamlines (blue), water levels (▽) at ground level far away and at floor level in the pit:
| In[9]:= | ![]() |
| Out[10]= | ![]() |
Plan view of the piezometric drawdown at mid-depth below the floor — rectangular near the pit, becoming circular with distance:
| In[11]:= | ![]() |
| Out[12]= | ![]() |
Wolfram Language Version 13