GWF-MAW

Structure of Blocks

FOR EACH SIMULATION

    BEGIN OPTIONS
      [AUXILIARY <auxiliary(naux)>]
      [BOUNDNAMES]
      [PRINT_INPUT]
      [PRINT_HEAD]
      [PRINT_FLOWS]
      [SAVE_FLOWS]
      [HEAD FILEOUT <headfile>]
      [BUDGET FILEOUT <budgetfile>]
      [BUDGETCSV FILEOUT <budgetcsvfile>]
      [NO_WELL_STORAGE]
      [FLOW_CORRECTION]
      [FLOWING_WELLS]
      [SHUTDOWN_THETA <shutdown_theta>]
      [SHUTDOWN_KAPPA <shutdown_kappa>]
      [MAW_FLOW_REDUCE_CSV FILEOUT <mfrcsvfile>]
      [TS6 FILEIN <ts6_filename>]
      [OBS6 FILEIN <obs6_filename>]
      [MOVER]
    END OPTIONS
    BEGIN DIMENSIONS
      NMAWWELLS <nmawwells>
    END DIMENSIONS
    BEGIN PACKAGEDATA
      <ifno> <radius> <bottom> <strt> <condeqn> <ngwfnodes> [<aux(naux)>] [<boundname>]
      <ifno> <radius> <bottom> <strt> <condeqn> <ngwfnodes> [<aux(naux)>] [<boundname>]
      ...
    END PACKAGEDATA
    BEGIN CONNECTIONDATA
      <ifno> <icon> <cellid(ncelldim)> <scrn_top> <scrn_bot> <hk_skin> <radius_skin>
      <ifno> <icon> <cellid(ncelldim)> <scrn_top> <scrn_bot> <hk_skin> <radius_skin>
      ...
    END CONNECTIONDATA

FOR ANY STRESS PERIOD

    BEGIN PERIOD <iper>
      <ifno> <mawsetting>
      <ifno> <mawsetting>
      ...
    END PERIOD

Explanation of Variables

