imod.wq.AdvectionModifiedMOC#
- class imod.wq.AdvectionModifiedMOC(courant=1.0, tracking='hybrid', weighting_factor=0.5, dconcentration_epsilon=1e-05, sink_particle_placement=2, sink_nparticles=40)[source]#
Solve the advention term using the Modified Method of Characteristics (MIXELM = 2) Courant number (PERCEL) is the number of cells (or a fraction of a cell) advection will be allowed in any direction in one transport step.
- courant#
Courant number (PERCEL) is the number of cells (or a fraction of a cell) advection will be allowed in any direction in one transport step. For implicit finite-difference or particle tracking based schemes, there is no limit on PERCEL, but for accuracy reasons, it is generally not set much greater than one. Note, however, that the PERCEL limit is checked over the entire model grid. Thus, even if PERCEL > 1, advection may not be more than one cell’s length at most model locations. For the explicit finite-difference, PERCEL is also a stability constraint, which must not exceed one and will be automatically reset to one if a value greater than one is specified.
- Type:
float
- tracking#
indicates which particle tracking algorithm is selected for the Eulerian-Lagrangian methods. ITRACK = 1, the first-order Euler algorithm is used; ITRACK = 2, the fourth-order Runge-Kutta algorithm is used; this option is computationally demanding and may be needed only when PERCEL is set greater than one. ITRACK = 3, the hybrid 1st and 4th order algorithm is used; the Runge- Kutta algorithm is used in sink/source cells and the cells next to sinks/sources while the Euler algorithm is used elsewhere.
- Type:
string, {“euler”, “runge-kutta”, “hybrid”}
- weighting_factor#
is a concentration weighting factor (WD) between 0.5 and 1. It is used for operator splitting in the particle tracking based methods. The value of 0.5 is generally adequate. The value may be adjusted to achieve better mass balance. Generally, it can be increased toward 1.0 as advection becomes more dominant.
- Type:
float
- dconcentration_epsilon#
is a small Relative Cell Concentration Gradient (DCEPS) below which advective transport is considered negligible. A value around 1.0e-5 is generally adequate. Default value: 1.0e-5.
- Type:
float, optional
- sink_particle_placement#
indicates whether the random or fixed pattern is selected for initial placement of particles to approximate sink cells in the MMOC scheme. (NLSINK)
- Type:
int
- sink_nparticles#
is the number of particles used to approximate sink cells in the MMOC scheme. (NPSINK)
- Type:
int
- __init__(courant=1.0, tracking='hybrid', weighting_factor=0.5, dconcentration_epsilon=1e-05, sink_particle_placement=2, sink_nparticles=40)[source]#
Methods
__init__
([courant, tracking, ...])from_file
(path, **kwargs)Loads an imod-wq package from a file (currently only netcdf and zarr are supported).
isel
()save
(directory)sel
()