pictures/imod_logo.png

iMOD User Manual version 5.2 (html)


13.2iMOD-WQ Runfile Description


13.2.1Introduction to iMOD-WQ Runfile Description

The iMOD-WQ executable supports the usage of a runfile. This can be invoked by:
(in a DOS command window, or in a batch file). The runfile is an easy-to-use Windows INI-formatted file with sections for the specific packages. You can add comments to the runfile by using the characters "#", "%" or "!". Each section contains keywords with corresponding properties. The keyword definitions closely follow the MODFLOW documentation, [Harbaugh et al.(2000)], the MT3DMS documentation, [Zheng and Wang(1999)] and the RT3D documentation ([Clement(1997), Clement and Johnson(2003)]). This manual only includes brief descriptions of the various keywords; for full explanations the aforementioned MODFLOW and MT3D documentation is referred to. The order in which the keywords appear within the section, as well as the order in which the sections appear in the runfile, is irrelevant. The valid sections and keys are listed in Section 2.5. A list of all inputs can be generated automatically by the iMOD-WQ executable as a comma separated file (.csv) by specifiying WRITEHELP=TRUE in the [GEN] section. The [GEN] section is the general section where the user must activate the packages (PACKAGES), the model-name, result directory, coordinates of the area of interest, and the starting time. All the other sections correspond directly to the MODFLOW and MT3DMS packages from the corresponding manuals. Note that the input must satisfy the defined format (column 3), e.g. meaning that a user must specify COORD_XLL=0. instead of COORD_XLL=0 in the [GEN] section.

For many keys, iMOD-WQ assumes default settings in case the key is not specified in the runfile. This allows to keep the runfile concise, but places responsibility on the modeller to know the default settings and to consciously accept these when not specifying alternative values in the runfile.

iMOD-WQ can also be used in combination with a .NAM file, just like the original SEAWAT and MT3DMS programs.


13.2.2On the use of macro’s and tokens

13.2.2.1General use of macro’s and tokens

The iMOD-WQ runfile offers the convenient possibility of entering input using macros and tokens. These tokens can be seen as wildcards/jokers, which prevent having to enter many repetitive lines in the runfile. Macro’s can be used for ranges layers (L), rows (R), columns (C), stress periods (P), species (T) and sub-systems (S). A selected range can be specified by a ":". The whole range can be specified by using the tokens: "$", "?" or "&". The format for using selected ranges is ::. Using the stride is optional. For example L1:5 corresponds to layer 1, 2, 3, 4 and 5, and L1:2:5 corresponds to layer 1, 3, and 5. NOTE: the convention in using the stride is that the last number of the series is always smaller than or equal to the specified end number ().

It is not allowed to specify the keys for a particular combination of L, R, C, P, T and S, and not do it for the other required keys of a packages. For instance, if the river densities are specified for S=1, L=1 and P=1 (so RIVSSMDENS_S1_P1_L1), also the other keys of the RIV package (STAGE, COND and RBOT) have to be specified for this combination. Or, if for instance COND is specified for all possible combinations, for example via COND_P$_S$_L$, all other keys of the RIV package have to be specified for all combinations as well. Otherwise, the program terminates with an input inconsistency error message. This is to prevent unintended model setups, as otherwise errors are introduced easily.


13.2.2.2Using macro’s in combination with constants

For example, consider a five layer model and consider the key STRT for specifying the starting heads in the [BAS6] section. For specifying the heads for selected layers, one can do:

STRT_L1:3 = 0. # starting heads for layers 1 , 2 , 3

STRT_L4:5 = 1. # starting heads for layers 4 and 5

or for specifying one constant for all layers:

STRT_L? = 1. # starting heads for all layers

Values can also be entered on a single line, for example:

STRT_L? = 0., 0., 0., 1., 1. # starting heads for all layers

Line continuation is enabled by ending the line with a "&" character:

STRT_L? = 0., 0., 0.,&

1. , 1. # starting heads for all layers

It is also possible to specified increment sizes when stepping through the range, e.g.:

PERLEN_P1:4:80 = 365.

PERLEN_P2:4:80 = 365.

PERLEN_P3:4:80 = 365.

PERLEN_P4:4:80 = 366.

sets the stress period lengths of all years to 365., except for every 4th year, which is set to 366. The format is PERLEN_P::.


13.2.2.3Using macro’s in combination with file names

It is also allowed to use macros in file names. For example, instead of entering for each layer separately:

STRT_L1 = INPUT\SHD_L1. IDF # starting heads for layer 1

STRT_L2 = INPUT\SHD_L2. IDF # starting heads for layer 1

STRT_L3 = INPUT\SHD_L3. IDF # starting heads for layer 1

STRT_L4 = INPUT\SHD_L4. IDF # starting heads for layer 1

STRT_L5 = INPUT\SHD_L5. IDF # starting heads for layer 1

it is much faster and more compact to enter:

STRT_L? = INPUT \SHD_L? # starting heads for all layers

Macro’s in filenames can also be used for ranges, using the ":" token, as follows:

STRT_L1:10 = INPUT \SHD_L:. IDF # starting heads for layers 1-10

Macros can also be used for keys with multiple counter, e.g. the river stage which the user has to specify in the RIV section for all stress-periods, selected sub-systems and selected layers. For example:

STAGE_P?_S1_L1 :5 = INPUT\STAGE_P? _S1_L : .idf # river stages

The following general rules apply when using macro’s in combination with file names:


13.2.3Using arithmetic operations

Numeric input can be entered in combination with one of six different mathematical operators, see Table 13.1

Operator Operation
_ Factorisation
+ Summation
- Substraction
* Multiplication
/ Division
^ Power

Table 13.1: Mathematical operators allowed in iMOD-WQ.

In the runfile, the operator is specified always before the "=" sign, for example:

STRT_L? * 5 . = 1. # starting heads for all layers

is equivalent to:

STRT_L? = 5. # starting heads for all layers

Another example is given by the use of resistance grids and reworking them into vertical conductances by using the power operator:

