﻿ Numerical Modeling Workflow - Finite Difference Grids > Translation Settings > MT3DMS/RT3D > Solution Method

# Solution Methods

Select the solution method used to solve the advection-dispersion transport equation.

For numerical solution of the advection-dispersion transport equation, MT3D/RT3D transport engines provide the following Solution Methods:

Standard Finite-difference methods:

Upstream Finite Difference (UFD)

Central Finite Difference (CFD)

Higher-order finite-volume TVD method.

NOTE: The Particle-tracking based Eulerian-Lagrangian methods (MOC, MMOC, and HMOC) are currently not available in Visual MODFLOW Flex.

No single solution method has been shown to be effective for all transport conditions. The combination of these solution methods, each having its own strengths and limitations, is believed to offer the best approach for solving the most wide-ranging transport problems with desired efficiency and accuracy. A brief description of all the above solution methods, and their advantages and disadvantages, is available below. Further, Zheng and Bennett (1995) provides an introduction to all these solution methods, and a discussion and comparison of their relative strengths and limitations with emphasis on their implications in solving practical problems.

### General methodologies of the solution methods

MT3DMS is a transport model for simulating advection, dispersion, and chemical reactions of contaminants in groundwater flow systems. It solves the transport equation after the flow solution has been obtained from groundwater flow model (MODFLOW). The general advective-dispersive equation describing the fate and transport of contaminant of species k in three-dimensional transient groundwater flow systems is:

where

Ck        is the dissolved concentration of species k

Ө        is the porosity of the subsurface medium

t        is time

xi        is the distance along the respective Cartesian co-ordinate axis

Dij        is the hydrodynamic dispersion coefficient tensor

vi        is the seepage or linear pore water velocity. It is related to the specific discharge or Darcy flux through the relationship,

qs        is the volumetric flow rate per unit volume of aquifer representing fluid sources (positive) and sinks (negative)

is the concentration of the source or sink flux for species k

is the chemical reaction term.

All the solution methods listed above treat the dispersion, sink/source, and reaction terms in exactly the same fashion, using the block-centered finite-difference method, either explicit or implicit in time-weighting. They differ, however, in the way the advection term is solved. For instance:

When the particle-based methods (MOC, MMOC, and HMOC) or the TVD method are selected to simulate solute transport, the transport equation is split into two parts. On the left-hand side are the mass accumulation term and the advection term (in fluid mechanics literature, the sum of these two has been referred to as the total derivative of the concentration with respect to time, Dc/Dt). On the right-hand side, the dispersion, reaction, and sink/source terms are represented with finite-difference approximation.

When the finite-difference methods (UFD, CFD) are used, all terms in the governing equation are treated simultaneously, with all advection, dispersion, reactions, and sink/source terms represented with finite-difference approximations. The finite-difference solution is explicit or implicit-in-time weighting, depending on whether the Generalized Conjugate Gradient Solver (GCG) package is selected or not.

### Solution Method

Upstream Finite Difference Method (UFD): The Upstream Finite Difference method is available in all MT3D versions. Since, the finite-difference method does not involve particle tracking or concentration interpolations, it is normally more computationally efficient than the Method of Characteristics (MOC). In addition, the finite difference method normally has very small mass balance errors because it is based on the principle of mass conservation. However, the Upstream Finite-Difference method can lead to significant numerical dispersion for problems having sharp concentration fronts.

Central Finite Difference Method (CFD): The Central Finite Difference method is only available in MT3DMS, MT3D99, and RT3Dv.2.5. The central finite difference method does not exhibit the numerical dispersion problems like the Upstream Finite Difference method, but is susceptible to excessive artificial oscillations in advection dominated problems.

The TVD (third-order total-variation-diminishing method) is available only with MT3DMS, MT3D99, and RT3Dv.2.5. The TVD scheme, which is mass conservative, solves the advection term based on ULTIMATE algorithm (Universal Limiter for Transient Interpolation Modeling of the Advective Transport Equations). As in the particle-based methods, the TVD scheme solves the advection component independent of the other terms in the transport equation.  Results from the TVD scheme may exhibit minor numerical dispersion and minor oscillations in problems having sharp concentration fronts. Since the algorithm is explicit, there is a stability constraint on the step size. The maximum allowed value for the time step is the minimum time step calculated for every active cell.

Note: Modifying the default parameter settings for each Solution method requires some understanding of the techniques used to solve the advection-dispersion component of the transport equation. For more details, refer to the MT3DMS User’s manual (Zheng and Wang, 1999).

