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

# A Technical Discussion of the MT3D Solution Methods

Contributed By: Christopher J. Neville, S.S. Papadopulos & Associates

### Overview of MT3D Solution Methods

MT3D offers two general options for simulating solute transport:

1.When the "pure" finite difference methods are used (FD), all terms in the governing equation are treated simultaneously, with advection, dispersion, reactions, and source-sink mixing terms represented with finite-difference approximations.

2.When the operator-splitting methods are used to simulate solute transport, the governing equation is split into two parts. On the left-hand side are the mass accumulation term and the advection term (in the fluid mechanics literature, the sum of these two is referred to as the total derivative of the concentration with respect to time, Dc/Dt). On the right-hand side, the dispersion, reactions, and source-sink mixing terms are represented with finite-difference approximations. The operator-splitting techniques implemented in MT3D are the particle-based methods (MOC, MMOC and HMOC) and a 3rd-order TVD method.

### Treatment of the transport terms with respect to time

MT3D offers the user two options for evaluating the terms in the finite-difference approximations, explicit or implicit-in-time weighting:

1.Explicit-in-time weighting. With explicit-in-time, or forward-in-time weighting (FIT), the terms in the finite-difference approximations are evaluated at the previous time step. This was the only option available in versions of MT3D from v.1.1 to MT3D96. Explicit-in-time weighting has the advantage of not requiring the assembly, storage, and solution of a matrix. It requires the least amount of RAM of all feasible methods. In particular, it requires no additional RAM with respect to the corresponding MODFLOW model. This was an important requirement for the development of MT3D, since the code was developed on a PC, for implementation on PCs. We now live in a world in which RAM is inexpensive. However, when MT3D was developed in 1987-1988, additional RAM over 640 KB was very limited and very expensive. Explicit-in-time weighting has the disadvantage of not being stable unless tight restrictions on the size of time steps are satisfied. In many cases, the size of the time steps can be relatively small - and may only get smaller as the spatial resolution of a model was increased. Furthermore, in versions of MT3D preceding MT3D96, the calculation of the overall maximum allowable step size was not correct, and a model could still experience severe problems although it seemed that all stability criteria were being satisfied. In theory, the maximum Courant number may be 1.0. However, because the stability requirements were not calculated correctly, in practice users often had to specify maximum Courant numbers significantly smaller than 1.0 to ensure stability.

2.Implicit-in-time weighting. With implicit-in-time, or backward-in-time weighting (BIT), the terms in the finite-difference approximations are evaluated at the current time step. This option was added with the introduction of MT3DMS and MT3D99. Implicit-in-time weighting has the advantage of being unconditional stable, and allows the use of relatively large time steps. The option requires the assembly, storage, and solution of a matrix, but these requirements are not as onerous as they were, both because additional RAM is relatively inexpensive, and because accurate and efficient matrix solvers are now widely available. The disadvantage of the method is that it is now possible to create transport models that require much more storage than the corresponding MODFLOW model. Although implicit-in-time weighting is unconditionally stable, its accuracy is not assured if the time steps are too large. In order to guarantee the accuracy, the maximum Courant number may be limited to 1.0. As a simulation proceeds and the concentration gradients diminish, this requirement may be relaxed.

### Time-weighting options with the particular MT3D solution methods

1.When the "pure" finite difference methods are used (FD), all terms in the governing equation may be represented with either explicit or implicit-in-time weighted finite-difference approximations.

2.When the particle-based methods (MOC, MMOC and HMOC) and the TVD method are used to simulate solute transport, the terms on the right-hand side (the dispersion, reactions, and source-sink mixing) may be represented with either explicit or implicit-in-time weighted finite-difference approximations.

A potential source of confusion to MT3D users is the apparent absence of a switch for specifying explicit or implicit time weighting. It turns out that this switch is 'implied'. When the user specifies that the GCG Solver Package is to be included in a simulation, the user is telling MT3D to do the following:

1.When the "pure" finite difference methods are used (FD), all terms in the governing equation are represented with implicit-in-time weighted finite-difference approximations.

2.When the particle-based methods (MOC, MMOC and HMOC) and 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. At the risk of confusing the issue, I should add at this point that the TVD algorithm implemented in MT3D is explicit-in-time. This means that even if the GCG Package is used, the times steps in TVD run will be still be subject to a time constraint - but only the advection term.

If the user does not specify the use of the GCG package, then all terms are represented with explicit-in-time weighted finite-difference.