VCONT_L? ^-1. = INPUT\VERTICAL_RESISTANCE_L?. idf

# vertical conductance for all layers


13.2.4Using factors

It is possible to use factor arrays for specific ranges. This requires the inclusion of a [FAC] section in the runfile, e.g.

[FAC]

F_L? = 1.0 , 2.0 , 3.0 , 4.0 , 5.0

or

[FAC]

F_L? = \ \

1.0

2.0

3.0

4.0

5.0

Then, applying the operator addition

STRT_L1:3 +F_L1 :3 = 0. # starting heads for layers 1,2,3

STRT_L4:5 +F_L4 :5 = 1. # starting heads for layers 4 and 5

is equivalent to

STRT_L1 = 1.0 # starting head for layers 1

STRT_L2 = 2.0 # starting head for layers 2

STRT_L3 = 3.0 # starting head for layers 3

STRT_L4 = 5.0 # starting head for layers 4

STRT_L5 = 6.0 # starting head for layers 5


13.2.5Input instructions per package

13.2.5.1Introduction to input instructions

In the keyword tables a colour coding is applied, with colours green, orange and red. The meaning of the colours is as follows:
Green: the key is not mandatory, as iMOD-WQ applies default values in case the user does not specify other values in the runfile. For many parameters, however, the default value is a nodata value. For example, if no values for RECH (the recharge flux in \(L^3/T\)) is given, the nodata value is applied, which amounts to a recharge of zero. The user should always check thoroughly whether the invocation of default values by not specifying keys in the runfile results in the desired settings and parametrization of the model. This can be done, for instance, using the standard MT3DMS/SEAWAT input files written by iMOD-WQ (see key ECHOFILES in the GEN package).
Orange: the key may be mandatory, depending on other choices for model settings. No default values are set in the code but whether the model needs values for these keys depends on other keys. For instance, the primary storage coefficient SF1 is mandatory in case of a transient simulation but does not need to be specified in a steady-state model.
Red: the key always has to be specified. Not specifying these keys always results in the termination of the run.

It is mandatory to obey the key types as specified in the tables in this section. So, integers keys should indeed be specified by integer numbers in the runfile, and the same holds for reals.


13.2.5.2Input instructions for the GEN package

(GEN: general package)

KEY TYPE DEFAULT DESCRIPTION
MODELNAME character my_model Model name
WRITEHELP logical F Write help file
ECHODEFAULTS logical F Echo defaults
RESULT_DIR character .\results Results directory
IDFDEBUG logical F Debug option for writing IDFs after
reading them
DIRECTSTOP logical F When true, execution stops after runfile
conversion
WRITE_SORBED_CONC logical F Write sorbed concentrations
(when isothm > 0)
RUNTYPE character - Either "SEAWAT" or "MT3DMS"
PACKAGES character - The active model packages in the model
COORD_XLL real 0.00E+00 Lower left X-coordinate of the area of
interest
COORD_YLL real 300000. Lower left Y-coordinate of the area of
interest
COORD_XUR real - Upper right X-coordinate of the area of
interest
COORD_YUR real - Upper left Y-coordinate of the area of
interest
START_YEAR integer 2000 Starting year of the simulation
START_MONTH integer 1 Starting month of the simulation
START_DAY integer 1 Starting day of the simulation
START_HOUR integer - Starting hour of the simulation
START_MINUTE integer - Starting minute of the simulation
START_SECOND integer - Starting second of the simulation

Notes:

Example:

[GEN] # General settings

MODELNAME = JURONG_SWT

WRITEHELP = TRUE

RESULT_DIR = RESULTS_v1

PACKAGES = DIS, BAS6, OC, BCF6, RCH, GHB, PCG, BTN,

ADV, DSP, SSM, GCG, VDF

COORD_XLL = 349300.

COORD_YLL = 133900.

RUNTYPE = SEAWAT

START_YEAR = 2014

START_MONTH = 3

START_DAY = 20

START_HOUR = 0

START_MINUTE = 0

START_SECOND = 0

Figure 13.1: Example settings in the GEN package.


13.2.5.3Input instructions for the DIS package

(DIS: Discretization File)

KEY TYPE DEFAULT DESCRIPTION
NLAY integer - Number of layers in the model grid
NROW integer - Number of rows in the model grid
NCOL integer - Number of columns in the model grid
NPER integer - Number of stress period in the simulation
ITMUNI integer 4 Time unit of model data
LENUNI integer 2 Length unit of model data
LAYCBD_L? integer 0 Flag indicating whether or not a layer
has a Quasi-3D confining bed below
(= 0: no confining bed; else: confining bed)
DELR_C? real - Cell width along rows (or x-axis)
DELC_R? real - Cell width along columns (or y-axis)
TOP real; idf - Top elevation of the first model layer
BOTM_L? real; idf - Bottom of model layers
PERLEN_P? real - Length of stress period
NSTP_P? integer - Number of flow time-steps
TSMULT_P? real 1 Time-step multiplier
SSTR_P? character ss Flag indicating whether the simulation
is transient (ss) or steady state

Notes:

[DIS]

NLAY = 76

NROW = 97

NCOL = 116

NPER = 88

DELC_R? = 100.

DELR_C? = 100.

TOP = 4.

BOTM_L? *F1_L? = 1.

LAYCBD_L? = 0

PERLEN_P1 = 0.000000015741

PERLEN_P2 = 287.

PERLEN_P3:88 = 365.25

NSTP_P1 = 1

NSTP_P2:88 = 12

SSTR_P? = SS

Figure 13.2: Example settings in the DIS package.


13.2.5.4Input instructions for the BAS6 package

(BAS6: Basic Package)

KEY TYPE DEFAULT DESCRIPTION
OPTIONS character free Program options
IBOUND_L? interger; idf - Boundary indicator array
HNOFLO real -9999 Value of head to be assigned to all no-flow cells

Example:

[BAS6]

IBOUND_L? = INPUT\BND_L?.idf

HNOFLO = -999.99

STRT_L? = INPUT\HEAD_steady-state_L?.IDF

Figure 13.3: Example settings in the BAS6 package


13.2.5.5Input instructions for the BCF6 package

(BCF6: Block-Centered Flow)

KEY TYPE DEFAULT DESCRIPTION
IBCFCB integer 0 Flag / unit number for writing cell-by-cell flow
terms (> 0: write to unit number; = 0: no write;
< 0: write for constant-head cells)
HDRY real -9999. Head that is assigned to cells that
are converted to dry during a simulation
IWDFLG integer 0 Flag that determines if the wetting
capability is active (= 0: inactive; else: active)
WETFCT real 1 Factor that is included in the calculation
of the head that is initially established at a
cell when that cell is converted from dry to wet
IWETIT integer 1 The iteration interval for attempting to wet cells
IHDWET integer 0 Flag that determines which equation is used
to define the initial head at cells that become wet
(= 0: h = BOT + WETFCT(h_n - BOT);
else: h = BOT + WETFCT(WETDRY))
LTYPE_L? character 0 Combined code for each layer that specifies both
the layer type (LAYCON) and the method of
computing interblock conductance
TRPY_L? real 1 Horizontal anisotropy factor for each layer
SF1_L? real; idf - Primary storage coefficient
TRAN_L? real; idf - Transmissivity along rows
HY_L? real; idf - Hydraulic conductivity allowing rows
VCONT_L? real; idf - Vertical hydraulic conductance divided by the
thickness from a layer to the layer below
SF2_L? real; idf - Secondary storage coefficient
WETDRY_L? real; idf - Combination of the wetting threshold and a flag to
indicate which neighbouring cells can cause a cell
to become wet

Example:

[BCF6]

IBCFCB = 1

TRAN_L1:5 * 0.0 = DBASE\KDW\KDW_L:.idf

TRAN_L6 * 0.5 = DBASE\KDW\KDW_L6.idf

TRAN_L7:76 = DBASE\KDW\KDW_L:.idf

VCONT_L? ^-1. = DBASE\VCW\VCW_L?.idf

Figure 13.4: Example settings in the BCF6 package


13.2.5.6Input instructions for the LPF package

(LPF: Layer-Property Flow)

KEY TYPE DEFAULT DESCRIPTION
ILPFCB integer 0 Flag / unit number for writing cell-by-cell
flow terms (> 0: write to unit number; = 0:
no write; < 0: write for constant-head cells)
HDRY real -9999. Head that is assigned to cells that are
converted to dry during a simulation
NPLPF integer 0 Number of LPF parameters (not-used!)
LAYTYP_L? integer 0 Flag for each layer that specifies the layer type
(= 0: confined; else: convertible)
LAYAVG_L? integer 0 Flag for each layer that defines the method
of calculating interblock conductivity
(= 0: harmonic mean; = 1: logarithmic mean;
= 2: arithmetic mean)
CHANI_L? real 1 Horizontal anisotropy factor for each layer
LAYVKA_L? integer 0 Flag for each layer that indicates whether
variable VKA is the hydraulic conductivity (= 0)
or the ratio of horizontal to vertical hydraulic
conductivity (else)
LAYWET_L? integer 0 Flag that determines if the wetting capability
is active (= 0: inactive; else: active)
IWETIT integer 1 The iteration interval for attempting to wet cells
IHDWET integer 0 Flag that determines which equation is used to
define the initial head at cells that become wet
(= 0: h = BOT + WETFCT(h_n - BOT);
else: h = BOT + WETFCT(WETDRY))
HK_L? real; idf - Hydraulic conductivity along rows
HANI_L? real; idf - Ratio of hydraulic conductivity along columns to
hydraulic conductivity along rows
VKA_L? real; idf - Either vertical hydraulic conductivity or the ratio
of horizontal to vertical hydraulic conductivity
depending on the value of LAYVKA
SS_L? real; idf - Specific storage
SY_L? real; idf - Specific yield
VKCB_L? real; idf - Vertical hydraulic conductivity of a Quasi-three-
dimensional confining bed below a layer
WETDRY_L? real; idf - Combination of the wetting threshold and a flag to
indicate which neighbouring cells can cause a cell
to become wet

Caution: VKA is defined differently in iMOD-WQ as compared with the KVA parameter iMODFLOW. In iMODFLOW, KVA, the vertical anisotropy, is multiplied with the horizontal permeability to calculate the vertical conductivities in the permeable part of a modellayer. So in iMODFLOW KVA is a multiplication factor applied to the horizontal anisotropies, whereas in iMOD-WQ it is the ratio of horizontal to vertical conductivities, which amounts to the exact opposite.

Example:

[LPF]

HDRY = 1E+30

NPLPF = 0

ILPFCB = 50

LAYTYP_L? = 0

LAYAVG_L? = 0

CHANI_L? = 1.0

HK_L? = 25.0

LAYVKA_L? = 1

VKA_L? = 10.0

SS_L? = 1E-5

Figure 13.5: Example settings in the LPF package


13.2.5.7Input instructions for the CHD package

(CHD: Time-Variant Specified-Head)

KEY TYPE DEFAULT DESCRIPTION
MXACTC integer 1000 Maximum number of constant-head
boundary in use during any stress period
OPTION character Optional list of character values
MCHDSYS integer - Maximum number of constant-head systems
SHEAD_P?_S?_L? real; idf - Head at the boundary at the start of the
stress period
EHEAD_P?_S?_L? real; idf - Head at the boundary at the end of the
stress period

Notes:

Example:

[CHD]

MXACT = 2000

MCHDSYS = 1

SHEAD_P?_S1_L$ = ..\DBASE\CHD\VERSION_1\CHD_SHEAD_P$_S1_L$.IDF

EHEAD_P?_S1_L$ = ..\DBASE\CHD\VERSION_1\CHD_P$_S1_L$.IDF

Figure 13.6: Example settings in the CHD package


13.2.5.8Input instructions for the DRN package

(DRN: Drain)