Block: OPTIONS

  • auxiliary defines an array of one or more auxiliary variable names. There is no limit on the number of auxiliary variables that can be provided on this line; however, lists of information provided in subsequent blocks must have a column of data for each auxiliary variable name defined here. The number of auxiliary variables detected on this line determines the value for naux. Comments cannot be provided anywhere on this line as they will be interpreted as auxiliary variable names. Auxiliary variables may not be used by the package, but they will be available for use by other parts of the program. The program will terminate with an error if auxiliary variables are specified on more than one line in the options block.

  • BOUNDNAMES keyword to indicate that boundary names may be provided with the list of multi-aquifer well cells.

  • PRINT_INPUT keyword to indicate that the list of multi-aquifer well information will be written to the listing file immediately after it is read.

  • PRINT_HEAD keyword to indicate that the list of multi-aquifer well heads will be printed to the listing file for every stress period in which “HEAD PRINT” is specified in Output Control. If there is no Output Control option and PRINT_HEAD is specified, then heads are printed for the last time step of each stress period.

  • PRINT_FLOWS keyword to indicate that the list of multi-aquifer well flow rates will be printed to the listing file for every stress period time step in which “BUDGET PRINT” is specified in Output Control. If there is no Output Control option and “PRINT_FLOWS” is specified, then flow rates are printed for the last time step of each stress period.

  • SAVE_FLOWS keyword to indicate that multi-aquifer well flow terms will be written to the file specified with “BUDGET FILEOUT” in Output Control.

  • HEAD keyword to specify that record corresponds to head.

  • headfile name of the binary output file to write head information.

  • BUDGET keyword to specify that record corresponds to the budget.

  • FILEOUT keyword to specify that an output filename is expected next.

  • budgetfile name of the binary output file to write budget information.

  • BUDGETCSV keyword to specify that record corresponds to the budget CSV.

  • budgetcsvfile name of the comma-separated value (CSV) output file to write budget summary information. A budget summary record will be written to this file for each time step of the simulation.

  • NO_WELL_STORAGE keyword that deactivates inclusion of well storage contributions to the multi-aquifer well package continuity equation.

  • FLOW_CORRECTION keyword that activates flow corrections in cases where the head in a multi-aquifer well is below the bottom of the screen for a connection or the head in a convertible cell connected to a multi-aquifer well is below the cell bottom. When flow corrections are activated, unit head gradients are used to calculate the flow between a multi-aquifer well and a connected GWF cell. By default, flow corrections are not made.

  • FLOWING_WELLS keyword that activates the flowing wells option for the multi-aquifer well package.

  • shutdown_theta value that defines the weight applied to discharge rate for wells that limit the water level in a discharging well (defined using the HEAD_LIMIT keyword in the stress period data). SHUTDOWN_THETA is used to control discharge rate oscillations when the flow rate from the aquifer is less than the specified flow rate from the aquifer to the well. Values range between 0.0 and 1.0, and larger values increase the weight (decrease under-relaxation) applied to the well discharge rate. The HEAD_LIMIT option has been included to facilitate backward compatibility with previous versions of MODFLOW but use of the RATE_SCALING option instead of the HEAD_LIMIT option is recommended. By default, SHUTDOWN_THETA is 0.7.

  • shutdown_kappa value that defines the weight applied to discharge rate for wells that limit the water level in a discharging well (defined using the HEAD_LIMIT keyword in the stress period data). SHUTDOWN_KAPPA is used to control discharge rate oscillations when the flow rate from the aquifer is less than the specified flow rate from the aquifer to the well. Values range between 0.0 and 1.0, and larger values increase the weight applied to the well discharge rate. The HEAD_LIMIT option has been included to facilitate backward compatibility with previous versions of MODFLOW but use of the RATE_SCALING option instead of the HEAD_LIMIT option is recommended. By default, SHUTDOWN_KAPPA is 0.0001.

  • MAW_FLOW_REDUCE_CSV keyword to specify that record corresponds to the output option in which a new record is written for each multi-aquifer well and for each time step in which the user-requested extraction or injection rate is reduced by the program.

  • mfrcsvfile name of the comma-separated value (CSV) output file to write information about multi-aquifer well extraction or injection rates that have been reduced by the program. Entries are only written if the extraction or injection rates are reduced.

  • TS6 keyword to specify that record corresponds to a time-series file.

  • FILEIN keyword to specify that an input filename is expected next.

  • ts6_filename defines a time-series file defining time series that can be used to assign time-varying values. See the “Time-Variable Input” section for instructions on using the time-series capability.

  • OBS6 keyword to specify that record corresponds to an observations file.

  • obs6_filename name of input file to define observations for the MAW package. See the “Observation utility” section for instructions for preparing observation input files. Tables ref{table:gwf-obstypetable} and ref{table:gwt-obstypetable} lists observation type(s) supported by the MAW package.

  • MOVER keyword to indicate that this instance of the MAW Package can be used with the Water Mover (MVR) Package. When the MOVER option is specified, additional memory is allocated within the package to store the available, provided, and received water.

Block: DIMENSIONS

  • nmawwells integer value specifying the number of multi-aquifer wells that will be simulated for all stress periods.

