Skip to main content

Continuity equation; seepage under a dam algorithm

Short answer

Continuity states net inflow minus outflow equals change in storage, leading to ∇·(K∇h)=S_s ∂h/∂t; for steady seepage it reduces to Laplace’s equation. The algorithm: define grid and boundary heads, enforce no‑flow boundaries with mirror nodes, iterate φ_new = average of neighbours until change < tolerance, then compute seepage Q = K Σ Δh across a section.

Explain the continuity equation used in groundwater flow analysis. Write down the algorithm for simulation of seepage under a dam.

Continuity equation in groundwater flow

Continuity expresses conservation of mass. For a small control volume Δx Δy Δz\Delta x\,\Delta y\,\Delta z of porous medium,

inflow−outflow=rate of change of water stored\text{inflow}-\text{outflow}=\text{rate of change of water stored}

With Darcy fluxes qx,qy,qzq_x,q_y,q_z, specific storage SsS_s and a source/sink term WW (recharge positive):

−(∂qx∂x+∂qy∂y+∂qz∂z)+W=Ss∂h∂t-\left(\frac{\partial q_x}{\partial x}+\frac{\partial q_y}{\partial y}+\frac{\partial q_z}{\partial z}\right)+W=S_s\frac{\partial h}{\partial t}

Substituting Darcy's law (qx=−Kx ∂h/∂xq_x=-K_x\,\partial h/\partial x, and similarly for yy and zz) gives the groundwater flow equation

∂∂x(Kx∂h∂x)+∂∂y(Ky∂h∂y)+∂∂z(Kz∂h∂z)=Ss∂h∂t−W\frac{\partial}{\partial x}\left(K_x\frac{\partial h}{\partial x}\right)+\frac{\partial}{\partial y}\left(K_y\frac{\partial h}{\partial y}\right)+\frac{\partial}{\partial z}\left(K_z\frac{\partial h}{\partial z}\right)=S_s\frac{\partial h}{\partial t}-W

For steady flow (∂h/∂t=0\partial h/\partial t=0) without sources in a homogeneous, isotropic soil, it reduces to the Laplace equation ∇2h=0\nabla^2h=0, which is used for seepage under a dam.

Algorithm for seepage under a dam

  1. Define the problem: draw the vertical section, choose a square grid (Δx=Δy\Delta x=\Delta y) covering the dam foundation down to the impervious layer, and number the nodes.
  2. Read data: upstream head h1h_1, downstream head h2h_2, hydraulic conductivity KK, grid spacing, tolerance ε\varepsilon and maximum number of iterations.
  3. Boundary conditions: set ϕ=h1\phi=h_1 on the upstream bed nodes and ϕ=h2\phi=h_2 on the downstream bed nodes; mark the dam base and the impervious layer as no-flow boundaries (use mirror nodes).
  4. Initialise all interior potentials, e.g. by linear interpolation between h1h_1 and h2h_2.
  5. Iterate: for each interior node compute
ϕi,jnew=14(ϕi+1,j+ϕi−1,j+ϕi,j+1+ϕi,j−1)\phi_{i,j}^{new}=\tfrac14\left(\phi_{i+1,j}+\phi_{i-1,j}+\phi_{i,j+1}+\phi_{i,j-1}\right)

(using the no-flow form on impervious boundaries). Record the largest change Δmax\Delta_{max}. 6. Test: if Δmax>ε\Delta_{max}>\varepsilon, go to step 5; otherwise stop. 7. Seepage rate: compute Q=K∑j(ϕi,j−ϕi+1,j)Q=K\sum_j(\phi_{i,j}-\phi_{i+1,j}) over a vertical section below the dam (per unit length of dam), and check it at another section. 8. Output: the potentials at all nodes (for equipotential lines and the flow net) and the seepage QQ.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Computational Techniques in Civil Engineering chapter 7 questions →