KEY TYPE DEFAULT DESCRIPTION
MXACTD integer 1000 Maximum number of drains in use
during any stress period
IDRNCB integer 0 Flag and a unit number for saving
OPTION character Optional list of character values
MDRNSYS integer - Maximum number of drain systems
ELEVATION_P?_S?_L? real; idf - Elevation of the drain
COND_P?_S?_L? real; idf - Hydraulic conductance of the interface
between the aquifer and the drain

Notes: It is not obliged to give values for ELEVATION and COND. However, if for a certain cell, ELEVATION and COND are not given both (with a value other than nodata), no drain is placed in that cell.

Example:

[DRN]

MXACTD = 25000000

IDRNCB = 1

MDRNSYS = 1

ELEVATION_P$_L1 = ..\DBASE\DRN\VERSION_1\DRN-ELEV.IDF

COND_P$_L1 = 10000.

Figure 13.7: Example settings in the DRN package


13.2.5.9Input instructions for the RIV package

(RIV: River)

KEY TYPE DEFAULT DESCRIPTION
MXACTR integer 1000 Maximum number of rivers in
use during any stress period
IRIVCB integer 0 Flag and unit number for saving
OPTION character aux rivssmdens Optional list of character
noprint values
MRIVSYS integer - Maximum number of river
systems
STAGE_P?_S?_L? real; idf nodata Head in the river
COND_P?_S?_L? real; idf nodata Riverbed hydraulic conductance
RBOT_P?_S?_L? real; idf nodata Elevation of the bottom of the
riverbed
RIVSSMDENS_P?_S?_L? real; idf nodata Boundary river density

Notes:

Example:

[RIV]

MXACTR = 25000000

IRIVCB = 1

MRIVSYS = 3

STAGE_P$_S1_L1 = ..\DBASE\RIV\VERSION1\RIV-NILE-STAGE.IDF

COND_P$_S1_L1 = ..\DBASE\RIV\VERSION1\RIV-NILE-COND.IDF

RBOT_P$_S1_L1 = ..\DBASE\RIV\VERSION1\RIV-NILE-BOT.IDF

STAGE_P$_S2_L1 = ..\DBASE\RIV\VERSION1\RIV-DRAIN-STAGE.IDF

COND_P$_S2_L1 = ..\DBASE\RIV\VERSION1\RIV-DRAIN-COND.IDF

RBOT_P$_S2_L1 = ..\DBASE\RIV\VERSION1\RIV-DRAIN-BOT.IDF

STAGE_P$_S3_L1 = ..\DBASE\RIV\VERSION1\RIV-CANAL-STAGE.IDF

COND_P$_S3_L1 = ..\DBASE\RIV\VERSION1\RIV-CANAL-COND.IDF

RBOT_P$_S3_L1 = ..\DBASE\RIV\VERSION1\RIV-CANAL-BOT.IDF

RIVSSMDENS_P$_S?_L1 = 1000.

Figure 13.8: Example settings in the LPF package


13.2.5.10Input instructions for the WEL package

(WEL: Well)

KEY TYPE DEFAULT DESCRIPTION
MXACTW integer 1000 Maximum number of wells in use
during any stress period
IWELCB integer 0 Flag and a unit number for saving
OPTION character aux noprint Optional list of character values
AUTOLAY integer 0 0: wells assigned to model layers
based on "_Lx" in key WEL. 1:
wells automatically assigned to
model layers based on TOP/BOT of
filter as specified in IPF file
MWELSYS integer - Maximum number of well systems
NODATA_P? real -9999. Nodata value
WEL_P?_S?_L? real; idf - Well point-file (IPF). Skip the "_L?"
indicator in case AUTOLAY = 1.

Notes:

Example:

[WEL]

MXACTW = 2000000

IWELCB = 0

MWELSYS = 1

WEL_P$_S1_L? = ..\DBASE\WELLS\VERSION_1\WEL_L?.IPF

Figure 13.9: Example 1 settings in the WEL package

Example for AUTOLAY = 1:

[WEL]

MXACTW = 2000000

IWELCB = 0

AUTOLAY = 1

MWELSYS = 1

WEL_P$_S1_L? = ..\DBASE\WELLS\VERSION_1\WEL_L?.IPF

Figure 13.10: Example 2 settings in the WEL package


13.2.5.11Input instructions for the GHB package

(GHB: General-Head Boundary)

KEY TYPE DEFAULT DESCRIPTION
MXACTB integer 1000 Maximum number of general-
head boundary in use during
any stress period
IGHBCB integer 0 Flag and a unit number for
saving
OPTION character aux Optional list of character
ghbssmdense values
noprint
MGHBSYS integer - Maximum number of general-
head boundary systems
BHEAD_P?_S?_L? real; idf nodata The head on the boundary
COND_P?_S?_L? real; idf nodata The hydraulic conductance of
the interface between the
aquifer cell and the boundary
GHBSSMDENS_P?_S?_L? real; idf nodata Boundary general-head density

Notes:

Example:

[GHB]

MXACTB = 3000000

IGHBCB = 1

MGHBSYS = 4

BHEAD_P?_S1_L1 = ..\DBASE\GHB\VERSION1\GHB-HEAD.IDF

COND_P?_S1_L1 = ..\DBASE\GHB\VERSION1\GHB-COND.IDF

BHEAD_P?_S2_L1 = ..\DBASE\GHB\VERSION1\RIV-NILE-STAGE.IDF

COND_P?_S2_L1 = ..\DBASE\GHB\VERSION1\RIV-NILE-COND.IDF

BHEAD_P?_S3_L1 = ..\DBASE\GHB\VERSION1\RIV-DRAIN-STAGE.IDF

COND_P?_S3_L1 = ..\DBASE\GHB\VERSION1\RIV-DRAIN-COND.IDF

BHEAD_P?_S4_L1 = ..\DBASE\GHB\VERSION1\RIV-CANAL-STAGE.IDF

COND_P?_S4_L1 = ..\DBASE\GHB\VERSION1\RIV-CANAL-COND.IDF

GHBSSMDENS_P?_S$_L1 = ..\DBASE\GHB\VERSION1\GHB-DENS.IDF

