groundwaterFoam tutorials
The examples provided in the directory tutorials/groundwaterFoam-tutorials/ illustrate the usage of the groundwaterFoam solver.
Validation Case 1: Steady Flow
The steady flow case tests the performance of the solver in a vertical 1D column with a height of \(H = 34.5 \, \text{m}\) and discretized into 5009 cells. The simulation is driven by a constant infiltration velocity of \(V_{\text{top}} = 4.753 \times 10^{-9} \, \text{m/s}\) at the top boundary, while the bottom boundary represents the saturated zone with a Dirichlet condition set to \(H_{\text{bottom}} = 0 \, \text{m}\).
This case employs the Van Genuchten model for water retention, with the following parameters:
Porosity: \(\epsilon = 0.27\)
Permeability: \(K = 7 \times 10^{-12} \, \text{m}^2\)
Specific storage: \(S_s = 0.001\)
Van Genuchten parameters: \(\alpha = 13 \, \text{m}^{-1}\), \(m = 0.3007\)
The system reaches steady-state after continuous infiltration. Numerical results from the groundwaterFoam solver are compared against the reference solution obtained from the METIS code (we take the METIS code solution as our reference solution because of its strong credibility and longevity). The comparison of the saturation distribution along the column shows excellent agreement, with only minor discrepancies near the bottom due to strong pressure head gradients.
Parameters:
Flow properties
Property |
Symbol |
Value |
Unit |
|---|---|---|---|
Viscosity |
\(\mu\) |
\(1 \times 10^{-3}\) |
\(\text{Pa.s}\) |
Density |
\(\rho\) |
100 |
\(\text{kg/m}^3\) |
Van Genuchten coefficient |
\(m\) |
0.3007 |
[-] |
Van Genuchten coefficient |
\(\alpha\) |
13.0 |
\(\text{m}^{-1}\) |
Permeability |
\(K\) |
\(7 \times 10^{-12}\) |
\(\text{m}^2\) |
Kinematic porosity |
\(\epsilon\) |
0.27 |
[-] |
Specific storage |
\(S_s\) |
0.001 |
[-] |
Transport properties
Property |
Symbol |
Value |
Unit |
|---|---|---|---|
Total porosity |
\(\epsilon_{\text{total}}\) |
0.30 |
[-] |
Tortuosity |
\(\tau\) |
1 |
[-] |
Molecular diffusivity |
\(D_m\) |
\(1 \times 10^{-9}\) |
\(\text{m}^2/\text{s}\) |
Dispersivity coefficient |
\(\alpha_L\) |
1.0 |
\(\text{m}\) |
– |
\(\alpha_T\) |
0.2 |
\(\text{m}\) |
Volume partitioning coefficient |
\(K_d\) |
\(5 \times 10^{-5}\) |
\(\text{m}^3/\text{kg}\) |
Radioactive decay coefficient |
\(\lambda\) |
\(1 \times 10^{-9}\) |
\(\text{s}^{-1}\) |
Visual results for the steady-state saturation profile:
Saturation profile for the steady flow case:
Validation Case 2: Transient Flow
The transient flow case starts from the steady-state solution obtained in the previous case. The infiltration velocity at the top boundary is varied over time using a piecewise linear function ranging from 0 to 1000 times the reference velocity (\(V_{\text{top}} = 4.753 \times 10^{-9} \, \text{m/s}\)) over a period of 2315 days (∼2.108 seconds).
This test aims to assess the solver’s robustness under large variations in infiltration, particularly in the unsaturated zone. The results are presented in terms of the water flow rate at the bottom boundary, where a comparison is made between the results from groundwaterFoam and METIS. The two models show good agreement, with minor differences observed during the drainage phase due to discretization methods.
Parameters:
Parameter |
Value |
Infiltration velocity \(V_{\text{top}}\) |
Variable (0 to 1000 times the reference velocity) |
Time duration |
2315 days |
Porosity \(\epsilon\) |
0.27 |
Permeability \(K\) |
\(7 \times 10^{-12} \, \text{m}^2\) |
The comparison of water flow rates:
Water flow rate comparison for the transient flow case: