Wolfram Language Paclet Repository

Community-contributed installable additions to the Wolfram Language

Primary Navigation

    • Cloud & Deployment
    • Core Language & Structure
    • Data Manipulation & Analysis
    • Engineering Data & Computation
    • External Interfaces & Connections
    • Financial Data & Computation
    • Geographic Data & Computation
    • Geometry
    • Graphs & Networks
    • Higher Mathematical Computation
    • Images
    • Knowledge Representation & Natural Language
    • Machine Learning
    • Notebook Documents & Presentation
    • Scientific and Medical Data & Computation
    • Social, Cultural & Linguistic Data
    • Strings & Text
    • Symbolic & Numeric Computation
    • System Operation & Setup
    • Time-Related Computation
    • User Interface Construction
    • Visualization & Graphics
    • Random Paclet
    • Alphabetical List
  • Using Paclets
    • Get Started
    • Download Definition Notebook
  • Learn More about Wolfram Language

TerraPercolatio

Guides

  • TerraPercolatio

Tech Notes

  • Solving Seepage Problems with TerraPercolatio

Symbols

  • BoundaryFlux
  • ExitGradient
  • FlowNet
  • PorePressureField
  • SeepagePlot
  • SeepageSolve
  • SeepageUnconfined
  • SeepageWell
  • TerraPercolatioClear
  • TerraPercolatio
MalcolmWoodruff`TerraPercolatio`
SeepageUnconfined
​
SeepageUnconfined
[spec,opts]
solves an unconfined seepage problem (earth dam, slope) with an iteratively located phreatic surface.
​
Details and Options
▪
spec is an
Association
: "Profile" -> counterclockwise polygon of the dam or slope cross-section; "UpstreamLevel" -> Hu and "DownstreamLevel" -> Hd (flow runs left to right); "Layers" -> {<|"Polygon"->..,"kx"->..,"ky"->..|>,...} for multiple materials, else give homogeneous "kx", "ky".
▪
The base (the minimum-y edge) is impermeable. For non-trivial profiles give "UpstreamFace" and "DownstreamFace" explicitly, as polylines ordered from the base upward; the free surface and the faces are assumed single-valued (x-monotone and y-monotone).
▪
Rainfall or surface infiltration is applied as a flux on the phreatic surface with "Rainfall" -> r (mm/day) or "Recharge" -> q (m/s, added to "Rainfall"); it raises the water table and pore pressures, or drains laterally to a boundary for drain-spacing design. The water table is capped at the ground surface, with the excess shed as runoff; "WaterTableDaylights" in the result reports whether that happened.
▪
The following options can be given:
"Name"
Automatic
Store the result under
TerraPercolatio
["name"] as well as returning it.
"MeshSize"
Automatic
Maximum finite-element area used at each phreatic-surface iteration; Automatic scales with the saturated-region area.
"Points"
25
Number of stations used to represent the phreatic surface.
"Relaxation"
0.65
Under-relaxation factor applied to the phreatic-surface update at each iteration.
"MaxIterations"
100
Maximum number of phreatic-surface iterations before giving up.
"Tolerance"
Automatic
Mean phreatic-surface movement below which the iteration is taken as converged; Automatic scales with the head difference.
"Monitor"
False
True prints the iteration history (mean movement and exit-point elevation) as the free surface converges.
"Rainfall"
0.
Steady surface infiltration in millimetres per day, applied as a flux across the phreatic surface.
"Recharge"
0.
The same infiltration flux as "Rainfall", given directly in m/s and added to it.
"UpstreamNoFlow"
False
True makes the upstream face a mid-spacing no-flow divide for parallel-drain design; "UpstreamLevel" is then only the initial guess for the water-table apex.
▪
Returns the same keys as
SeepageSolve
, plus "PhreaticSurface" (list of points), "ExitPoint", "SaturatedRegion", "GroundSurface", "UnsaturatedZone", "UnsaturatedThickness" ({min,max} gap to the ground), "WaterTableDaylights", "Rainfall_mmday", "Converged" and "Iterations".
​
Examples  
(11)
Basic Examples  
(1)
Solve for unconfined seepage through a homogeneous earth dam:
In[1]:=
damSpec=Association["Profile"{{0.`,0.`},{52.`,0.`},{28.`,12.`},{24.`,12.`}},"UpstreamLevel"10.`,"DownstreamLevel"0.`,"kx"1.`*^-6,"ky"1.`*^-6];damSol=
SeepageUnconfined
[damSpec,"Points"16];{damSol["Q"],damSol["ExitPoint"],damSol["Converged"]}
Out[1]=
{1.57542×
-6
10
,{43.1792,4.41041},True}
Draw the flow net, including the phreatic surface:
In[2]:=
FlowNet
[damSol,"PotentialDrops"12,"FlowChannels"4]
Out[2]=
Options  
(10)

RelatedGuides
▪
TerraPercolatio
""

© 2026 Wolfram. All rights reserved.

  • Legal & Privacy Policy
  • Contact Us
  • WolframAlpha.com
  • WolframCloud.com