Figure 13.11: Example settings in the GHB package


13.2.5.12Input instructions for the RCH package

(RCH: Recharge)

KEY TYPE DEFAULT DESCRIPTION
NRCHOP integer 3 Recharge option code (= 1: recharge is only
applied to the top layer grid; = 2: vertical
distribution of recharge is specified in
layer variable IRCH; = 3: recharge is applied
to the highest active cell)
IRCHCB integer 0 Flag and a unit number for saving
INRECH_P? integer - RECH read flag
INIRCH_P? integer - IRCH read flag
RECH_P? real; idf nodata Recharge flux (L/T)
IRCH_P? integer; idf - Layer number variable that defines the layer
in each vertical column where recharge is applied

Notes: If INRECH and INIRCH are not specified, iMOD-WQ determines appropriate values internally. This is in fact recommended.

Example:

[RCH]

INRECH = 1

RECH_P$ = DBASE\RCH\VERSION_1\RCH-RATE.IDF

Figure 13.12: Example settings in the RCH package


13.2.5.13Input instructions for the EVT package

(EVT: Evapotranspiration)

KEY TYPE DEFAULT DESCRIPTION
NEVTOP integer 1 Evapotranspiration (ET) option code (= 1: ET
is calculated only for cells in the top
grid layer; = 2: the cell for each vertical
column is specified by the user in variable IEVT)
IEVTCB integer 0 Flag and a unit number for saving
INSURF_P? integer - SURF read flag
INEVTR_P? integer - EVTR read flag
INEXPD_P? integer - EXDP read flag
INIEVT_P? integer - IEVT read flag
SURF_P? real; idf nodata Elevation of the ET surface
EVTR_P? real; idf nodata Maximum ET flux (volumetric flow rate
per unit area (L/T))
EXDP_P? real; idf nodata ET Extinction depth
IEVT_P? integer; idf - Layer number variable that defines the layer
in each vertical column where ET is applied

Notes: If INSURF, INEVTR, INEXPD and/or INIEVT are not specified, iMOD-WQ determines appropriate values internally. This is in fact recommended.

Example:

[EVT]

SURF_P? = DBASE\EVT\VERSION_1\EVT-SURFACE.IDF

EVTR_P1 :99 :2 = DBASE\EVT\VERSION_1\EVT-MAX_SUMMER.IDF

EVTR_P2 :100 :2 = DBASE\EVT\VERSION_1\EVT-MAX_WINTER.IDF

EXPD_P? = DBASE\EVT\VERSION_1\EVT-EXTINCTION_DEPTH.IDF

Figure 13.13: Example settings in the EVT package


13.2.5.14Input instructions for the PCG package

(PCG: Preconditioned Conjugate-Gradient)

KEY TYPE DEFAULT DESCRIPTION
MXITER integer 200 Maximum number of outer iterations
ITER1 integer 30 Number of inner iterations
NPCOND integer 1 Flag used to select the matrix preconditioning method
(= 1: Modified Incomplete Cholesky; = 2: Polynomial)
HCLOSE real 1.00E-06 Head change criterion for convergence; in units of length
RCLOSE real 0.1 Residual criterion for convergence; in units of cubic
length per time
RELAX real 0.98 Relaxation parameter used with NPCOND = 1
NBPOL integer 2 Flag for eigenvalue estimation if NPCOND = 2
IPRPCG integer 1 Printout interval for PCG
MUTPCG integer 0 Flag that controls printing of convergence information
for the solver (= 0: maximum head change and residual
each iteration; = 1: only the total numb of iterations;
= 2: no printing; = 3: only if convergence fails)
DAMP real 1 Damping factor

Example:

[PCG]

MXITER = 200

ITER1 = 150

HCLOSE = 0.0001

RCLOSE = 1.0

RELAX = 0.98

NBPOL = 0

IPRPCG = 1

Figure 13.14: Example settings in the PCG package


13.2.5.15Input instructions for the OC package

(OC: Output Control Option)

KEY TYPE DEFAULT DESCRIPTION
SAVEHEAD_P?_L? logical False Save head at the end of the stress
period
SAVEBUDGET_P?_L? logical False Save budget at the end of the stress
period
SAVECONCLAYER_L? logical False Save concentrations for specified
layers
SAVEHEADTEC_P?_L? logical False Save head at the end of the stress
period (Tecplot)
SAVECONCTEC_P?_L? logical False Save concentration at the end of the
stress period (Tecplot)
SAVEVXTEC_P?_L? logical False Save vx at the end of the stress
period (Tecplot)
SAVEVYTEC_P?_L? logical False Save vy at the end of the stress
period (Tecplot)
SAVEVZTEC_P?_L? logical False Save vz at the end of the stress
period (Tecplot)
TECFILE character concvelo.tec Tecplot output file
TECITMUN character Y Tecplot output time unit.
S for seconds; M for minutes;
H for hours; D for days or Y for years
SAVEHEADOUT_P?_L? logical False Save head difference at the end of
the stress period
SAVECONCOUT_P?_L? logical False Save concentration difference at the
end of the stress period
OUTFILE character concvelo.out Output file with differences
HEADCOLID integer - Head class identifiers
CONCCOLID integer - Concentration class identifiers
HEADCOLVAL real - Head class values
CONCCOLVAL real - Concentration class values
SAVEHEADVTK_P? logical False Save head at the end of the stress
period (VTK)
SAVECONCVTK_P? logical False Save concentration at the end of the
stress period (VTK)
SAVEVELOVTK_P? logical False Save velocities at the end of the
stress period (VTK)
PVDFILE character results.pvd VTK PVD-output file

Notes: Chapter 13.3 explains in detail the output options of iMOD-WQ

Example:

[OC]

SAVEHEAD_P?_L? = TRUE

SAVECONCLAYER_L? = TRUE

SAVEBUDGET_P?_L1 = TRUE

SAVEHEADTEC_P?_L? = TRUE

SAVECONCTEC_P?_L? = TRUE

SAVEVXTEC_P?_L? = TRUE