Block: PACKAGEDATA

  • ifno integer value that defines the feature (well) number associated with the specified PACKAGEDATA data on the line. IFNO must be greater than zero and less than or equal to NMAWWELLS. Multi-aquifer well information must be specified for every multi-aquifer well or the program will terminate with an error. The program will also terminate with an error if information for a multi-aquifer well is specified more than once.

  • radius radius for the multi-aquifer well. The program will terminate with an error if the radius is less than or equal to zero.

  • bottom bottom elevation of the multi-aquifer well. If CONDEQN is SPECIFIED, THIEM, SKIN, or COMPOSITE, BOTTOM is set to the cell bottom in the lowermost GWF cell connection in cases where the specified well bottom is above the bottom of this GWF cell. If CONDEQN is MEAN, BOTTOM is set to the lowermost GWF cell connection screen bottom in cases where the specified well bottom is above this value. The bottom elevation defines the lowest well head that will be simulated when the NEWTON UNDER_RELAXATION option is specified in the GWF model name file. The bottom elevation is also used to calculate volumetric storage in the well.

  • strt starting head for the multi-aquifer well. The program will terminate with an error if the starting head is less than the specified well bottom.

  • condeqn character string that defines the conductance equation that is used to calculate the saturated conductance for the multi-aquifer well. Possible multi-aquifer well CONDEQN strings include: SPECIFIED–character keyword to indicate the multi-aquifer well saturated conductance will be specified. THIEM–character keyword to indicate the multi-aquifer well saturated conductance will be calculated using the Thiem equation, which considers the cell top and bottom, aquifer hydraulic conductivity, and effective cell and well radius. SKIN–character keyword to indicate that the multi-aquifer well saturated conductance will be calculated using the cell top and bottom, aquifer and screen hydraulic conductivity, and well and skin radius. CUMULATIVE–character keyword to indicate that the multi-aquifer well saturated conductance will be calculated using a combination of the Thiem and SKIN equations. MEAN–character keyword to indicate the multi-aquifer well saturated conductance will be calculated using the aquifer and screen top and bottom, aquifer and screen hydraulic conductivity, and well and skin radius. The CUMULATIVE conductance equation is identical to the SKIN LOSSTYPE in the Multi-Node Well (MNW2) package for MODFLOW-2005. The program will terminate with an error condition if CONDEQN is SKIN or CUMULATIVE and the calculated saturated conductance is less than zero; if an error condition occurs, it is suggested that the THIEM or MEAN conductance equations be used for these multi-aquifer wells.

  • ngwfnodes integer value that defines the number of GWF nodes connected to this (IFNO) multi-aquifer well. NGWFNODES must be greater than zero.

  • aux represents the values of the auxiliary variables for each multi-aquifer well. The values of auxiliary variables must be present for each multi-aquifer well. The values must be specified in the order of the auxiliary variables specified in the OPTIONS block. If the package supports time series and the Options block includes a TIMESERIESFILE entry (see the “Time-Variable Input” section), values can be obtained from a time series by entering the time-series name in place of a numeric value.

  • boundname name of the multi-aquifer well cell. BOUNDNAME is an ASCII character variable that can contain as many as 40 characters. If BOUNDNAME contains spaces in it, then the entire name must be enclosed within single quotes.

Block: CONNECTIONDATA

  • ifno integer value that defines the feature (well) number associated with the specified CONNECTIONDATA data on the line. IFNO must be greater than zero and less than or equal to NMAWWELLS. Multi-aquifer well connection information must be specified for every multi-aquifer well connection to the GWF model (NGWFNODES) or the program will terminate with an error. The program will also terminate with an error if connection information for a multi-aquifer well connection to the GWF model is specified more than once.

  • icon integer value that defines the GWF connection number for this multi-aquifer well connection entry. ICONN must be greater than zero and less than or equal to NGWFNODES for multi-aquifer well IFNO.

  • cellid is the cell identifier, and depends on the type of grid that is used for the simulation. For a structured grid that uses the DIS input file, CELLID is the layer, row, and column. For a grid that uses the DISV input file, CELLID is the layer and CELL2D number. If the model uses the unstructured discretization (DISU) input file, CELLID is the node number for the cell. One or more screened intervals can be connected to the same CELLID if CONDEQN for a well is MEAN. The program will terminate with an error if MAW wells using SPECIFIED, THIEM, SKIN, or CUMULATIVE conductance equations have more than one connection to the same CELLID.

  • scrn_top value that defines the top elevation of the screen for the multi-aquifer well connection. If CONDEQN is SPECIFIED, THIEM, SKIN, or COMPOSITE, SCRN_TOP can be any value and is set to the top of the cell. If CONDEQN is MEAN, SCRN_TOP is set to the multi-aquifer well connection cell top if the specified value is greater than the cell top. The program will terminate with an error if the screen top is less than the screen bottom.

  • scrn_bot value that defines the bottom elevation of the screen for the multi-aquifer well connection. If CONDEQN is SPECIFIED, THIEM, SKIN, or COMPOSITE, SCRN_BOT can be any value and is set to the bottom of the cell. If CONDEQN is MEAN, SCRN_BOT is set to the multi-aquifer well connection cell bottom if the specified value is less than the cell bottom. The program will terminate with an error if the screen bottom is greater than the screen top.

  • hk_skin value that defines the skin (filter pack) hydraulic conductivity (if CONDEQN for the multi-aquifer well is SKIN, CUMULATIVE, or MEAN) or conductance (if CONDEQN for the multi-aquifer well is SPECIFIED) for each GWF node connected to the multi-aquifer well (NGWFNODES). If CONDEQN is SPECIFIED, HK_SKIN must be greater than or equal to zero. HK_SKIN can be any value if CONDEQN is THIEM. Otherwise, HK_SKIN must be greater than zero. If CONDEQN is SKIN, the contrast between the cell transmissivity (the product of geometric mean horizontal hydraulic conductivity and the cell thickness) and the well transmissivity (the product of HK_SKIN and the screen thicknesses) must be greater than one in node CELLID or the program will terminate with an error condition; if an error condition occurs, it is suggested that the HK_SKIN be reduced to a value less than K11 and K22 in node CELLID or the THIEM or MEAN conductance equations be used for these multi-aquifer wells.

  • radius_skin real value that defines the skin radius (filter pack radius) for the multi-aquifer well. RADIUS_SKIN can be any value if CONDEQN is SPECIFIED or THIEM. If CONDEQN is SKIN, CUMULATIVE, or MEAN, the program will terminate with an error if RADIUS_SKIN is less than or equal to the RADIUS for the multi-aquifer well.

Block: PERIOD

  • iper integer value specifying the starting stress period number for which the data specified in the PERIOD block apply. IPER must be less than or equal to NPER in the TDIS Package and greater than zero. The IPER value assigned to a stress period block must be greater than the IPER value assigned for the previous PERIOD block. The information specified in the PERIOD block will continue to apply for all subsequent stress periods, unless the program encounters another PERIOD block.

  • ifno integer value that defines the well number associated with the specified PERIOD data on the line. IFNO must be greater than zero and less than or equal to NMAWWELLS.

  • mawsetting line of information that is parsed into a keyword and values. Keyword values that can be used to start the MAWSETTING string include: STATUS, FLOWING_WELL, RATE, WELL_HEAD, HEAD_LIMIT, SHUT_OFF, RATE_SCALING, and AUXILIARY.

      STATUS <status>
      FLOWING_WELL <fwelev> <fwcond> <fwrlen> 
      RATE <rate>
      WELL_HEAD <well_head>
      HEAD_LIMIT <head_limit>
      SHUT_OFF <minrate> <maxrate> 
      RATE_SCALING <pump_elevation> <scaling_length> 
      AUXILIARY <auxname> <auxval> 
    
  • status keyword option to define well status. STATUS can be ACTIVE, INACTIVE, or CONSTANT. By default, STATUS is ACTIVE.

  • FLOWING_WELL keyword to indicate the well is a flowing well. The FLOWING_WELL option can be used to simulate flowing wells when the simulated well head exceeds the specified drainage elevation.

  • fwelev elevation used to determine whether or not the well is flowing.

  • fwcond conductance used to calculate the discharge of a free flowing well. Flow occurs when the head in the well is above the well top elevation (FWELEV).

  • fwrlen length used to reduce the conductance of the flowing well. When the head in the well drops below the well top plus the reduction length, then the conductance is reduced. This reduction length can be used to improve the stability of simulations with flowing wells so that there is not an abrupt change in flowing well rates.

  • rate is the volumetric pumping rate for the multi-aquifer well. A positive value indicates recharge and a negative value indicates discharge (pumping). RATE only applies to active (STATUS is ACTIVE) multi-aquifer wells. If the Options block includes a TIMESERIESFILE entry (see the “Time-Variable Input” section), values can be obtained from a time series by entering the time-series name in place of a numeric value. By default, the RATE for each multi-aquifer well is zero.

  • well_head is the head in the multi-aquifer well. WELL_HEAD is only applied to constant head (STATUS is CONSTANT) and inactive (STATUS is INACTIVE) multi-aquifer wells. If the Options block includes a TIMESERIESFILE entry (see the “Time-Variable Input” section), values can be obtained from a time series by entering the time-series name in place of a numeric value. The program will terminate with an error if WELL_HEAD is less than the bottom of the well.

  • head_limit is the limiting water level (head) in the well, which is the minimum of the well RATE or the well inflow rate from the aquifer. HEAD_LIMIT can be applied to extraction wells (RATE < 0) or injection wells (RATE > 0). HEAD_LIMIT can be deactivated by specifying the text string “OFF”. The HEAD_LIMIT option is based on the HEAD_LIMIT functionality available in the MNW2 package for MODFLOW-2005. The HEAD_LIMIT option has been included to facilitate backward compatibility with previous versions of MODFLOW but use of the RATE_SCALING option instead of the HEAD_LIMIT option is recommended. By default, HEAD_LIMIT is “OFF”.

  • SHUT_OFF keyword for activating well shut off capability. Subsequent values define the minimum and maximum pumping rate that a well must exceed to shutoff or reactivate a well, respectively, during a stress period. SHUT_OFF is only applied to injection wells (RATE<0) and if HEAD_LIMIT is specified (not set to “OFF”). If HEAD_LIMIT is specified, SHUT_OFF can be deactivated by specifying a minimum value equal to zero. The SHUT_OFF option is based on the SHUT_OFF functionality available in the MNW2 package for MODFLOW-2005. The SHUT_OFF option has been included to facilitate backward compatibility with previous versions of MODFLOW but use of the RATE_SCALING option instead of the SHUT_OFF option is recommended. By default, SHUT_OFF is not used.

  • minrate is the minimum rate that a well must exceed to shutoff a well during a stress period. The well will shut down during a time step if the flow rate to the well from the aquifer is less than MINRATE. If a well is shut down during a time step, reactivation of the well cannot occur until the next time step to reduce oscillations. MINRATE must be less than maxrate.

  • maxrate is the maximum rate that a well must exceed to reactivate a well during a stress period. The well will reactivate during a timestep if the well was shutdown during the previous time step and the flow rate to the well from the aquifer exceeds maxrate. Reactivation of the well cannot occur until the next time step if a well is shutdown to reduce oscillations. maxrate must be greater than MINRATE.

  • RATE_SCALING activate rate scaling. If RATE_SCALING is specified, both PUMP_ELEVATION and SCALING_LENGTH must be specified. RATE_SCALING cannot be used with HEAD_LIMIT. RATE_SCALING can be used for extraction or injection wells. For extraction wells, the extraction rate will start to decrease once the head in the well lowers to a level equal to the pump elevation plus the scaling length. If the head in the well drops below the pump elevation, then the extraction rate is calculated to be zero. For an injection well, the injection rate will begin to decrease once the head in the well rises above the specified pump elevation. If the head in the well rises above the pump elevation plus the scaling length, then the injection rate will be set to zero.

  • pump_elevation is the elevation of the multi-aquifer well pump (PUMP_ELEVATION). PUMP_ELEVATION should not be less than the bottom elevation (BOTTOM) of the multi-aquifer well.

  • scaling_length height above the pump elevation (SCALING_LENGTH). If the simulated well head is below this elevation (pump elevation plus the scaling length), then the pumping rate is reduced.

  • AUXILIARY keyword for specifying auxiliary variable.

  • auxname name for the auxiliary variable to be assigned AUXVAL. AUXNAME must match one of the auxiliary variable names defined in the OPTIONS block. If AUXNAME does not match one of the auxiliary variable names defined in the OPTIONS block the data are ignored.

  • auxval value for the auxiliary variable. If the Options block includes a TIMESERIESFILE entry (see the “Time-Variable Input” section), values can be obtained from a time series by entering the time-series name in place of a numeric value.