### Comparison of Solution Methods

 Advection Method Advantages Disadvantages Appropriate Conditions Implicit Finite Difference (with Implicit GCG solver) -Computationally efficient -Minimal mass balance errors -Faster than the explicit method Numerical dispersion Dispersed fronts Peclet number <2 Explicit Finite- Difference (without Implicit GCG solver) -Computationally efficient -Minimal mass balance errors Numerical dispersion Dispersed fronts Peclet number <2 TVD -Mass conservative -Most accurate Numerical dispersion (minimal) Slightly slower runtimes

### Using the GCG Solver

When the GCG Solver Package is specified to be included in a simulation, MT3D will do the following:

When the particle-based methods (MOC, MMOC and HMOC) or the TVD method are used to simulate solute transport, the terms on the right-hand side are represented with implicit-in-time weighted finite-difference approximations.
Note: The TVD algorithm implemented in MT3D is explicit-in-time. This means that even if the GCG Package is used, the time steps in the TVD run will still be subject to a time constraint - but only the advection term.

When the finite-difference methods (UFD, CFD) are used, all terms in the governing equation are represented with implicit-in-time weighted finite-difference approximations.

If the GCG solver is not included, then all terms are represented with explicit-in-time weighted finite-difference approximations.

When the GCG Solver is included, during translation the GCG package file (projectname.GCG) will be created in the model run directory.

### GCG Solver Settings

Maximum number of outer iterations (MXITER) [Default = 1]: The outer loop in the iteration process updates all the coefficients that are concentration-dependent. The default number of outer iterations is one. It should be set to an integer greater than one only when a non-linear sorption isotherm is included in simulation. For further detail please refer to page 4-19 in the MT3DMS Documentation and User’s Guide.

Maximum number of inner iterations (ITER1) [Default = 50]: The inner loop in the iteration process continues to iterate toward the solution until the convergence criterion is obtained or the maximum number of inner iterations is reached. During these iterations, the coefficient matrix and the right hand side vector matrix remain unchanged. The default number of inner iterations is fifty. A maximum value of thirty to fifty inner iterations should be sufficient for most problems. For further details please refer to page 4-19 in the MT3DMS Documentation and User’s Guide.

The Relative convergence criterion (CCLOSE) [Default = 10-4]: is used to judge the convergence, in terms of relative concentration, of the inner iterations of the solver. The default value is 10-4. A value between 10-4 and 10-6 is generally adequate.

The Concentration change printing interval (IPRGCG) [Default = 0]: is the interval for printing the maximum concentration changes of each iteration. The default is 0 for printing at the end of each stress period.

Preconditioners

The GCG Solver implicitly solves the non-advective terms in the transport equation using a two-iteration loop process and the choice between three pre-conditioning options:

Jacobi (ISOLVE=1)

SSOR (ISOLVE=2)

Modified Incomplete Cholesky (ISOLVE=3)

The Modified Incomplete Cholesky method usually converges faster than the other two method options, but it requires significantly more memory.  If SSOR is chosen, you must specify a relaxation factor.

Dispersion tensor cross terms

The GCG Solver has two options for dealing the cross-derivative terms of the dispersion tensor:

Lump all dispersion cross terms to the right hand side (NCRS=0) will place all the dispersion tensor cross terms to the right hand side of the matrix equation and consider them as known values. This method approximates the equation (the loss of accuracy is generally insignificant) but is highly efficient (reduces the memory requirement by nearly two thirds) since there are significantly less unknown terms to be solved. For further detail please refer to the MT3DMS Documentation and User’s Guide.

Include full dispersion tensor (NCRS=1) will keep all the dispersion tensor cross terms on the left-hand side of the matrix equation and consider them as unknown terms. This method gives the exact matrix equation but is memory intensive since there are significantly more unknown terms to be solved. For details, refer to the MT3DMS Documentation and User’s Guide.

Initial Step Size (DT0):

[Default = 0]: The Initial Step Size is used to override the automatically calculated initial time step. The user can assign a value to be used for the first iteration of the solution. The default value of 0 means that the MT3D calculated value will be used.

NOTE: If the implicit solver is not selected, then this value will be ignored and the value for DT0 will be taken from the Output Control settings.

Maximum transport step size (TTSMAX)

[Default = 0]: This value is the maximum time step size allowed when a multiplier greater than 1 is used. Setting this equal to zero imposes no maximum limit.

Multiplier (TTSMULT)

[Default = 1]: This is the multiplier used to calculate the size of the next transport time step when the finite difference method is used with the implicit GCG solver. A value between 1 and 2 is generally adequate. Using a time step multiplier will degrade the solution at later times when the timestep becomes large, but can significantly decrease the amount of time needed for the solution. If one of the particle-based methods or the TVD method is used, this value will be ignored.