ArcNLET-Py Groundwater Solute-Transport Module: Theoretical Foundations
1. Purpose of This Document
The purpose of this document is to provide a clear, step-by-step exposition of the physical and mathematical foundations of the ArcNLET-Py groundwater solute-transport module. In particular, it:
Derives the steady-state, two-dimensional advection–dispersion–decay equations from the Domenico solution (Section 2.1; Equations 7–9).
Shows how the source-plane thickness \(Z\) is related to the specified input mass rate \(M_{in}\) for a single solute (Section 2.2; Equation 29).
Explains how auxiliary-variable transformations decouple the coupled NH₄⁺-N and NO₃⁻-N reaction equations into independent first-order decay problems (Section 2.3; Equations 38–41 for NH₄⁺-N, and 42–45 for NO₃⁻-N).
Extends the \(Z\text{-}M_{in}\) relationship to the NH₄⁺-N system when NH₄⁺-N and NO₃⁻-N coexist (Section 2.4; Equation 53).
Applies a similar derivation to the NO₃⁻-N system—first illustrating a common misstep, then presenting the correct formulation when NH₄⁺-N and NO₃⁻-N coexist (Section 2.5; Equation 76).
This document is intended for hydrogeologists, groundwater modelers, and environmental scientists who seek a deeper understanding of the theoretical basis behind ArcNLET-Py. It will also benefit advanced graduate students, regulators, and consulting engineers who need to critically evaluate model assumptions, set parameters correctly, or interpret model outputs in the context of solute transport and reactive processes.
2. Equations of Ammonium and Nitrate Calculation in Groundwater
ArcNLET-Py employs a steady-state, two-dimensional advection-dispersion equation to simulate the reactive transport of ammonium and nitrate in groundwater. The term “two-dimensional” specifically refers to the horizontal \(x\)-axis, which aligns with the direction of groundwater flow, and the horizontal \(y\)-axis, which is perpendicular to the \(x\)-axis. It is important to note that while the model does not account for variability along the \(z\)-axis (the vertical dimension), the \(z\)-axis remains a critical input parameter. If the \(z\)-value is not directly provided, the model requires the mass of the contaminant entering the groundwater, denoted as \(M_{in}\), and calculates the \(z\)-value accordingly, which is described in Section 2.2. ArcNLET-Py assumes a uniform concentration distribution along the \(z\)-axis with no vertical variability. The \(z\)-value is used to calculate the volume of the plume, and subsequently calculate the mass balance items of ammonium and nitrate.
2.1 The Domenico Solution
The Domenico solution with decay (Domenico, 1987) considers a simplified form of advection-dispersion equation, and is shown as,
where \(C\) is the contaminant concentration \([M/L^3]\); \(D_x\), \(D_y\) and \(D_z\) are the homogeneous dispersion coefficients in \(x\), \(y\), and \(z\) respectively \([L^2/T^{-1}]\); \(v\) is the constant seepage velocity in the \(x\) direction \([L]\) and k is the first order decay constant \([T^{-1}]\). The boundary and initial conditions are,
These conditions essentially correspond to considering a single plume, having a source plane centered at (0, 0, 0), with dimensions \(Y\) and \(Z\) and a constant concentration \(C_0\) while only considering groundwater flow in the \(x\) direction but dispersion in all three directions, as the Figure 1 shows as follows. Additional constraints assume that the system evolves only in the positive half of the \(x\) coordinate space and that the system is initially free of contaminant.
Fig. 1. The geometry of the Domenico solution source plane.
The general form of the Domenico solution used in this model is the three-dimensional transient solution of Martin-Hayden and Robbins (1997), which is based on the work by Domenico and Robbins (1985) and Domenico (1987),
with
where \(\alpha_x\), \(\alpha_y\), and \(\alpha_z\) are the longitudinal, horizontal transverse and vertical transverse dispersivities \([L]\); \(k\) is the first order decay coefficient \([T^{-1}]\); \(v\) is the groundwater seepage velocity in the longitudinal direction \([LT^{-1}]\), \(Y\) and \(Z\) are the width and height of the source plane respectively \([L]\) and \(t\) is time \([T]\).
The actual form of the Domenico solution used in ArcNLET-Py is the steady-state, two-dimensional version of Equation 3 as follows,
Equation 7 (along with Equation 8 and 9) is obtained by ignoring vertical dispersion in Equation 3 by setting the transverse vertical dispersivity, \(a_z\), in Equation 6 equal to zero. The error function tends to \(\pm 1\) as the argument tends to \(\pm \infty\). Therefore, when \(-Z/2<z<Z/2\), \(F_3\) becomes \(erf(+\infty)-erf(-\infty)=2\). This makes the solution two-dimensional. To impose a steady-state condition, \(t\) is taken to \(+\infty\). The complementary error function is defined as \(erfc(t)=1-erf(t)\) therefore as the argument tends to \(+\infty\), \(erft(t)\) tends to \(0\) and as it tends to \(-\infty\), it tends to \(2\). Using these properties, as \(t\) goes to \(+\infty\), the term after the addition sign in Equation 4 become \(0\) and the first \(erfc\) term becomes 2. The other terms do not depend on \(t\) and therefore remain unchanged.
2.2 The Relationship between \(M_{in}\) and \(Z\) for a single solute
\(M_{in}\) means the mass input from the source plane, as shown in Figure 1, to groundwater. The calculation of the mass input rate, \(M_{in}\), is more complicated. The input load calculation accounts not only for mass input due to advection from the source plane but also through dispersion of the source plane.
The advection term is calculated using the volume of water that flows across the interface (source plane) in unit time, multiplied by the solute concentration,
where \(C_0[M/L^3]\) is the concentration of the source plane; \(Y\) and \(Z\) are the dimensions of the source plane \([L]\); \(v[L/T]\) is the seepage velocity, and \(\theta [\text-]\) is the porosity. The dispersion term is calculated by assuming dispersion is governed by Fick’s Law (Freeze and Cherry, 1979). The dispersion through the source plane is written as,
where \(D_{xx} [L^2/T]\) is the component of the dispersion tensor along the x-direction. The dispersion parameters is actually a second order tensor in three dimensions, represented by a \(3 \times 3\) matrix. Because the direction of the principal flow has been aligned with the coordinate system, and the flow is assumed to be only in the \(x\)-direction, all \(y\)-terms, \(z\)-terms and \(x\text{-}y\) cross terms vanish, leaving only the \(D_{xx}\) term.
Disregarding molecular diffusion, the dispersion coefficient is calculated as,
where \(\alpha_x [L]\) is the medium’s dispersivity in the \(x\)-direction and \(v[L/T]\) is seepage velocity as before. Putting everything together and \(M_{in}\) can be shown as,
Equation 12 uses the partial derivative symbol \(\partial\) while Equation 14 uses the total derivative symbol \(d\) because x is the only independent variable. The \(\frac{d C}{d x}\) term can be calculated from Equation 7. The remaining terms in Equation 12 are specified parameters or are otherwise known.
Differentiating Equation 7 (using the chain rule) and evaluating it at the location of the source plane,
Calculating \(d F_1/d x\) is straightforward,
The calculation of \(d F_2/d x\) requires multiple steps. The intermedia variables is used as,
Therefore,
The error function is,
Based on Leibniz’s integral rule, the derivative of the error function is,
Therefore,
\(C_u\) and \(C_v\) are constant parameters, as \(C_u=\frac{y+Y/2}{2\sqrt{\alpha_y}}\), and \(C_v=\frac{y-Y/2}{2\sqrt{\alpha_y}}\).
The result of this expression depends on the limit value of,
where \(C\) is a positive constant value.
As \(x \to 0^+\),
\(x^{3/2} \to 0^+\), The denominator tends to infinity,
The numerator \(e^{-C/x} \to 0\), but exponentially fast.
The exponential decay like \(e^{-1/x}\) goes to \(0\) much faster than any power of x goes to infinity, therefore the Equation 24 goes to 0. As a result,
Besides,
Then,
Equation 14 can be finally calculated as,
In the solute transport module of ArcNLET-Py, if “Specified Input Mass Rate” is selected, Equation 29 is employed to calculate the \(z\)-value, and the contaminant input mass \(M_{in}\) becomes an essential input parameter. Conversely, if “Specified Z” is chosen, providing the \(z\)-value itself is required as an essential input.
2.3 Considering both ammonium and nitrate
The governing equation used in ArcNLET-Py to calculate both ammonium and nitrate solute transport is the steady-state advection-dispersion equation, which can be presented as,
where the \(D_x\) and \(D_y\) are the dispersivity coefficients in the longitudinal \((x)\) and horizontal transverse \((y)\) directions, respectively; \(c_{NH^+_4}\) and \(c_{NO^-_3}\) are the concentrations of ammonium and nitrate, respectively; \(v\) is groundwater velocity in the longitudinal direction; \(\rho\) is bulk density; \(k_d\) is linear adsorption coefficient of ammonium; \(k_{nit}\) and \(k_{deni}\) are the first-order nitrification and denitrification rates, respectively; and \(\theta\) is porosity.
The boundary conditions for the ammonium and nitrate are as follows,
Equations 30 and 31 cannot be solved directly using the Domenico solution; instead, a transformation is required. The analytical solutions of Equation 30 and 31 can be obtained by using the method of Sun et al. (1999) that transforms the two coupled equations into two independent equations. This is done by defining the auxiliary variables as,
With the auxiliary variable, Equations 30 and 31 can be transformed to,
For ammonium, the Domenico solution can be,
For nitrate, the Domenico solution can be,
2.4 The Relationship between \(M_{in}\) and \(Z\) for ammonium
For ammonium,
\(F_{1,NH_4^+} = 1\) while \(x=0\).
\(\frac{d F_{2,NH_4^+}}{d x}\Big|_{x=0}\) can be calculated as similar as the processes in Section 2.2, and the result is 0. Therefore,
This equation is similar with Equation 29.
2.5 The Relationship between \(M_{in}\) and \(Z\) for nitrate
The following equations use the same derivation method as before, though there are some questionable aspects to consider. First, I will present the derivation approach, and then highlight the problematic points using an example with specific input parameters.
For nitrate,
We can define \(\lambda\) as a variable to simplify the equations:
Therefore,
As a results,
\(C_{0,NO_3^-}=a_{0,NO_3^-}-\lambda C_{0,NH_4^+}\), therefore,
The terms containing \(a_{0, NO_3^+}\) on the right side of this equation combine together, resulting in,
The terms containing \(C_{0, NH_4^-}\) on the right side of this equation combine together, resulting in,
\(M_{in,NO_3^+}\) is the sum of Equations 64 and 65,
where
A significant issue is that \(Z_{NO_3^-}\) can become negative under certain conditions using Equation 67. These problematic cases will be highlighted using an example with specific input parameters.
Using these parameters in Equation 67, the calculated \(Z_{NO_3^-}\) value is -383.92.
The following figure presents the results of the centerline ( \(y=0\) ) of NH₄⁺-N and NO₃⁻-N based on Equations 38–45.
Fig. 2. Centerline ( \(y=0\) ) concentrations of f \(NO_3\text{-}N\) and \(NH_4\text{-}N\), calculated using Equations (38)–(45) with parameters defined in Equation (68). NH₄⁺ and NO₃⁻-N
For NH₄⁺-N, its concentration gradually decreases due to advection, dispersion, and nitrification effects. For NO₃⁻-N, although advection, dispersion, and denitrification processes reduce its concentration, nitrification converts NH₄⁺-N to NO₃⁻-N. When NO₃⁻-N generation through nitrification exceeds the combined reduction effects, the overall NO₃⁻-N concentration increases—this explains the initial rise in NO₃⁻-N shown in Fig. 2.
As shown in Fig. 3, the gray plane represents the nitrate source in groundwater, where nitrate enters the aquifer through both advection and dispersion processes. This leads to the relationship \(M_{in, NO_3^-} = M_{adv,NO_3^-}+M_{dsp,NO_3^-}\) .
In the absence of ammonium, the source plane naturally exhibits the highest nitrate concentration, and dispersion occurs from the source plane along the direction of groundwater flow. In this study, the groundwater flows in the positive \(x\)-direction, which is perpendicular to the source plane. The advective and dispersive contributions of nitrate can be quantified. Their calculation requires both the concentration and the corresponding volume of the nitrate plume. The concentration is obtained using the Domenico solution, while the volume is expressed as a function of \(Z\). This results in a relationship between \(M_{in,NO_3^-}\) and \(Z\), which forms the basis of the previous approach.
However, when both ammonium and nitrate are present, the situation becomes more complex. Nitrate concentrations can increase not only from the source plane but also through nitrification of ammonium. Under certain conditions, the nitrate concentration downstream of the source plane may exceed that within the source plane itself, as shown in Fig. 1. As a result, the dispersion of nitrate may occur in the direction opposite to groundwater flow. If this reverse dispersion is stronger than the advective transport from the source plane, it can result in a negative value for \(M_{in, NO_3^-}\). This explains why, under specific parameter combinations as discussed earlier, our approach may yield a negative value.
Fig. 3. Mass flux from source plane (gray plane) into groundwater system.
The governing equation of nitrate can be written as,
where,
Suppose \(C_{NO_3^-}=C_{1,\,NO_3^-}+C_{2,\,NO_3^-}\), where \(C_{1,\,NO_3^-}\) represents the nitrate from the source plane, and \(C_{2,\,NO_3^-}\) represents the nitrate produced by ammonium nitrification. The first- and second‑order derivative operators are linear and thus satisfy the principle of superposition. Then Equation 70 can be split into,
Equation 72 describes the reactive transport of nitrate from the source plane, while Equation 73 describes the reactive transport of nitrate produced by nitrification reactions.
As a results, the \(M_{in,NO_3^-}\) from source plane to groundwater system can be calculated as,
Using the Domenico analytical solution for Equation 72 and substituting it into Equation 74, we can obtain the final result:
Therefore,
After deriving numerous formulas and conducting a thorough analysis, we ultimately return to the form of Equation 76.
Figure 4 presents the sensitivity analysis results of \(Z\). Each subplot varies one parameter while keeping others constant at the values from Equation 69. The results demonstrate how different parameter values influence the outcome. For example, at very low velocities, \(Z\) becomes highly sensitive to velocity changes. This sensitivity is expected since \(v\) appears in the denominator of the formula. When \(v\) changes from 10⁻⁵ to 10⁻³ m/day, the seemingly small numerical difference actually represents a significant change of multiple orders of magnitude of \(Z\). Besides, the analysis shows that some parameters, such as \(\rho\), have no effect on \(Z\) values—specifically the \(Z_{NO_3^-}\) calculation. This follows directly from the equations.
Fig. 4 Sensitivity analysis of \(Z\).
Figure 4 raises another important issue regarding the parameter \(Z_{max}\) in ArcNLET-Py. When calculating \(Z\), the result must not exceed \(Z_{max}\). While the default value of \(Z_{max}\) is 3, the results in Figure 4 demonstrate that calculated \(Z\) values frequently exceed this threshold.
The depths of the plumes were investigated and the results are listed as:
Turkey Creek study area
The report stated: “the wells were drilled to a depth of 5 feet below the water table or to the top of a sandy clay loam layer encountered at the Groseclose site…” Based on this description of the monitoring well installation, the investigation implicitly assumes that plumes primarily occur within a depth range of 5 feet below the groundwater table, and the groundwater quality monitoring wells were positioned accordingly.
St. George Island
The report stated: “multi-level samplers (MLS) and 5 cm PVC monitoring wells were installed at all sites to an approximate depth of 3 meters.” Since it is a coastal island with a groundwater table depth of less than 1 m most of the time, the investigation on St. George Island implicitly assumes that the plumes primarily occur within a depth range of 2–3 meters below the groundwater table.
Wekiva area
For the Seminole County site, the report stated: “based on nitrate concentration contour intervals of 10 mg/L, the \(NO_3\text{-}N\) plume’s maximum dimensions measure approximately 30 feet long by 25 feet wide and approximately 8 feet thick. … Based on total nitrogen concentration contour intervals of 10 mg/L, the plume’s maximum dimensions measure approximately 115 feet long by 75 feet wide and approximately 12 feet thick.”
For the Lake County site, the report stated: “based on nitrate concentration contour intervals of 10 mg/L, the dimensions of nitrate plume … with a total vertical thickness of approximately 14 feet ”
For the Orange County site, the report stated: “based on contour intervals of 10 mg/L, the nitrate plumes dimensions … with a well defined maximum vertical thickness of approximately 12 feet ”
Note that these depths represent the vertical extent where concentrations exceed 10 mg/L. Therefore, the plumes primarily occur within a depth range of 8-14 feet (2.4-4.3 meters) in this site.
The Soap and Detergent Association Monitoring Site
The groundwater table at the study site is 1.5 to 5 feet below the ground surface. The nitrogen plume reaches its primary depth at 6 feet below the groundwater surface and does not extend significantly beyond 12 feet below ground surface. Based on these measurements, the nitrogen plume roughly has a vertical thickness of 6 feet (2 meters).
St. Lucie River study area
The M.H.E. PushPoint sampling tool, which is primarily 36 inches in length, was used to sample groundwater. Although the report does not include measured groundwater levels, the use of this shorter length tool implicitly suggests that plumes occur primarily within one foot below the ground surface.
St. John River Basin (including Eggleston Height, Lakeshore, and Julington Creek)
This study area primarily used PushPoints of 48 and 72 inches in length for groundwater quality monitoring. This implicitly assumes that plumes occur primarily within 4-6 feet below the ground surface.
Based on the monitoring data from multiple study areas, nitrogen plumes are generally confined within a shallow subsurface zone, typically ranging from 1 to 4 meters (3 to 14 feet) below the groundwater table or ground surface. Therefore, setting \(Z_{max}=3\) meters in ArcNLET-Py appears to be a reasonable and representative choice, as it aligns well with the observed vertical extent of nitrogen plumes across diverse field conditions. However, it is important to note that if site-specific measurements of plume depth are available, the “Specified Z” option is recommend and the value of \(Z\) should be adjusted accordingly to reflect actual field observations.
Reference
Domenico, P. A. 1987. An analytical model for multidimensional transport of a decaying contaminant species. Journal of Hydrology 91, 49–58.
Domenico, P. A., Robbins, G. A. 1985. A new method of contaminant plume analysis. Groundwater 23, 4, 476–485.
Martin-Hayden, J. M., Robbins, G. A. 1997. Plume distortion and apparent attenuation due to concentration averaging in monitoring wells. Groundwater 35, 2, 339–346.
Sun, Y., Petersen, J.N., Clement, T.P., Skeen, R.S. 1999. Development of Analytical Solutions for Multispecies Transport with Serial and Parallel Reactions. Water Resources Research 35(1), 185–190.