PACKET TRACKING
Traditionally, a first-order Euler algorithm is used to
represent the velocity field and the v/R at the packet position is used to move
the packet forward (or backward for modified MOC) for a time step
The limiting criteria for the time step size when considering
advection is the Courant number
1st order estimation is OK in areas of uniform velocity,
but is not good for strongly converging or diverging flows unless the time step
is small
The Fourth-order Runge-Kutta Algorithm is more
accurate than the first order because it uses the velocity at 4 locations to determine
the net velocity that will influence the packet during a time step.
A weighted velocity is calculated from these
four values and used to move the particle forward
Following the first velocity for half a time step to
find the location for the second velocity, then using that velocity from
the starting point for half a time step to find the third point, then
using the average of those 3 velocities for a full time step from the
initial position to obtain the location for the fourth velocity.
This calculation requires substantially more computation
than the first order algorithm so it is less efficient
MT3D allows options for the first order, fourth order,
or a combination of the two to optimize the trade-off between accuracy and efficiency.