FOR EACH SIMULATION:

Data Set 0

[#Text]
A character variable (up to 199 characters) that is printed when the file is read. The “#” character must be in column 1, and, accordingly, the variable starts in column 2. Any characters can be included in Text.

Note 1: Item 0 can be repeated multiple times. Text will be printed to the MODFLOW listing (output) file.

Data Set 0a1 (MODFLOWOWHM only)

[TABFILE NTAB FILEIO TIMEOPTION]
TABFILE is a keyword that triggers reading subsequent tabfile information.

NTAB is the number of tabfiles that will be read.

FILIO is a flag that determines if the tabfile is loaded entirely into memory or if only the portion that pertains to the current timestep is read in. If FILEIO is set to 0, then the entire tabfile is loaded into memory. If it is set to a nonzero value, then only the portion of the tabfile that pertains to the current time step is loaded into memory.

TIMEOPTION is a required flag that must be one of the two following keywords.
•SIMTIME The keyword “SIMTIME” (without quotes) specifies that tabfile times use the model simulated time with time units specified by the DIS and a starting point of 0. This is the default operation and will occur if TIMEOPTION is not specified.
•REALTIME The keyword “REALTIME” (without quotes) specifies that tabfile times use decimal years that begin with the date specified in the DIS with the keyword STARTTIME. IF STARTTIME is not specified in the DIS, then MODFLOW will raise an error message and stop the program. 


Data Set 0a2 (MODFLOWOWHM only)

[TABNAM TABLOCATION]
READ NTAB TIMES IF NTAB>0
TABNAM is a unique name (max of 20 characters) that identifies the tabfile. It is also used to link a model feature (i.e. WELLID) to a specific tabfile.

TABLOCATION is either the path and filename (relative or absolute) of the tabfile or is the keyword “EXTERNAL” followed by a unit number. The unit number must refer to the tabfile that is opened by the Name file. The tabfile is selfcounted, stored, and associated with the unique ID TABNAM.



Data Set 0a3 (MODFLOWOWHM only)

[PrintOption NLNK]
READ IF NTAB>0
PrintOption is a required flag that must be one of the two following keywords.
TABPRINT, The keyword “TABPRINT” (without quotes) will produce a detailed output of the tabfile information that is applied at each time step to the list file.
TABNOPRINT, The keyword “TABNOPRINT” will not produce tabfile output to the list file.

NLNK is the number features that will be linked to a tabfile.



Data Set 0a4 (MODFLOWOWHM only)

[WELLID TABNAM TSFAC]
READ NLNK TIMES IF NLNK>0
WELLID is the name of the MNW2 well that is linked to the tabfile TABNAM.

TABNAM is a unique name (max of 20 characters) that identifies the tabfile. It is also used to link segments to a specific tabfile.

TSFAC is a feature’s scale factor. This factor is multiplied with the tabfile value before it is applied to a feature.



Data Set 1


MNWMAX IWL2CB MNWPRNT [OPTION]


MNWMAX [NODTOT] IWL2CB MNWPRNT [OPTION]

The absolute value of MNWMAX is the maximum number of multinode wells (MNW) to be simulated. If MNWMAX is a negative number, NODTOT is read. Negative values of MNWMAX are only currently supported in MODFLOW2005, MODFLOWNWT, and MODFLOWOWHM.

Maximum number of nodes.
The code automatically estimates the maximum number of nodes (NODTOT) as required for allocation of arrays. However, if a large number of horizontal wells are being simulated, or possibly for other reasons, this default estimate proves to be inadequate, a new input option has been added to allow the user to directly specify a value for NODTOT. If this is a desired option, then it can be implemented by specifying a negative value for "MNWMAX"the first value listed in Record 1 (Line 1) of the MNW2 input data file. If this is done, then the code will assume that the very next value on that line will be the desired value of "NODTOT". The model will then reset "MNWMAX" to its absolute value. The value of "IWL2CB" will become the third value on that line, etc.

is a flag and a unit number:
•if IWL2CB > 0, then it is the unit number to which MNW cellbycell flow terms will be recorded whenever cellbycell budget data are written to a file (as determined by the outputcontrol options of MODFLOW).
•if IWL2CB = 0, then MNW cellbycell flow terms will not be printed or recorded.
•if IWL2CB < 0, then well injection or withdrawal rates and water levels in the well and its multiple cells will be printed in the main MODFLOW listing (output) file whenever cellbycell budget data are written to a file (as determined by the output control options of MODFLOW). 
is a flag controlling the level of detail of information about multinode wells to be written to the main MODFLOW listing (output) file. If MNWPRNT = 0, then only basic well information will be printed in the main MODFLOW output file; increasing the value of MNWPRNT yields more information, up to a maximum level of detail corresponding with MNWPRNT = 2.

is an optional list of character values in the style of “AUXILIARY abc” or “AUX abc” where “abc” is the name of an auxiliary parameter to be read for each multinode well as part of dataset 4a. Up to 20 parameters can be specified, each of which must be preceded by “AUXILIARY” or “AUX.” These parameters will not be used by the MNW2 Package, but they will be available for use by other packages.
In addition, either of the keywords CBCALLOCATE or CBC will cause memory to be allocated for cellbycell budget terms.



For each MultiNode well (that is, repeat dataset 2 MNWMAX times):

Data Set 2a

WELLID NNODES
is the name of the well. This is a unique alphanumeric identification label for each well. The text string is limited to 20 alphanumeric characters. If the name of the well includes spaces, then enclose the name in quotes.

is the number of cells (nodes) associated with this well. NNODES normally is > 0, but for the case of a vertical borehole, setting NNODES < 0 will allow the user to specify the elevations of the tops and bottoms of well screens or open intervals (rather than grid layer numbers), and the absolute value of NNODES equals the number of open intervals (or well screens) to be specified in dataset 2d. If this option is used, then the model will compute the layers in which the open intervals occur, the lengths of the open intervals, and the relative vertical position of the open interval within a model layer (for example, see figure 14 and related discussion).

Note 2: If NNODES < 0 and elevations indicate multiple well screens or open intervals within a single model layer, then the model will assign a single equivalent composite well screen (see additional discussion in text).


Data Set 2b

LOSSTYPE PUMPLOC Qlimit PPFLAG PUMPCAP
is a character flag to determine the userspecified model for well loss (equation 2). Available options (that is, place one of the following approved words in this field) are:
•NONE there are no well corrections and the head in the well is assumed to equal the head in the cell. This option (hWELL = hn) is only valid for a singlenode well (NNODES = 1). (This is equivalent to using the original WEL Package of MODFLOW, but specifying the singlenode well within the MNW2 Package enables the use of constraints.)
•THIEM this option allows for only the celltowell correction at the well based on the Thiem (1906) equation; head in the well is determined from equation 2 as (hWELL = hn + AQn), and the model computes A on the basis of the userspecified well radius (Rw) and previously defined values of cell transmissivity and grid spacing. Coefficients B and C in equation 2 are automatically set = 0.0. User must define Rw in dataset 2c or 2d.
•SKIN this option allows for formation damage or skin corrections at the well: hWELL = hn + AQn + BQn (from equation 2), where A is determined by the model from the value of Rw, and B is determined by the model from Rskin and Kskin. User must define Rw, Rskin, and Kskin in dataset 2c or 2d.
•GENERAL head loss is defined with coefficients A, B, and C and power exponent P (hWELL = hn + AQn + BQn + CQnP). A is determined by the model from the value of Rw. User must define Rw, B, C, and P in dataset 2c or 2d. A value of P = 2.0 is suggested if no other data are available (the model allows 1.0 ≤ P ≤3.5). Entering a value of C = 0 will result in a “linear” model in which the value of B is entered directly (rather than entering properties of the skin, as with the SKIN option).
•SPECIFYcwc the user specifies an effective conductance value (equivalent to the combined effects of the A, B, and C wellloss coefficients expressed in equation 15) between the well and the cell representing the aquifer, CWC. User must define CWC in dataset 2c or 2d. If there are multiple screens within the grid cell or if partial penetration corrections are to be made, then the effective value of CWC for the node may be further adjusted automatically by MNW2. 
is an integer flag pertaining to the location along the borehole of the pump intake (if any). If PUMPLOC = 0, then either there is no pump or the intake location (or discharge point for an injection well) is assumed to occur above the first active node associated with the multinode well (that is, the node closest to the land surface or to the wellhead). If PUMPLOC > 0, then the cell in which the intake (or outflow) is located will be specified in dataset 2e as a LAYROWCOL grid location. For a vertical well only, specifying PUMPLOC < 0, will enable the option to define the vertical position of the pump intake (or outflow) as an elevation in dataset 2e (for the given spatial grid location [ROWCOL] defined for this well in 2d).

is an integer flag that indicates whether the water level (head) in the well will be used to constrain the pumping rate. If Qlimit = 0, then there are no constraints for this well. If Qlimit > 0, then pumpage will be limited (constrained) by the water level in the well, and relevant parameters are constant in time and defined below in dataset 2f. If Qlimit < 0, then pumpage will be limited (constrained) by the water level in the well, and relevant parameters can vary with time and are defined for every stress period in dataset 4b.

is an integer flag that determines whether the calculated head in the well will be corrected for the effect of partial penetration of the well screen in the cell. If PPFLAG = 0, then the head in the well will not be adjusted for the effects of partial penetration. If PPFLAG > 0, then the head in the well will be adjusted for the effects of partial penetration if the section of well containing the well screen is vertical (as indicated by identical rowcolumn locations in the grid). If NNODES < 0 (that is, the open intervals of the well are defined by top and bottom elevations), then the model will automatically calculate the fraction of penetration for each node and the relative vertical position of the well screen. If NNODES > 0, then the fraction of penetration for each node must be defined in dataset 2d (see below) and the well screen will be assumed to be centered vertically within the thickness of the cell (except if the well is located in the uppermost model layer that is under unconfined conditions, in which case the bottom of the well screen will be assumed to be aligned with the bottom boundary of the cell and the assumed length of well screen will be based on the initial head in that cell).

is an integer flag and value that determines whether the discharge of a pumping (withdrawal) well (Q < 0.0) will be adjusted for changes in the lift (or total dynamic head) with time. If PUMPCAP = 0, then the discharge from the well will not be adjusted on the basis of changes in lift. If PUMPCAP > 0 for a withdrawal well, then the discharge from the well will be adjusted on the basis of the lift, as calculated from the most recent water level in the well. In this case, data describing the headcapacity relation for the pump must be listed in datasets 2g and 2h, and the use of that relation can be switched on or off for each stress period using a flag in dataset 4a. The number of entries (lines) in dataset 2h corresponds to the value of PUMPCAP. If PUMPCAP does not equal 0, it must be set to an integer value of between 1 and 25, inclusive.

Note 3: Discharge is reduced under PUMPCAP independently from a reduction related to constraints (and Qlimit). If both are applied to the same well, then the most restrictive condition from the two criteria will take precedence. PUMPCAP is only applied for withdrawal wells (that is, if the specified pumping rate (Qdes in dataset 4a) is negative in sign).


If LOSSTYPE ≠ NONE:

Data Set 2c

[Rw Rskin Kskin B C P CWC]
Include the appropriate coefficients in 2c, as consistent with the specified LOSSTYPE defined in 2b, as summarized also in table A1–1.
•if LOSSTYPE = THIEM, then specify Rw (the radius of the well).
•if LOSSTYPE = SKIN, then specify Rw, Rskin (the radius to the outer limit of the skin), and Kskin (the hydraulic conductivity of the skin).
•if LOSSTYPE = GENERAL, then specify Rw, B, C, and P, where the last three parameters are coefficients in the wellloss equation (equation 2). (See notes and suggestions for GENERAL option under 2b above.)
•if LOSSTYPE = SPECIFYcwc, then specify CWC (the celltowell conductance; see equation 15).
Note 4: Any of the parameters in dataset 2c can be assumed to be constant for the entire length of the open interval of the well (in which case appropriate values are simply specified above), or it can be assumed that they vary along the length of the open interval of the well (in which case any negative value should be specified above and the actual values then specified for each node or open interval in dataset 2d below). For example, if Rw = 1, then it is assumed that Rw varies along the length of the well and a real value of Rw must be defined for each node (or open interval) of this well in dataset 2d.
Table A1–1. Summary of parameter definition requirements for available wellloss options.

Losstype

Parameter definition requirements for datasets 2c and (or) 2d

RW

Rskin

Kskin

B

C

P

CWC

NONE

__

__

__

__

__

__

__

THIEM

X

__

__

__

__

__

__

SKIN

X

X

X

__

__

__

__

GENERAL

X

__

__

X

X

X

__

SPECIFYcwc

__

__

__

__

__

__

X



For each node (or open interval) of this well the user must use either input format 1 or input format 2; in either case, dataset 2d must have NNODES records:

Data Set 2d

2d1 Input format 1, for NNODES > 0
LAY ROW COL [Rw Rskin Kskin B C P CWC PP]
2d2 Input format 2, for NNODES < 0
Ztop Zbotm ROW COL [Rw Rskin Kskin B C P CWC]
are the layer, row, and column numbers of each model cell (node) for the current well. If NNODES > 0, then a total of NNODES model cells (nodes) must be specified for each well (and dataset 2d must contain NNODES records). In the list of nodes defining the multinode well, the data list must be constructed and ordered so that the first node listed represents the node closest to the wellhead, the last node listed represents the node furthest from the wellhead, and all nodes are listed in sequential order from the top to the bottom of the well (corresponding to the order of first to last well nodes). A particular node in the grid can be associated with more than one multinode well.

are the top and bottom elevations of the open intervals (or screened intervals) of a vertical well. These values are only read if NNODES < 0 in dataset 2a. The absolute value of NNODES indicates how many open intervals are to be defined, and so must correspond exactly to the number of records in dataset 2d for this well. In the list of intervals defining the multinode well, the data list must be constructed and ordered so that the first interval listed represents the shallowest one, the last interval listed represents the deepest one, and all intervals are listed in sequential order from the top to the bottom of the well. If an interval partially or fully intersects a model layer, then a node will be defined in that cell. If more than one open interval intersects a particular layer, then a lengthweighted average of the celltowell conductances will be used to define the wellnode characteristics; for purposes of calculating effects of partial penetration, the cumulative length of well screens will be assumed to be centered vertically within the thickness of the cell. If the well is a singlenode well by definition of LOSSTYPE = NONE and the defined open interval straddles more than one model layer, then the well will be associated with the cell where the center of the open interval exists.

if the relevant variables were set to a negative value in dataset 2c, then that means that they vary in value among nodes (or open intervals, if NNODES < 0) and should be defined here in dataset 2d according to the definitions given under dataset 2c. Which values are specified here, if any, depends on which were set to a negative value in dataset 2c.
the radius to the outer limit of the skin

the hydraulic conductivity of the skin

coefficients in the wellloss equation (equation 2). (See notes and suggestions for GENERAL option of LOSSTYPE under 2b above.)

the celltowell conductance; see equation 15


is the fraction of partial penetration for this cell (see PPFLAG in dataset 2b). Only specify if PPFLAG > 0 and NNODES > 0.

Note 5: If NNODES < 0 and elevations indicate multiple well screens or open intervals within a single model layer, then the model will assign a single equivalent composite well screen for the node based on the ratio of the screen length to layer thickness (see additional discussion in text). However, if CWC values are specified explicitly by the user, then it is assumed that these values are already appropriate for the actual length of screen and are not further adjusted by this ratio (that is, equation 37 is not applied).


If PUMPLOC ≠ 0:

Data Set 2e

[PUMPLAY PUMPROW PUMPCOL] [Zpump]
are the layer, row, and column numbers, respectively, of the cell (node) in this multinode well where the pump intake (or outflow) is located. The location defined in dataset 2e should correspond with one of the nodes listed in 2d for this multinode well. These variables are only read if PUMPLOC > 0 in 2b.

is the elevation of the pump intake (or discharge pipe location for an injection well). Zpump is read only if PUMPLOC < 0; in this case, the model assumes that the borehole is vertical and will compute the layer of the grid in which the pump intake is located.

Note 6: If the intake location (or discharge point for an injection well) is specified by node and that node does not correspond with one of the nodes listed for the well, or if the intake location is specified by elevation and the elevation is above the top of the open interval, then the intake location will be assumed to occur above the first active node associated with the multinode well (that is, the node closest to the land surface or to the wellhead).


If Qlimit > 0:

Data Set 2f

Hlim QCUT [Qfrcmn Qfrcmx]
is the limiting water level (head) in the well, which is a minimum for discharging wells and a maximum for injection wells. For example, in a discharging well, when hWELL falls below Hlim, the flow from the well is constrained.

is an integer flag that indicates how pumping limits Qfrcmn and Qfrcmx will be specified. If pumping limits are to be specified as a rate (L3/T), then set QCUT > 0; if pumping limits are to be specified as a fraction of the specified pumping rate (Qdes), then set QCUT < 0. If there is not a minimum pumping rate below which the pump becomes inactive, then set QCUT = 0.

is the minimum pumping rate or fraction of original pumping rate (a choice that depends on QCUT) that a well must exceed to remain active during a stress period. The absolute value of Qfrcmn must be less than the absolute value of Qfrcmx (defined next). Only specify if QCUT ≠ 0.

is the minimum pumping rate or fraction of original pumping rate that must be exceeded to reactivate a well that had been shut off based on Qfrcmn during a stress period. The absolute value of Qfrcmx must be greater than the absolute value of Qfrcmn. Only specify if QCUT ≠ 0.

Note 7: Only specify dataset 2f if the value of Qlimit in dataset 2b is positive. Do not enter fractions as percentages. For example, if QCUT < 0, and the well must exceed 80 percent of the original pumping rate to remain active, then enter a value of “0.8” for Qfrcmn. If QCUT > 0, then the rates specified for Qfrcmn and Qfrcmx follow the sign convention for MODFLOW; that is, for discharging wells the rate should be negative, and for recharging (injection) wells the rate should be positive.


If PUMPCAP > 0:

Data Set 2g

Hlift LIFTq0 LIFTqmax HWtol
is the reference head (or elevation) corresponding to the discharge point for the well. This is typically at or above the land surface, and can be increased to account for additional head loss due to friction in pipes.

is the value of lift (total dynamic head) that exceeds the capacity of the pump. If the calculated lift equals or exceeds this value, then the pump is shut off and discharge from the well ceases.

is the value of lift (total dynamic head) corresponding to the maximum pumping (discharge) rate for the pump. If the calculated lift is less than or equal to LIFTqmax, then the pump will operate at its design capacity, assumed to equal the userspecified value of Qdes (in dataset 4a). LIFTqmax will be associated with the value of Qdes in the first stress period in which Qdes for the well is less than 0.0.

is a minimum absolute value of change in the computed water level in the well allowed between successive iterations; if the value of hWELL changes from one iteration to the next by a value smaller than this tolerance, then the value of discharge computed from the head capacity curves will be locked for the remainder of that time step. It is recommended that HWtol be set equal to a value approximately one or two orders of magnitude larger than the value of HCLOSE, but if the solution fails to converge, then this may have to be adjusted.

Note 8: LIFTq0 and LIFTqmax define the two end points of the performance curve (headcapacity curve) for the pump installed in the well. One or more additional intermediate points on the curve must be defined below in dataset 2h. The model will use linear interpolation to estimate values between defined data points. The number of additional data points on the curve (and lines in dataset 2h) must correspond to the value of PUMPCAP for this well (where PUMPCAP ≤ 25). The data entered are typically provided by the pump manufacturer. The performance curves will only be applied for stress periods in which Qdes < 0.0 and CapMult > 0 (see dataset 4a).


If PUMPCAP > 0:

Data Set 2h

LIFTn Qn
is a value of lift (total dynamic head) that corresponds to a known value of discharge (Qn) for the given pump, specified as the second value in this line.

is the value of discharge corresponding to the height of lift (total dynamic head) specified previously on this line. Sign (positive or negative) is ignored.

Note 9: Repeat 2h PUMPCAP times. That is, the number of lines (records) in dataset 2h must correspond to the value of PUMPCAP for this well. Enter data in order of decreasing lift (that is, start with the point corresponding to the highest value of total dynamic head) and increasing discharge. The discharge value for the last data point in the sequence must be less than the value of LIFTqmax. The data entered are typically provided by the pump manufacturer. These data provide intermediate values for a lookup table in which the end (limiting) values are derived from values specified earlier in dataset 2g.


FOR EACH STRESS PERIOD:

Data Set 3

is an integer value for reusing or reading multinode well data; it can change each stress period. ITMP must be ≥ 0 for the first stress period of a simulation.
•if ITMP > 0, then ITMP is the total number of active multinode wells simulated during the stress period, and only wells listed in dataset 4a will be active during the stress period. Characteristics of each well are defined in datasets 2 and 4.
•if ITMP = 0, then no multinode wells are active for the stress period and the following dataset is skipped.
•if ITMP < 0, then the same number of wells and well information will be reused from the previous stress period and dataset 4 is skipped. 

IF ITMP > 0:
For each multinode well (that is, repeat dataset 4 ITMP times):

Data Set 4a

WELLID Qdes [CapMult] [Cprime] [xyz]
must correspond with one of the names defined in dataset 2a. Including WELLID in this dataset means it will be an active well during this stress period.

is the actual (or maximum desired, if constraints are to be applied) volumetric pumping rate (negative for withdrawal or positive for injection) at the well (L3/T). Qdes should be set to 0 for nonpumping wells. If constraints are applied, then the calculated volumetric withdrawal or injection rate may be adjusted to range from 0 to Qdes and is not allowed to switch directions between withdrawal and injection conditions during any stress period. When PUMPCAP > 0, in the first stress period in which Qdes is specified with a negative value, Qdes represents the maximum operating discharge for the pump; in subsequent stress periods, any different negative values of Qdes are ignored, although values are subject to adjustment for CapMult. If Qdes ≥ 0.0, then pumpcapacity adjustments are not applied.

is a flag and multiplier for implementing headcapacity relations during a given stress period. Only specify if PUMPCAP > 0 for this well. If CapMult ≤ 0, then headcapacity relations are ignored for this stress period. If CapMult = 1.0, then headcapacity relations defined in datasets 2g and 2h are used. If CapMult equals any other positive value (for example, 0.6 or 1.1), then headcapacity relations are used but adjusted and shifted by multiplying the discharge value indicated by the headcapacity curve by the value of CapMult.

is the concentration in the injected fluid. Only specify used if Qdes > 0 and GWT process is active.

represents a list of up to 20 auxiliary variables for a multinode well that have been defined in dataset 1. The auxiliary variables must be present in each repetition of dataset 4a if they are defined in dataset 1.



If Qlimit < 0:

Data Set 4b

Hlim QCUT [Qfrcmn Qfrcmx]
is the limiting water level (head) in the well, which is a minimum for discharging wells and a maximum for injection wells. For example, in a discharging well, when hWELL falls below Hlim, the flow from the well is constrained.

is an integer flag that indicates how pumping limits Qfrcmn and Qfrcmx will be specified. If pumping limits are to be specified as a rate (L3/T), then set QCUT > 0; if pumping limits are to be specified as a fraction of the specified pumping rate (Qdes), then set QCUT < 0. If there is not a minimum pumping rate below which the pump becomes inactive, then set QCUT = 0.

is the minimum pumping rate or fraction of original pumping rate (a choice that depends on QCUT) that a well must exceed to remain active during a stress period. The absolute value of Qfrcmn must be less than the absolute value of Qfrcmx (defined next). Only specify if QCUT ≠ 0.

is the minimum pumping rate or fraction of original pumping rate that must be exceeded to reactivate a well that had been shut off based on Qfrcmn during a stress period. The absolute value of Qfrcmx must be greater than the absolute value of Qfrcmn. Only specify if QCUT ≠ 0.

Note 10: Only specify dataset 4b if the value of Qlimit associated with the well defined by WELLID in dataset 4a is negative (where Qlimit is defined in dataset 2b). Do not enter fractions as percentages. For example, if QCUT < 0, and the well must exceed 80 percent of the original pumping rate to remain active, then enter a value of “0.8” for Qfrcmn. If QCUT > 0, then the rates specified for Qfrcmn and Qfrcmx follow the sign convention for MODFLOW; that is, for discharging wells the rate should be negative, and for recharging (injection) wells the rate should be positive.