Example Input File

Example 1

    begin options
      print_input
      print_head
      print_flows
      boundnames
      head fileout maw-1.head.bin
      budget fileout maw-1.cbc
    end options
    
    begin dimensions
      nmawwells 2
    end dimensions
    
    begin packagedata
    # ifno radius bottom strt condeqn ngwnodes name
         1   0.15 -100.0 9.14   thiem        2 pwell
         2   0.25 -100.0 9.14   thiem        1 iwell
    end packagedata
    
    begin connectiondata
    # ifno conn l  r  c  stop sbot  k  rskin
         1    1 1 51 51     0    0  0      0
         1    2 2 51 51     0    0  0      0
         2    1 2  2  2     0    0  0      0
    end connectiondata
    
    begin period 1
      1 rate_scaling -90. 5.
      1 rate -1767.
      2 status inactive
    end period
    
    begin period 100
      2 status active
      2 rate 529.
      1 rate -2767.
    end period

Example 2

    begin options
      print_input
      print_head
      print_flows
      boundnames
    end options
    
    begin dimensions
      nmawwells 2
    end dimensions
    
    begin packagedata
    #  ifno radius bottom strt   condeqn ngwnodes name
          1   0.15 -100.0 9.14      mean        2 pwell
          2   0.25 -100.0 9.14      mean        1 iwell
    end packagedata
    
    begin connectiondata
    # ifno conn l  r  c  stop  sbot  k  rskin
         1    1 1 51 51    0. -100. 361.  .25
         1    2 2 51 51    0. -100. 361.  .25
         2    1 2  2  2  -50. -100. 361   .50
    end connectiondata
    
    begin period 1
      1 rate_scaling -90. 5.
      1 rate -1767.
      2 status inactive
    end period
    
    begin period 100
      2 status active
      2 rate 529.
      1 rate -2767.
    end period