SAVEVYTEC_P?_L? = TRUE

SAVEVZTEC_P?_L? = TRUE

MUTPCG = 1

Figure 13.15: Example settings in the OC package


13.2.5.16Input instructions for the VDF package

(VDF: Variable Density Flow)

KEY TYPE DEFAULT DESCRIPTION
MTDNCONC integer 1 MT3DMS species number that will be
used in the equation of state to compute
fluid density (= 0: fluid density is
specified by INDENSE and DENSE; and flow
will be uncoupled with transport;
> 0: fluid density is computed using
MT3DMS species number that corresponds
with MTDNCONC; and flow will be coupled
with transport
MFNADVFD integer 1 Flag that determines how the internodal
density values used to conserve fluid
mass will be calculated
(= 2: central-in-space; else: upstream-weighted)
NSWTCPL integer 1 Maximum number of nonlinear coupling
iterations for the flow and transport
solutions (if = 0 or 1: explicit coupling
using one timestep lag). If = -1, the flow
solution will be recalculated only for:
- The first transport step of the
simulation, or
- The last transport step of the MODFLOW
timestep, or
- The maximum density change at a cell
is greater than DNSCRIT.
IWTABLE integer 0 Flag used to activate the variable-density
water-table corrections (= 0: inactive;
= 1: active)
KEY TYPE DEFAULT DESCRIPTION
DENSEMIN real 0.00E+00 Minimum fluid density (= 0: computed fluid
density is not limited by DENSEMIN; > 0:
computed fluid density cannot be less
than the value of DENSEMIN)
DENSEMAX real 0.00E+00 Maximum fluid density (= 0: computed fluid
density is not limited by DENSEMAX;
> 0: computed fluid density cannot be
greater than the value of DENSEMAX)
DNSCRIT real - Convergence criterion; in units of
fluid density; for convergence between
flow and transport
DENSEREF real 1000 Reference fluid density; mostly specified
as the density of freshwater
DENSESLP real 0.7143 The slope d(rho)/d(C) of the linear
equation of state that relates solute
concentration for fluid density
FIRSTDT real 1.00E-03 Length of first timestep used to start
the simulation whenever the IMT
Process is active
INDENSE_P? integer 1 Flag that is read only if MTDNCONC is
zero (< 0: reuse values; = 0: DENSE will
be set to DENSEREF; >= 1: values for
DENSE will be read; = 2: values read
for DENSE are assumed to represent solute
concentration and will be converted to
density values using the equation of state
DENSITIES_P?_L? real; idf - Fluid density array

Notes: The default value for DENSESLP is derived from the assumption of a seawater total dissolved solids (TDS) concentration of \(35 g/L\) and a seawater density of \(1025 g/L\). Compared with freshwater having a reference density (DENSEREF) of \(1000 g/L\), this yields: DEN SESLP = (1025 − 1000)/(35 − 0.) = 0.7134. If density is defined based on chloride rather than chloride concentrations, and seawater chloride concentration is set at \(18 g/L\), DENSESLP becomes: DEN SESLP = (1025 − 1000)/(16.6 − 0.) = 1.3889.

Example:

[VDF]

MTDNCONC = 1

MFNADVFD = 1

NSWTCPL = 1

IWTABLE = 0

DENSEMIN = 1000.

DENSEMAX = 1021.

DENSEREF = 1000.

DENSESLP = 1.265

Figure 13.16: Example settings in the VDF package


13.2.5.17Input instructions for the BTN package

(BTN: Basic Transport)

KEY TYPE DEFAULT DESCRIPTION
HEADING1 character First line of title for simulation run
HEADING2 character Second line of title for simulation run
NLAY integer - Number of layers
NROW integer - Number of rows
NCOL integer - Number of columns
NPER integer - Number of stress periods
NCOMP integer 1 Total number of species
MCOMP integer 1 Number of mobile species
TUNIT character D Unit for time
LUNIT character M Unit for length
MUNIT character K Unit for mass
LAYCON_L? integer 0 Model layer type code (=0 confined; >0
unconfined or convertible)
DELR_C? real - Cell width along rows (or x-axis)
DELC_R? real - Cell width along columns (or y-axis)
HTOP real; idf - Top elevation of the first model layer
DZ_L? real; idf - Cell thickness
PRSITY_L? real; idf - Porosity (or "mobile" porosity if the
dual-domain model is used)
ICBUND_L? integer; idf - Concentration boundary indicator array
shared by all species
SCONC_T?_L? real; idf - Starting concentration
CINACT real -9999. Value indication inactive cells
THKMIN real 1.00E-02 Minimum saturated thickness relative to
total cell thickness below which the cell
is considered inactive
IFMTCN integer 0 Output control option
IFMTNP integer 0 Output control option
IFMTRF integer 0 Output control option
IFMTDP integer 0 Output control option
SAVUCN logical T Output control option
NPRS integer 0 (Number of) Interval for printing or saving
simulation results
TIMPRS real - Total elapsed times (NPRS times) at which
simulation results should be printed/saved
e.g. TIMPRS= 1, 100.0, 365.0, 730.0, 3650.0
NPROBS integer 1 Observation point output frequency
OBS_L? real; ipf - Observation points
CHKMAS logical T Flag for saving mass budget summary file
NPRMAS integer 1 Output frequency
PERLEN_P? real - Length of stress period
NSTP_P? integer - Number of flow time-steps
TSMULT_P? real 1 Time-step multiplier
TSLNGH_P? real 1 Length of time-steps if geometric
progression of time-steps is not used
in flow model
DT0_P? real 0.00E+00 Transport time size
MXSTRN_P? integer 3000 Maximum transport steps allowed in one
flow time-step
TTSMULT_P? real 1 Transport step multiplier (only for fully
implicit finite-difference method)
TTSMAX_P? real 0.00E+00 Maximum transport steps step size (only
for fully implicit finite-difference method)

Notes:

Example:

[BTN]

NLAY = 35

NROW = 100

NCOL = 100

NPER = 1

NCOMP = 6

MCOMP = 6

DZ_L? = DBASE\DIS\THICKNESS\D_L?.IDF

ICBUND_L$ = 1

PRSITY_L$ = 0.25

SCONC_T1_L? = DBASE\BTN\CONC_50000123000000_C1_L?.IDF

SCONC_T2_L? = DBASE\BTN\CONC_50000123000000_C2_L?.IDF

SCONC_T3_L? = DBASE\BTN\CONC_50000123000000_C3_L?.IDF

SCONC_T4_L? = DBASE\BTN\CONC_50000123000000_C4_L?.IDF

SCONC_T5_L? = DBASE\BTN\CONC_50000123000000_C5_L?.IDF

SCONC_T6_L? = DBASE\BTN\CONC_50000123000000_C6_L?.IDF

CINACT = -999

NPRS = 0

IFMTCN = 0

CHKMAS = TRUE

NPRMAS = 1

NPROBS = 1

TSMULT_P? = 2.0

DT0_P? = 100.0

MXSTRN_P? = 10000

TTSMULT_P? = 1.0

TTSMAX_P? = 0.0

NSTP_P1 = 1

NSTP_P2 = 1

NSTP_P3 = 1

NSTP_P4 = 1

NSTP_P5 = 1

NSTP_P6 = 1

NSTP_P7 = 1

Figure 13.17: Example settings in the BTN package


13.2.5.18Input instructions for the ADV package

(ADV: Advection)

KEY TYPE DEFAULT DESCRIPTION
MIXELM integer -1 Advection solution option (= 0: Finite-Difference;
= 1: MOC; = 2: MMOC; = 3: HMOC; = -1: TVD)
PERCEL real 1 Number of cells that advection is allowed to move
in one transport step (Courant number)
MXPART integer 0 Maximum number of moving particles allowed
NADVFD integer 0 Weighting scheme for the Finite-difference method
ITRACK integer - Particle tracking option (= 1: first-order Euler;
= 2: fourth-order Runge-Kutta; = 3: hybrid)
WD real - Concentration weighting factor
DCEPS real - Particle distribution control parameter for the
MOC scheme
NPLANE integer - Particle distribution control parameter for the
MOC scheme
NPL integer - Particle distribution control parameter for the
MOC scheme
NPH integer - Particle distribution control parameter for the
MOC scheme
NPMIN integer - Particle distribution control parameter for the
MOC scheme
NPMAX integer - Particle distribution control parameter for the
MOC scheme
INTERP integer - Solution flag for the MMOC scheme
NLSINK integer - Solution flag for the MMOC scheme
NPSINK integer - Solution flag for the MMOC scheme
DCHMOC real - Critical cell concentration gradient for controlling
the selective use of the MOC or MMOC scheme

Example:

[ADV]

MIXELM = -1

PERCEL = 1.0

Figure 13.18: Example settings in the ADV package


13.2.5.19Input instructions for the DSP package

(DSP: Dispersion)

KEY TYPE DEFAULT DESCRIPTION
AL_L? real; idf - Longitudinal dispersivity
TRPT_L? real - Ratio of horizontal transverse dispersivity
to longitudinal dispersivity
TRPV_L? real - Ratio of vertical transverse dispersivity
to longitudinal dispersivity
DMCOEF_L? real - Effective molecular diffusion coefficient

Example:

[DSP]

AL_L? = 2.0

TRPT_L? = 0.1

TRPV_L? = 0.01

DMCOEF_L? = 8.64E-05

Figure 13.19: Example settings in the DSP package


13.2.5.20Input instructions for the SSM package

(SSM: Source/Sink Mixing)

KEY TYPE DEFAULT DESCRIPTION
MXSS integer 100000 Maximum number of all point sinks and sources
included in the flow model
CRCH_T?_P? real; idf - Concentration of recharge flux
CEVT_T?_P? real; idf - Concentration of evapotranspiration flux
CCHD_T?_P?_L? real; idf 0.0 Concentration of constant-head cells
CWEL_T?_P?_L? real; idf 0.0 Concentration of wells
CDRN_T?_P?_L? real; idf 0.0 Concentration of drains
CRIV_T?_P?_L? real; idf 0.0 Concentration of rivers
CGHB_T?_P?_L? real; idf 0.0 Concentration of general-head-dependent
boundary cells
CMAL_T?_P?_L? real; idf 0.0 Concentration of mass-loading
CTVC_T?_P?_L? real; idf 0.0 Concentration of time-varying constant-
concentration cell

Example:

[SSM]

MXSS = 3000000

CRCH_T$_P? = 0.0

CGHB_T$_P1_L? = 16.6

Figure 13.20: Example settings in the SSM package

Notes:

Example:

[SSM]

MXSS = 3000000

CRCH_T$_P? = 0.0

CGHB_T$_P1_L? = 16.6

Figure 13.21: Example settings in the SSM package


13.2.5.21Input instructions for the RCT package

(RCT: Chemical Reaction)

KEY TYPE DEFAULT DESCRIPTION
ISOTHM integer - Flag indication type of sorption
(= 1: linear; = 2: Freundlich; = 3: Langmuir;
= 4: onequilibrium; = 5: dual-domain mass
transfer (without sorption); = 6: dual-domain
mass transfer (with sorption); = 0: None
IREACT integer 0 Flag indicating which type of kinetic rate
reaction is simulated (=0: no kinetic rate
reaction is simulated; =1: first-order
irreversible reaction)
IGETSC integer 0 Flag for initial condition of nonequilibrium
sorbed/immobile phase
RHOB_L? real; idf - Bulk density of the porous medium
PRSITY2_L? real; idf - Porosity of the immobile domain if a dual-
domain system is simulated
SRCONC_T?_L? real; idf - Initial concentration for the sorbed or
immobile liquid phase
SP1_T?_L? real; idf - First sorption constant (equilibrium constant)
SP2_T?_L? real; idf - Second sorption constant or dual-domain mass
transfer rate
RC1_T?_L? real; idf - First-order rate reaction constant for the
dissolved phase
RC2_T?_L? real; idf - First-order rate reaction constant for the
sorbed phase

Notes: IRCTOP < 2 is not allowed in iMOD-WQ. If IRCTOP is set to a value < 2, internally it is reset to 2.

Example:

[RCT]

ISOTHM = 1

IREACT = 1

IRCTOP = 2

RHOB_L1:15 = 1600.0

RHOB_L16 = 1400.0

RHOB_L17:19 = 1600.0

SP1_T1_L1:3 = 0.000103

SP1_T1_L4 = 0.0000976

SP1_T1_L5:7 = 0.0000728

SP1_T1_L8:15 = 0.000507

SP1_T1_L16 = 0.0171

SP1_T1_L17 = 0.000184

SP1_T1_L18 = 0.000207

SP1_T1_L19 = 0.000107

SP2_T$_L$ = 0.0

RC1_T$_L$ = 0.0

RC2_T$_L$ = 0.0

Figure 13.22: Example settings in the RCT package


13.2.5.22Input instructions for the UDR package

(UDR: User Difined Reaction)

KEY TYPE DEFAULT DESCRIPTION
ISOTHM integer - Flag indication type of sorption (= 1: linear;
= 2: Freundlich; = 3: Langmuir; = 0: None
IREACT integer - if positive; it indicates the reaction module
number. =0: = 0; no reaction is simulated
(tracer transport)
NCRXNDATA integer - number of constant reaction parameter values
NVRXNDATA integer - number of variable reaction parameter arrays
ISOLVER integer - Solver options; see RT3D v2.5 manual
IRCTOP integer 2 Input option for reaction package data arrays
RHOB_L? real; idf - Bulk density of the porous medium
SP1_T?_L? real; idf - First sorption constant. For linear sorption;
SP1 is the distribution coefficient Kd [\(L^3M^{-1}\)].
Other details are described in the MT3DMS
manual
SP2_T?_L? real; idf - SP2 is the second sorption constant. Other
details are described in the MT3D manual
ATOL_T? real - Absolute tolerance parameter
RTOL_T? real - Relative tolerance parameter
RC1 real - User-defined spatially constant reaction
parameter nr. 1
RC2 real - User-defined spatially constant reaction
parameter nr. 2
RC3 real - User-defined spatially constant reaction
parameter nr. 3
RC4 real - User-defined spatially constant reaction
parameter nr. 4
RC5 real - User-defined spatially constant reaction
parameter nr. 5
RC6 real - User-defined spatially constant reaction
parameter nr. 6
RC7 real - User-defined spatially constant reaction
parameter nr. 7
VRC1_L? real; idf - User-defined spatially variable reaction
parameter nr. 1
VRC2_L? real; idf - User-defined spatially variable reaction
parameter nr. 2
VRC3_L? real; idf - User-defined spatially variable reaction
parameter nr. 3
VRC4_L? real; idf - User-defined spatially variable reaction
parameter nr. 4

Notes:

Example:

[UDR]

ISOTHM = 1

IREACT = 10

ISOLVER = 1

NCRXNDATA = 5

NVRXNDATA = 1

ISOLVER = 1

IRCTOP = 2

RHOB_L$ = DBASE\DRY_BULK_DENSITIES\DRY_BULK_DENSITY_KG_PER_M3_L$.IDF

SP1_T1 = 0.0

SP1_T2_L$ = DBASE\DISTRIBUTION_COEFFICIENTS\KD_NH4\KD_NH4_M3_PER_KG_L$.IDF

SP1_T3:6_L$ = 0.0

SP2_T$ = 0.0

ATOL_T$ = 1E-6

RTOL_T$ = 2E-6

RC1 = 0.082

RC2 = 0.06

RC3 = 0.000003

RC4 = 0.048333

RC5 = 0.048333

VRC1_L$ = DBASE\REACTION_RATES\OM_DECAY\K_SOM_PER_DAY_L$.IDF

Figure 13.23: Example settings in the UDR package


13.2.5.23Input instructions for the FTL package

(FTL: Flow-Transport Link)

KEY TYPE DEFAULT DESCRIPTION
IBOUND_L? character - Boundary of the iMOD flow model
FLOW_RESULT_DIR character - iMOD flow model results directory
FLOWTYPE character ss Flag to indicate steady-state (ss)
or transient (tr) iMOD simulation
TYPELABEL character steady-state Time stamp label that is used for the
steady-state iMOD files, e.g.
bdgfrf_steady-state_L1.idf
BDG character Budget terms of the iMOD flow model
FTLSOURCE integer 1 Flag indicting whether budget terms are
read from iMOD files (ftlsource = 1)
or from the standard MODFLOW .lmt
file (ftlsource = 2)

Notes:

Example:

[FTL]

FTLSOURCE = 1

FLOWTYPE = SS

FLOW_RESULT_DIR = DBASE\FLOW

IBOUND_L$ = DBASE\IBOUND\BND_L$.IDF

BDG = BDGBND, BDGFFF, BDGFRF, BDGFLF, BDGWEL

Figure 13.24: Example settings in the FTL package


13.2.5.24Input instructions for the GCG package

(GCG: Generalized Conjugate Gradient Solver)

KEY TYPE DEFAULT DESCRIPTION
MXITER integer 1000 Maximum number of outer iterations
ITER1 integer 30 Maximum number of inner iterations
ISOLVE integer 3 Type of preconditioner used with Lanczos/ORTHOMIN
acceleration (= 1: Jacobi; = 2: SSOR; = 3: MIC)
NCRS integer 0 Flag for treatment of dispersion cross terms (= 0:
dispersion cross terms lumped to the right-hand
side; = 1: full dispersion tensor)
ACCL real 1 Relaxation factor for the SSOR preconditioner
CCLOSE real 1.00E-06 Convergence criterion
IPRGCG integer 0 Interval for printing maximum concentration changes
to the output file

Example:

[GCG]

MXITER = 1

ITER1 = 50

ISOLVE = 2

CCLOSE = 1E-06

Figure 13.25: Example settings in the GCG package