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`
SeepageSolve
​
SeepageSolve
[layers,headBCs,streamBoundaries,opts]
solves a confined seepage problem.
​
Details and Options
▪
layers is {<|"Polygon"->{{x,y}..}, "kx"->kx, "ky"->ky|>, ...} (or {polygon, kx, ky}). Adjacent layer polygons must share vertices along common interfaces; layers are searched in order, so an earlier polygon's conductivity wins where polygons overlap (e.g. a core or a thin seam listed first).
▪
headBCs is {{value, pred}, ...}: pred is a function (x,y) -> True on the boundary the condition applies to; value may be a number or a function of (x,y) (e.g. (#2&) for h == y).
▪
streamBoundaries is {predA, predB}, predicates for the two bounding impermeable streamlines (e.g. a sheet-pile wall and the impermeable base); all other boundaries default to no-flow for h. For more than two streamline groups, give matching values with the "PsiValues" option.
▪
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; Automatic picks domain area/1500.
"PsiValues"
Automatic
Stream-function values for each group in streamBoundaries; Automatic uses {0, Q} (or {0, Q/(2 Pi)} if axisymmetric).
"SeepageFaces"
{}
Predicates for boundaries where h == y is imposed (unknown seepage faces), e.g. the downstream face of a dam below the phreatic exit point.
"Mesh"
Automatic
Use a precomputed ElementMesh instead of meshing layers automatically.
"Axisymmetric"
False
True treats x as the radial coordinate r and returns Q as the full discharge in m^3/s.
"MeshRefinementFunctio"
None
A single-layer mesh refinement function passed on to ToElementMesh.
"RechargeBC"
None
{q, pred}: infiltration q (m/s) entering across the boundary selected by pred, e.g. a phreatic surface receiving steady rainfall.
▪
Returns an
Association
with keys "Head", "Psi", "Q", "Velocity", "Gradient", "PorePressure", "Mesh", "Layers" and "HeadRange".
​
Examples  
(9)
Basic Examples  
(1)
Solve a confined seepage problem through a uniform permeable stratum:
In[1]:=
layers={Association["Polygon"{{0,0},{20,0},{20,10},{0,10}},"kx"0.00001`,"ky"0.00001`]};headBCs={{12.`,Function[{x,y},x≤0.001`]},{10.`,Function[{x,y},x≥19.999`]}};streams={Function[{x,y},y≥9.999`],Function[{x,y},y≤0.001`]};sol=
SeepageSolve
[layers,headBCs,streams];sol["Q"]
Out[1]=
0.00001
Draw the flow net for the solution:
In[2]:=
FlowNet
[sol]
Out[2]=
Options  
(8)

""

© 2026 Wolfram. All rights reserved.

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