Example 3

    begin options
      print_input
      print_head
      print_flows
      boundnames
      flowing_wells
    end options
    
    begin dimensions
      nmawwells 1
    end dimensions
    
    begin packagedata
    # ifno radius bottom strt   condeqn ngwnodes name
         1   0.15 -514.9 9.14 specified        2 ntwell
    end packagedata
    
    begin connectiondata
    # ifno conn l  r  c  stop   sbot         k  rskin
         1    1 1 51 51   -50 -514.9  111.3763      0
         1    2 2 51 51   -50 -514.9  445.9849      0
    end connectiondata
    
    begin period 1
      1 rate 0
      1 flowing_well 0. 7500. 0.5
    end period

Available Observation Types

Stress Package Observation Type ID1 ID2 Description
MAW head ifno or boundname -- Head in a multi-aquifer well. If boundname is specified, boundname must be unique for each multi-aquifer well.
MAW from-mvr ifno or boundname -- Simulated inflow to a well from the MVR package for a multi-aquifer well or a group of multi-aquifer wells.
MAW maw ifno or boundname icon or -- Simulated flow rate for a multi-aquifer well or a group of multi-aquifer wells and its aquifer connection(s). If boundname is not specified for ID, then the simulated multi-aquifer well-aquifer flow rate at a specific multi-aquifer well connection is observed. In this case, ID2 must be specified and is the connection number icon.
MAW rate ifno or boundname -- Simulated pumping rate for a multi-aquifer well or a group of multi-aquifer wells.
MAW rate-to-mvr ifno or boundname -- Simulated well discharge that is available for the MVR package for a multi-aquifer well or a group of multi-aquifer wells.
MAW fw-rate ifno or boundname -- Simulated flowing well flow rate for a multi-aquifer well or a group of multi-aquifer wells.
MAW fw-to-mvr ifno or boundname -- Simulated flowing well discharge rate that is available for the MVR package for a multi-aquifer well or a group of multi-aquifer wells.
MAW storage ifno or boundname -- Simulated storage flow rate for a multi-aquifer well or a group of multi-aquifer wells.
MAW constant ifno or boundname -- Simulated constant-flow rate for a multi-aquifer well or a group of multi-aquifer wells.
MAW conductance ifno or boundname icon or -- Simulated well conductance for a multi-aquifer well or a group of multi-aquifer wells and its aquifer connection(s). If boundname is not specified for ID, then the simulated multi-aquifer well conductance at a specific multi-aquifer well connection is observed. In this case, ID2 must be specified and is the connection number icon.
MAW fw-conductance ifno or boundname -- Simulated flowing well conductance for a multi-aquifer well or a group of multi-aquifer wells.

Example Observation Input File

    BEGIN OPTIONS
      DIGITS 10
      PRINT_INPUT
    END OPTIONS
    
    BEGIN CONTINUOUS FILEOUT my_model.maw.csv
      m1head    head  1
      m1rate01  maw   1 1
      m1rate02  maw   1 2
      m1rate    maw   well-1
      m2rate01  maw   well-2
    END CONTINUOUS