VMODFlex UsersManual
VMODFlex UsersManual
VMODFlex UsersManual
Table of Contents
Part I Introduction 6
1 Installation
...................................................................................................................................
and Licensing 7
2 How to...................................................................................................................................
buy 8
3 Features
................................................................................................................................... 8
...................................................................................................................................
5 3D Viewer Animations 231
6 Exporing
...................................................................................................................................
Views 233
3
4 VMOD Flex Help
...................................................................................................................................
2 Define Numerical Model 391
3 View/Edit
...................................................................................................................................
Grid 396
4 Define
...................................................................................................................................
Properties 401
Edit Attributes
..........................................................................................................................................................
in CSV Form at 409
Theory .......................................................................................................................................................... 411
5 Define
...................................................................................................................................
Boundary Conditions 418
Edit Attributes
..........................................................................................................................................................
in CSV Form at 430
Transport .......................................................................................................................................................... 433
Wells .......................................................................................................................................................... 434
Theory .......................................................................................................................................................... 446
6 Define
...................................................................................................................................
Observations 447
7 Define
...................................................................................................................................
Zone Budget Zones 450
8 Define
...................................................................................................................................
Particles 454
9 Select
...................................................................................................................................
Engines 459
10 Translation
...................................................................................................................................
Settings 459
MODFLOW .......................................................................................................................................................... 460
General ......................................................................................................................................................... 461
MODFLOW .........................................................................................................................................................
Settings 461
Stress Periods
.........................................................................................................................................................
and Time Steps 462
Solvers ......................................................................................................................................................... 463
PCG ......................................................................................................................................... 464
GMG ......................................................................................................................................... 465
WHS ......................................................................................................................................... 467
SIP ......................................................................................................................................... 469
SOR ......................................................................................................................................... 470
SAMG ......................................................................................................................................... 471
NWT ......................................................................................................................................... 473
Recharge.........................................................................................................................................................
and Evapotranspiration 475
Lakes ......................................................................................................................................................... 476
Layer Types......................................................................................................................................................... 477
Cell Rew etting
......................................................................................................................................................... 478
Initial Heads
......................................................................................................................................................... 481
Anisotropy ......................................................................................................................................................... 482
Output Control
......................................................................................................................................................... 483
MODPATH .......................................................................................................................................................... 485
Discharge.........................................................................................................................................................
Options 485
Reference .........................................................................................................................................................
Time 486
MT3DMS .......................................................................................................................................................... 486
MT3DMS_settings
......................................................................................................................................................... 487
MT3DMS_solution_method
......................................................................................................................................................... 488
Technical Review ......................................................................................................................................... 492
MT3DMS_Output_Control
......................................................................................................................................................... 494
11 Run ...................................................................................................................................
Numerical Engines 496
12 View...................................................................................................................................
Results 498
Contours and..........................................................................................................................................................
Color Floods 498
Pathlines and
..........................................................................................................................................................
Tim e Markers 507
Charts .......................................................................................................................................................... 508
Com pare Heads
..........................................................................................................................................................
and Draw dow n 511
13 Duplicating
...................................................................................................................................
Models 513
................................................................................................................................... 515
14 Export
5
6 VMOD Flex Help
1 Introduction
VMOD Flex is a powerful software package that provides the tools for building three-
dimensional groundwater conceptual and numerical models using raw GIS data objects. The
conceptual model approach to groundwater modeling allows you to:
Build a conceptual model of the groundwater system, prior to the simulation - The
geological formations, property model, and boundary conditions are all designed outside the
model grid or mesh; this allows the flexibility to adjust your interpretation of the groundwater
system before applying a discretization method and converting to a numerical model.
Build the model with minimal data pre-processing required - Working with grid-independent
data allows you to maximize the use of your existing GIS data and incorporate physical
geology and geographic conditions before designing a grid or mesh.
Generate and simulate regional and local-scaled models - With support for MODFLOW-
LGR package, you can design local grids around areas of interest, directly within the
conceptual model environment. Calculated heads from a regional model can also be used
as boundary conditions for local-scaled models.
Design the correct model faster - The grid-independent raw data is left intact and is not
constricted by grid cells or mesh elements when modifying the data and project objective.
This allows you to generate multiple numerical models from the same conceptual model.
Make changes to the model data and immediately see results - The conceptual model
environment provides simultaneous 2D and 3D views which are updated whenever
changes to the data are made.
This document provides detailed descriptions of all features and functionality available in
VMOD Flex.
Learning more
See Conceptual Modeling Workflow 284 for
instructions on building a grid-independent
Pre-requisites:
Note: If you intend to build complex projects, it is recommended that you upgrade to the
specifications in the above list.
If you have any problems with your particular system configuration, please contact your
system administrator, or technical support: support@waterloohydrogeologic.com
Once VMOD Flex has been installed on your computer, simply double-click on the VMOD
Flex shortcut icon located on your computer’s desktop.
Alternatively, you can access the software via the start menu by clicking on Start/
Programs/...
Note: If you are using dongle-based hardware licensing, please ensure that your dongle is
connected to your computer (AFTER you have installed the software), and that you have
properly configured your installation.
1.3 Features
VMOD Flex supports the following coordinate systems:
Import spatial and attribute data from a wide variety of data types including:
Points (.XLS, .TXT, .CSV, .MDB, .SHP, .DXF, .TRP)
Polygons (.SHP, .DXF)
Polylines (.SHP, .DXF)
3D Gridded Data (.HDS, .DAT)
Raster Images (.BMP, .TIF, .JPG)
Time Schedules (.XLS)
Surfaces (.DEM, .GRD, .TXT. ,.ASC)
Hydro GeoAnalyst (HGA) Cross Sections (.3XS)
Vertical and Horizontal Wells (.XLS )
Add, remove and modify wells and associated well data including screens intervals, diver
observation points, well tops, well paths (for horizontal only), and pumping schedules
2D & 3D Visualization
Visualize data objects and conceptual model features using interactive 2D and 3D Viewers
Use various screen configurations to display multiple 3D or 2D Viewers simultaneously, e.
g., cascade, tile horizontally/vertically
Zoom, rotate and move data within the viewer using your mouse
Modify viewer settings including the background color and vertical exaggeration (3D Viewer
only)
In 3D Viewers, remove parts of the displayed data by creating cutaways along the X, Y and
Z axis
In 2D Viewers, select individual data object features (points, line, shapes), and then view
the corresponding attribute data in spreadsheet view, and vice versa
Property Modeling
Create property zones from imported or digitized polygon data objects, or from generated
structural zones
Assign property values for conductivity, storage and initial heads using various methods:
-Use a constant value
For linear boundary conditions, define local zones from line segments using an interactive
2D Viewer window
For linear boundary conditions, define parameters at start, end or intermediate vertices
along a line, and interpolate values between each vertex
Set each boundary condition parameter as static or transient
Define boundary condition parameters using one or more of the following methods:
Use a constant value
Map to imported shapefile attributes
Use a surface data object
Use a time schedule data object (for transient boundary conditions)
Use attributes from 3D Gridded data objects
Model Discretization
Discretize your model using the finite difference method or the finite element method.
When working with finite difference grids:
-Specify the number of rows and columns, grid origin, and the angle of rotation
-Choose from the following finite difference grid types: Deformed, Uniform, Semi-
Uniform
-Perform horizontal grid refinement/coarsening within a user-defined row/column
interval
-Define a child grid within a numerical grid for running Local Grid Refinement (LGR)
simulations using the MODFLOW-LGR package
2 Program Overview
In order to become the most efficient and effective in the VMOD Flex environment, it is
recommended that you familiarize yourself with a few simple concepts, terminology, and
where you can find and access things.
Data Objects
All of the data that you interact with in VMOD Flex are referred to as data objects. These can
consist of:
Each data object also has Settings which can be accessed by right clicking on the data
object in the tree, and selecting Settings. The settings provide access to general properties
(statistics, file origin, etc.) and Style settings (symbol colors, shape, labeling, etc.). For more
details, see Data Settings 233
Many wizards and dialog boxes in VMOD Flex require you to select data objects from the
Data Explorer or Conceptual Model Explorer, e.g., when defining horizons, creating property
zones, and assigning attributes to boundary conditions.
When you see a Blue Arrow located next to an input field in a dialog box or a wizard,
this means that a data object selection is required. Simply click the appropriate data object
from the Data Explorer or Conceptual Model Explorer and then click the Blue Arrow button to
insert the data object into the input field.
Model Explorers
The Model explorers contain all of the conceptual models and numerical models, and
corresponding data objects for your project.
2D/3D Viewers
Data objects can be displayed in one or more of the following viewers:
2D View: Plan view; ideal for GIS data, surfaces, well locations, images, etc.
3D View: Ideal for data that have X,Y and Elevation (Z) values defined: Structural Zones,
Wells, Pathlines, Heads along a cross-section, etc.
The "Flex" Viewer: which is available in the numerical modeling workflow, and consists
of a combination of a Layer, Row and Column view and 3D View; the individual views
can be shown/hidden.
Workflows
Groundwater modeling consists of a series of steps that must be completed in a particular
sequence in order to achieve a specific goal. In VMOD Flex, these steps are presented in a
workflow. In the Workflow window, you see the steps that make up a workflow and at each
step there is a corresponding GUI with which you interact. The benefits to you as a modeler
are unlimited:
Simplicity: You know where you are and where you have to go. This dramatically
reduces the learning curve
Accessibility: all the actions you need are available at your fingertips; no more hunting
for an option deep inside a menu.
Convenience: modeling is iterative and requires a frequent amount of flipping between
input, run, and results. The workflow GUI simplifies these back-and-forths.
In VMOD Flex, there is a workflow for Numerical Modeling and a workflow for Conceptual
Modeling.
The workflow panel contains a toolbar and a list of steps required for your current workflow.
Navigating a Workflow
Workflow States
Beside each state in the workflow there is a corresponding icon. The icon helps you to
identify which is your current step, which steps have been completed, and which steps you
may proceed to next. The image below provides an explanation of this.
File Menu
The File menu provides access to standard operations such as open, save, close project.
The Project Preferences can also be modified.
Tools Menu
The Tools menu provides the following options:
Free Memory: allows you to free up the memory usage if you have been running a number of
high-demand, 3D visualization operations
OpenGL Driver
By default, VMOD Flex will attempt to use the vendor provided driver included with your
graphics acceleration hardware. If problems are encountered with the vendor provided
drivers, e.g., poor on-screen display/performance, then VMOD Flex provides the option to use
the Microsoft Driver for OpenGL.
If you are experiencing performance issues, try choosing the "Low" option. The number
presented in parentheses is the number of cells used along the X and Y axis for the virtual
data grid.
Surface Visualization Quality
This parameter controls the visualization quality and speed of surface data objects for the 3D
viewer. This parameter can be used when you want to display surfaces with a large grid size
(eg. 500 * 500 or greater). Similar to the Virtual Data Grid option above, Surfaces will be re-
sampled to the defined grid size (where the number in parentheses represents the uniform
number of rows/columns).
Point Style
This setting provides two options for displaying points in 3D Viewer: Basic and Advanced. If
the Basic option is selected, 3D Viewer will render the point shapes in the 3D Viewer. On
some computers this option may hinder the performance of the 3D Viewer. If the Advanced
option is selected, 3D Viewer will use bitmap images to display the points. If you are
experiencing performance issues display points in 3D Viewer, the Advanced option should be
selected.
Note: The Basic option only supports cube and sphere symbols for displaying points.
Use this option to reset the factory style settings. If you open a project from Hydro
GeoBuilder, some of the new display features may not immediately show up. Please select
Tools / Restore System Settings. Then save the project, close, and reload and this should
correct the problem.
VMOD Flex provides an option to use Project-wide Color Palettes. This is useful when you
have multiple data objects that are rendering the same attribute (eg. heads from different
model runs, conductivity distributions), and you want to make qualitative comparisons
between these. This is challenging when each data object has its own min and max values
and are colored based on this. However it becomes much easier when these data objects all
read from a common color palette.
The Project Color Palette settings allow you to set the min/max values for various attributes;
these can then be used for various data objects and viewers throughout the project.
To enable the Project Color Palette option for a specific data object, this must be enabled in
the Color by Attribute page; see Color by Attribute 253 for more details.
Workflow Menu
Allows to create a new Numerical Model workflow or Conceptual Model workflow.
When you select the appropriate item, a new workflow window will load.
Help Menu
Provides links to help topics, webhelp, and online resources. The Just In Time Help will
display a small help panel below most steps in the workflow window.
Customer Feedback will allow you to submit bugs and suggestions using an online form on
www.waterloohydrogeologic.com
The About screen will show the version and build you are using along with your registration
details (name, company, serial number)
License / Request will load a form where you can request a license. Complete the form and
submit this using the e-mail address provided.
License / Install will allow you to install a .LIC file that you have received from Technical
support.
For more details on licensing, please refer to the Getting Started Guide.
Toolbars
The first row toolbar contains application/project level options; from left to right, these options
are:
New Project
Open Project
Save Project
Show/Hide the Model Explorer (and Data tab)
Show/Hide the Workflow Tree
The second row toolbar contains options for adjusting the Data tab and Model Explorer; from
left to right, these options are:
Combine Data tab and Model Explorer into one view, separated by tabs
Separate the Data tab and Model Explorer into one frame above the other (factory default
setting)
Collapse All (levels of the tree)
Collapse to Selected item on the Model Explorer
Dock Model Explorer to the left side of the window
Dock Model Explorer to the right side of the window
In VMOD Flex, there are two workflows you can follow: Conceptual or Numerical Modeling.
Please take a moment to review the summary below to help you decide where you should
start.
Are starting a new modeling project and have various data types/formats (GIS etc.) for
defining the geological layering, flow materials and boundary conditions
Are dealing with complex geological layering (pinchouts and discontinuities)
Wish to evaluate multiple numerical grids for your project
Wish to build a conceptual model for FEFLOW
The Conceptual Modeling tutorial will walk you through the following steps:
Create a MODFLOW-based numerical model (define the numerical grid and populate
the grid the properties and boundary conditions; similar to conventional Visual
MODFLOW);
Import a Visual MODFLOW project set (*.VMF)
Import a standard USGS MODFLOW data set (MODFLOW-2000, -2005)
See Also:
Several sample projects are available for download from our website, that illustrate both the
conceptual and numerical modeling workflows
The following example is a quick walk through of the basics of building a conceptual model
and converting this to a numerical model.
Objectives
Learn how to create a project and import your raw data
Become familiar with navigating the GUI and steps for conceptual modeling
Learn how to define a 3D geological model and flow properties
Define boundary conditions using your GIS data
Define a MODFLOW grid, then populate this grid with data from the conceptual model
View the resulting properties and boundary conditions
Translate the model inputs into MODFLOW packages and run the MODFLOW engines
Understand the results by interpreting heads and drawdown in several views
Check the quality of the model by comparing observed heads to calculated heads
Required Files
Several files are required for this exercise, which should be included with the VMOD Flex
installation. These files are available in your "My Documents" folder,
VMODFlex\Tutorials\ConceptualModel. If you cannot find these files, please download them
from our website
Select Conceptual Modeling and the Conceptual Modeling workflow will load.
In this step, you define the objectives of your model and the default parameters.
The Start Date of the model corresponds to the beginning of the simulation time period. It
is important to define a relevant start date since your field measurements (observed heads
and pumping schedules) will be defined with absolute date measurements, and must lie
within the simulation time period. In this example, the default start date can be used.
For this scenario, set the model start date to 1/1/2000;
Start Date
The model start date for this exercise should be set to 1/1/2000.
VMOD Flex uses a standard Windows date picker; a few tips are shown below on how to use
this.
Click on the button shown below, to load the Windows date picker.
All months for the current year will appear as shown below.
Click on the year in the header:
The selected date will then appear for the Start Date.
At this step, you can import data, create new data objects (by digitizing) or create
surfaces (from points data objects)
Click the “Import Data” button and the following screen will load:
You can view these data objects in 2D or 3D; simply create a new viewer
Click on Window/New 3D Window from the main menu; an empty 3D Viewer will
appear;
Click on the check box beside each of the data objects you imported, and they will
appear in the 3D Viewer
Click (Next Step) to proceed, where you will arrive at the Define Conceptual Model
step
Note: The model area cannot be defined using a complex polygon, or one that contains
multiple polygons. A complex polygon is a polygon that intersects with itself.
Define Structure
Defining the geological model consists of providing geological surfaces as inputs for
horizons; then, three-dimensional solids are created between these horizons.
From the Horizons Settings dialog (shown below), click the Add Horizon button to
add a new horizon row to the Horizon Information table.
Repeat this two more times so there are 3 new rows on the Horizons table.
From the Data Explorer, select the ground surface data object that will be used to
generate the horizon
Click the button in Row1 of the Horizons grid, to insert it into the Horizon
Information table. See the example below.
For this example, the default horizon type will be adequate. For information on each
horizon type, please refer to "Horizon Types 299 ".
Repeat the steps above to add additional horizons:
From the Data Explorer, select the layer2-top surface data object, click the
button in Row2 of the Horizons grid, to insert it into the grid.
From the Data Explorer, select the layer2-bottom surface data object, click the
button in the Row3 of Horizons grid, to insert it into the grid.
NOTE: Horizons must be added from the topmost geological layers and working downwards.
You can preview the horizons in the adjacent 3D Viewer, by clicking the [Preview]
button.
Once finished, you should see a display similar to the one shown below.
Finally, click the [ ] button to create the horizons and proceed to the next step.
At this step, you can view/edit the flow properties for the model.
There are two ways to define property zones: Using Structural Zones, or Using Polygon Data
Objects
This method allows you to create a property zone from existing structural zones in your
conceptual model, i.e., zones generated from horizons.
Select Zone1 structural zone from the conceptual model tree (under the Structure/Zones
node as shown below)
Click the button to insert the zone in the Structural Zones field, as shown below.
Select the Group of parameters that will be defined, e.g., Conductivity, Storage or Initial
heads. The data input grid below will display the appropriate parameters based on which
parameter group is selected. For example, if conductivity is selected, the data input grid will
show the parameters Kx, Ky, and Kz. The data input grid will already be populated with the
default values specified in the Project Settings (File > Project Settings... ).
Type the desired values for the property zone. (Kx = 4E-6, Ky = 4E-6, Kz = 4E-7)
Click on the [Save] button located on the right side of the window.
Repeat these steps for the other property zone:
Click on the [Use Structural Zone] button
Select Zone2 from the model tree
Click on button to insert the zone in the Structural Zones field, as shown below.
Type the desired values for property zone2: (Kx = 7E-5, Ky = 7E-5, Kz = 7E-6)
Click on the [Save] button located on the right side of the window.
Property zones can also be defined using polygon shapes; the values can also be
defined from shapefile attributes or 2D Surface (distributed values). For more details,
please see Defining Property Zones 303
In this window, you can choose the type of Boundary Conditions: Standard MODFLOW
Boundary Conditions (CHD, DRN, RCH, etc.), Pumping Wells, or Surface Water
Network (currently under construction).
The Define Boundary Condition dialog box will appear on your screen as explained in the
following section.
From the Select Boundary Condition Type combo box, select the desired boundary
condition type.
Constant Head
Type name: Constant Head East
From the Data Explorer, select the chd-east polyline that represents this constant head.
Click the button in the Define Boundary Condition dialog, to add this polyline to the
input.
The next dialog allows us to define the constant head value. VMOD Flex provides various
options for defining boundary condition attributes. Attributes can be assigned from those
stored in Surface, Time Schedule, Shapefile and 3D Gridded data objects. You can also set
attributes as Static (no change over time) or Transient (changes over time).
For this tutorial, you will assign a static constant head value.
In the empty field located below the Starting Head field
type: 347 for the Starting Head and Ending Head
[Finish] button
Repeat these steps to define the other constant head boundary condition:
The following display will appear. Before you proceed, you will define one more boundary
condition, a River.
Click on "Define Boundary Conditions" in the tree, and select the "Define Boundary
Condition button".
Choose River for the boundary condition type
From the Data Explorer, select the "river" polyline
Click the button in the Define Boundary Condition dialog, to add this polyline to the
input.
A warning may appear about clipping the polyline; click OK to continue
Click the [Next] button.
Define the following attributes for the river: Stage: 335, Bottom: 333, Riverbed
Thickness: 1, Width: 10,
Riverbed conductivity: 0.01 (m/s)
Click Finish. The River conceptual boundary condition will be added to the model tree.
The following display will appear.
Click the [Define Finite Difference Grid] button and define the inputs as explained in the
following section.
Enter a unique Name for the numerical grid. This name will appear in the Conceptual
Model tree once the grid is created.
Enter the grid size, and optionally, the grid rotation. The grid can be rotated counter-
clockwise about the grid origin by entering a value between 0 and 360 in the Rotation
text field.
The Xmin and Ymin values refer to the X-Y coordinates of the bottom-left corner of the
numerical grid. The Xmax and Ymax values refer to the X-Y coordinates of the top-right
corner of the numerical grid.
The Columns and Rows fields allow you to define the Grid Size.
Type: 100 for both the # rows and columns
Click the [Next] button to proceed to define the vertical discretization. You will then see
a cross-section preview of the grid.
By default, the vertical exaggeration is 1. Locate the "Exaggeration" value below the
preview window, and type "40" for the exaggeration value, then click Enter on your
keyboard.
In the "Define Vertical Grid" screen, specify the type of vertical discretization; for this
exercise, the default Deformed grill be used. More details on the grid types can be
found in the Defining Grids/Meshes 347 section.
Leave the defaults as is; click the [Finish] button. The Grid will then appear as shown in
the following screen.
After clicking on the conversion button, a new window will appear which includes the
steps for the numerical model. In the first window, you will see the progress of the
conceptual to numerical conversion. This conversion could take several minutes,
depending on the size and type of grid you used, and the complexity of the conceptual
model inputs.
When the conversion is complete, click (Next Step) to proceed to the Properties step.
View/Edit Properties
At this step, you can view/edit the flow properties for the model.
Under Views, select the various views you want to see in the Flex viewer; VMOD Flex
allows you to simultaneously show a layer, row, column and 3D Views. Place a
checkbox beside the desired view and it will appear on screen.
Adjust a specific layer, row, or column using the up/down arrows. Alternatively, click on
the button then click on any specific row, column, or layer in any of the 2D views,
and the selected row, column, or layer will be set automatically.
Now you will define a default initial heads value.
Choose "Initial Heads" from the combo box under the Toolbox as shown below
Click [Database] button located below the Initial Heads combo box.
Type: 350 for each of the zone values; this will apply an initial head value of 350 for the
entire model domain.
Click OK when you are finished.
Use the same tools as described in the previous step to manipulate the views.
The display tools will allow you to switch from discrete cells rendering to color shading/
contours (note, this is available only when you do attribute rendering, and not when you are
rendering by ZoneID)
From the toolbox, select the Desired Boundary condition group (Constant Head, Rivers,
etc..)
Then select Edit (Single) or Edit (Group).
Click on a cell that belongs to this group; a dialog will appear where you can see the
parameters for a single cell or group of cells.
Click (Next Step) to proceed. You will arrive at the "Select the Next Step" options
screen.
You will arrive at a choice screen; here you can proceed to some of the “non-essential”
inputs for the model, such as Zone Budget Zones, Particle Tracking, or Observation
Wells. Or, you can proceed to Running the simulation
Click the “Select Run Type” button to proceed (Mouse over this and you will see the
blue "Next" arrow appear on top; just left click once to select this option. (Alternatively,
the (Next step) button will take you to this step, as it is pre-define as the default
step.
Click the “Compose Engines” button to proceed (Alternatively, the (Next step)
button will take you to this step).
You will arrive at the “Select Engines” step. Here you can choose what engines you want
(what version of MODFLOW: 2000, 2005, etc..), and if you want to include MODPATH and
ZoneBudget in the run
Translate Packages
You will arrive at the “Translation Step”.
At this step, you choose if the model is steady-state or transient, choose the solver you
want to use, and define any other MODFLOW package/run settings, such as cell-rewetting,
etc. Note in the General Settings, there is a default location where the MODFLOW and
other files will be generated; this can be modified if you wish.
Click the button (circled above) to proceed; this will read the input from the
numerical model and “translate” this into the various input files needed by MODFLOW and
the other engines. The files will be created in the directory defined in the previous step.
Click the (Next step) button to proceed. You will arrive at the “Run Engines Step”.
Run Engines
Click the button on the main workflow toolbar to start running the engines.
You will see the Engine progress in the scrolling window.
Note that after a successful run, the Heads and Pathlines items will be added the tree in the
model explorer.
View Results
You can then choose to view results in the form of Maps (Contours and Color shading) or
Charts
You will then see color shading of the calculated heads, in layer view.
You can display heads along a row, and along a column, and in 3D, using the same tools
as you used earlier. (refer to View/Edit Properties 46 section)
If your model is transient, use the time controls above the Flex Viewer to change the output
time; as you do this, all active viewers (layer, row, column, 3D), will refresh to show the
heads for the new output time.
The next section will discuss how you can generate a new grid with a different size and
resolution, and generate a numerical model using this grid.
Often the initial grid size you defined is not adequate to provide the solution and stability you
require from your model. In this section, we will explain how you can generate multiple grids
from the conceptual model and run the corresponding numerical models.
Across the top of the main window, you will see several tabs which represent the option
Workflows and Viewers (2D or 3D).
Click on the Conceptual Model 1 tab to make this the active window, and it should now
appear on your display.
Click on "Select Grid Type" from the workflow tree.
Click [Define Finite Difference Grid] button and the Define Grid window will appear.
Define a new grid with the desired grid size and rotation.
Click [Next]
Specify the desired vertical discretization; you may wish to use a different vertical grid type,
or refine any of the vertical layers.
Click [Finish] when you are done.
The new grid should now appear, and you will also see the grid appear as a new node in
the model tree.
Click the (Next step) button to proceed.
Now you are ready to populate the numerical grid/mesh with the conceptual elements. The
"Convert to Numerical Model" display should appear similar as below. Now, in the "Select
Grid" combo box, you will see there are 2 grids; by default, the grid you created should be
selected.
After clicking on the conversion button, a new workflow window will appear which
includes the steps for the numerical model for this new grid. In the first window, you will
see the progress of the conceptual to numerical conversion. This conversion could
take several minutes, depending on the size and type of grid you used, and the
complexity of the conceptual model inputs.
Note that the new tab is titled with the name of the new grid you provided. This new tab will
appear in the active list of workflows and viewers, at the bottom of the main parent window.
In addition, this new model run will appear in the model tree. The model run has a grid and
corresponding inputs; this can also be seen in the figure above.
When the conversion is complete, click (Next Step) to proceed to the Properties step.
Now, as explained previously, you can review the properties and boundary conditions, and
translate and run this model.
Once the heads are generated, you can compare this to the results from previous grids.
The following example is a quick walk through of the basics of importing an existing Visual
MODFLOW or MODFLOW data set.
Objectives
Learn how to create a project and import an existing numerical model
Become familiar with navigating the GUI and steps for numerical modeling
Learn how to view and edit properties and boundary conditions, in a variety of views
Translate the model inputs into MODFLOW packages and run the MODFLOW engines
Understand the results by interpreting heads and drawdown in several views
Check the quality of the model by comparing observed heads to calculated heads
Required Files
This tutorial is designed to allow you to select your own Visual MODFLOW or MODFLOW
project, and follow through the steps. If you wish to use the model that is shown in the
following example, it can be downloaded from our website
For the Start Date, expand the date picker, and select 1/1/2000
(the start date for the numerical model is only relevant should you decide to import
pumping well or observation data in absolute times; MODFLOW always uses relative
time, with a start time = 0 (days or seconds)
At this step, you can choose to create a new empty numerical grid, or import an
existing project.
Click the “Import from Model” button.
In the next screen, click the “Browse” button and then navigate to the folder that
contains your Visual MODFLOW or MODFLOW project.
Select the file and click Open to continue. The import will start and you will see the
status in the progress window.
During the import, there are a few things to observe:
Progress: The status of each model element is shown in the progress; any detected
errors will be shown here.
Model Explorer: After the import, you will see the model tree is populated in the bottom
left corner of the screen; from here, you can show/hide different model inputs/outputs.
You can add other data objects to the view, such as an image or other raw data
(polyline/polygon shapefiles). These files need to first be imported, then they can be
displayed at the one of the subsequent steps (View Grid, Define Properties, Define
Boundary Conditions) or in a 3D viewer by selecting Window/3D, then checking on the
box beside the appropriate data object.
Click (Next Step) to proceed, where you will arrive at the Grid view/edit step.
View/Edit Grid
At this step, you can view the numerical grid in layer (plan) view, cross-sectional (along
row or column), and 3D view.
There are numerous tools available to control and manipulate the grid views:
Under Views, select the various views you want to see in the Flex viewer; VMOD Flex
allows you to simultaneously show a layer, row, column and 3D Views. Place a check
box beside the desired view and it will appear on the screen.
Adjust a specific layer, row, or column using the up/down arrows. Alternatively, click on
the button then click on any specific row, column, or layer in any of the 2D views,
and the selected row, column, or layer will be set automatically.
The standard navigation tools allow you to zoom, pan, and in the case of 3D view,
rotate.
View/Edit Properties
At this step, you can view/edit the flow properties for the model.
Under the Toolbox, use the combo box to select from the various Property Groups:
Conductivity, Initial Heads, and Storativity.
For each parameter group, you can choose to render by Zones or by a selected
attribute. Based on your selection, the color rendering in the views will change.
Click [Database] button to see the conductivity zones that exist in your model.
Use the same tools as described in the previous step to manipulate the views.
The display tools will allow you to switch from discrete cells rendering to color shading/
contours.
The display tools will allow you to switch from discrete cells rendering to color shading/
contours (note, this is available only when you do attribute rendering, and not when you are
rendering by ZoneID)
From the toolbox, select the Desired Boundary condition group (Constant Head, Rivers,
etc..)
Then select Edit (Single) (or Edit (Group).
Click on a cell that belongs to this group; a dialog will appear where you can see the
parameters for a single cell or group of cells.
For Recharge or Evapotranspiration, you need to select this Boundary Condition type
from the list under the Toolbox, and the Recharge/EVT zonation will appear. A
Database button will be enabled allowing you to view the zonations.
You can also assign new boundary conditions to the model using the "Assign" options;
for more details, please see Define Boundary Conditions 418
Click (Next Step) to proceed. You will arrive at the "Select the Next Step" options
screen
You will arrive at a choice screen; here you can proceed to some of the “non-essential”
inputs for the model, such as Zone Budget Zones, Particle Tracking, or Observation
Wells. Or, you can proceed to Running the simulation.
Click the “Select Run Type” button to proceed (Mouse over this and you will see the
blue "Next" arrow. appear on top; just left click once to select this option. (Alternatively,
the (Next step) button will take you to this step, as it is pre-define as the default
step.
Click the “Single Run” button to proceed (Alternatively, the (Next step) button will
take you to this step, as it is pre-define as the default step.
You will arrive at the “Select Engines” step. Here you can choose what engines you want
(what version of MODFLOW: 2000, 2005, etc..), and if you want to include MODPATH and
ZoneBudget in the run
The version of MODFLOW that you used in the VMOD Classic model should be selected
by default; if you wish to run MODPATH and ZoneBudget, be sure to select these engines
as well.
NOTE: ***De-select MT3DMS engine.*** since there are no transport inputs defined for this
model.
Translate Packages
You will arrive at the “Translation Step”.
At this step, you choose if the model is steady-state or transient, choose the solver you
want to use, and define any other MODFLOW package/run settings, such as cell-rewetting,
etc. For more details, see MODFLOW Translation Settings 460 . Note in the General
Settings, there is a default location where the MODFLOW and other files will be generated;
you can modify the location if you wish.
Click the button (circled above) to proceed; this will read the input from the
numerical model and “translate” this into the various input files needed by MODFLOW and
the other engines. The files will be created in the directory defined in the previous step.
Click the (Next step) button to proceed. You will arrive at the “Run Engines Step”.
Run Engines
Click the button on the main workflow toolbar to start running the engines. You
will see the Engine progress in the scrolling window.
Note that after a successful run, the Heads and Pathlines items will be added the tree in the
model explorer.
View Results
You can then choose to view results in the form of Maps (Contours and Color shading) or
Charts.
View Maps
Click the “View Maps” button.
You will then see color shading of the calculated heads, in layer view.
You can display heads along a row, and along a column, and in 3D, using the same tools
as you used earlier. (refer to View/Edit Grid 61 section)
If your model is transient, use the time controls above the Flex Viewer to change the output
time; as you do this, all active viewers (layer, row, column, 3D), will refresh to show the
heads for the new output time.
If you ran MODPATH, you will see Pathlines appear as a new node in the tree under Output
(circled below); add a check box beside the Pathlines to display these in the active 2D/3D
Viewers. You may need to zoom into the middle of the layer view to see the pathlines.
View Charts
Click on View Charts from the workflow tree, and a blank charting window will appear.
Select the appropriate set of wells, or layers that contain wells, and click [Apply] and the
following window will appear:
To the left of the chart window, you can choose what observation data to view; select
individual wells, or see wells that belong to a specific group. After making a change to
the well(s) selection, click on the [Apply] button to update the chart.
In the Charts toolbox, under Chart Type, select Time Series, and the following window will
appear:
The following example is a walk through of creating a numerical model with groundwater flow
(using MODFLOW-2005) and basic contaminant transport (using MT3DMS). The exercise is
Objectives
Learn how to create a project and create a numerical grid
Become familiar with navigating the GUI and steps for numerical modeling
Learn how to define new property zones and boundary conditions
Define inputs for contaminant transport
Translate the model inputs into MODFLOW and MT3DMS packages
Run MODFLOW-2005 and MT3DMS engines
Understand the results by interpreting heads, drawdown, and concentrations in several
views
Check the quality of the model by comparing observed heads to calculated heads, and
observed vs. calculated concentrations
Note: if you are unable to locate some supporting files for the tutorial, you may download
these from the website
Select "Numerical Modeling" and the Numerical Modeling workflow will load. The first
step is to Define Objectives.
Define Objectives
In this step, you define the objectives of your model and the default parameters.
The Start Date of the model corresponds to the beginning of the simulation time
period. It is important to define a relevant start date since your field measurements
(observed heads and pumping schedules) will be defined with absolute date
measurements, and must lie within the simulation time period.
Select 1/1/2000 for the Start Date
For this scenario, we will include contaminant transport in the model run. Turn on the
check box beside "Transport Active" (in the right hand side of the window, under Define
Modeling Objectives.
For Sorption select "Linear Isotherm (equilibrium-controlled)". For this tutorial you will
not be simulating any decay or degradation of the contaminant, so the default
Reactions setting of No kinetic reactions will be fine.
Below the Sorption and Reaction settings are two tabs: Species Parameters and Model
Parameters. By default, one species (chemical component) is defined for the transport
run. For this example, we will leave the initial concentration (SCONC) as zero, but
adjust SP1 (Kd (the distribution coefficient)
Type: 1E-7 in SP1 [1/(mg/L)] column
You are now finished setting up the flow and transport objectives. Click (Next Step)
to proceed.
The following "Define Grid" step will appear; at this step, you can import Visual
MODFLOW Classic or MODFLOW data sets, or define a new empty grid.
Click on [Create Grid] to proceed
Creating Grid
At this step, you can specify the dimensions of the Model Domain, and define the
number of rows, columns, and layers for the finite difference grid. Type the following
into the Grid Size section,
Columns: 40
Rows: 40
For Grid Extents, enter 2000 for Xmax and 2000 for Ymax
Under Define Vertical Grid, enter 3 for Number of Layers
For the Data Type, select Surface from the drop-down list.
In the Source File field click the […] button and navigate to your "My Documents" folder,
then Visual MODFLOW Flex\Projects\suppfiles\Surfer\airport-ground-surface.grd" and
select [Open]
Click [Next>>]
Click [Next>>] (accept the defaults)
Click [Next>>] (accept the defaults)
Click [Finish]. You should now see a new "airport-ground-surface" data object appear
in the data tree, in the top left corner of the window.
Now, repeat the above steps to import the other Surfer .GRD files into the project:
airport-layer2-top.grd
airport-layer3-bottom.grd
airport-layer3-top.grd
When you are finished, you should see 4 Surface data objects in the data tree in the top
left corner.
Now you are ready to define the grid layers using these surfaces. Under Define Vertical
Grid, select "Use Surface" check box for each grid layer. This is shown below
Select airport-layer2-top Surface data object to the tree, and insert this (using the
) as the Surface for Layer 2 - Top
Select airport-layer3-top Surface data object to the tree, and insert this (using the
) as the Surface for Layer 3 - Top
Select airport-layer3-bottom Surface data object to the tree, and insert this (using the
) as the Surface for Layer 3 - Bottom
When you are finished, the table should appear as shown below.
You will see the model tree will get generated on the left side of the window, and the
NumericalGrid should appear as the last item.
Right click on the NumericalGrid1 from the tree, and select Edit Numerical Grid...
Refine the Grid. The following window will appear.
The grid refinement works by defining a starting row number, and ending row number,
then a "Refine by" factor; to help you define the limits of where the refinement should be
applied, you can add data objects to this display, such as well locations, arial maps,
shapefiles, etc. When you are using this feature with your own models, you just need
to import these files before launching the Grid Refinement step.
You will first start by refining the Rows. Enter 5 for the "Start", and enter "35" for the
end.
For Refine by ,enter 2. Your screen should appear as follows:
Click (Next Step) to proceed. This will generate the model run folder in the Model
tree, which includes input and output directories, and default flow and transport
properties.
Now is a good time to save the project. Click File/Save Project from the main menu.
In the next section, you will view the numerical grid that you just created.
View Grid
The View/Edit Grid step provides several views for displaying and the grid in 2D and 3D,
along with tools for refining and coarsening the grid. There are numerous tools available to
control and manipulate the grid views:
Under Views, select the various views you want to see in the Flex viewer; VMOD Flex
allows you to simultaneously show a layer, row, column and 3D Views. Place a check
box beside the desired view and it will appear on the screen.
Adjust a specific layer, row, or column using the up/down arrows. Alternatively, click on
the button then click on any specific row, column, or layer in any of the 2D views,
and the selected row, column, or layer will be set automatically.
The standard navigation tools allow you to zoom, pan, and in the case of 3D view,
rotate
Click on the [Database] button and Type the following values in the window:
Kx (m/s): 2E-4
Ky (m/s): 2E-4
Kz (m/s): 2E-4
[OK] to accept these values.
Note that in this case the Kx, Ky, and Kz values are the same, indicating the assigned
property values are assumed horizontally and vertically isotropic. However, anisotropic
property values can be assigned to a model by modifying the Conductivity Database
In this three layer model, layer 1 represents the upper aquifer, and layer 3 represents the
lower aquifer. Layer 2 represents the aquitard separating the upper and lower aquifers. For
this example, we will use the previously assigned hydraulic conductivity values (Zone# 1) for
model layers 1 and 3 (representing the aquifers) and assign different Conductivity values (i.e.
a new Zone) for model layer 2 (representing the aquitard). Note that layer 1 is the top model
layer.
Next you need to change to Layer 2. (using the up arrow under the Layer text box shown
below)
You are now viewing the second model layer, representing the aquitard. The next step in this
tutorial is to assign a lower hydraulic conductivity value to the aquitard (layer 2). We can
graphically assign the property values to the model grid cells.
Click on the [New] button at the top; this will create a new zone.
Enter the following values:
Kx (m/s): 1E-10
Ky (m/s): 1E-10
Kz (m/s): 1E-11
The dialog should appear as shown below.
[OK] to accept these values. Once finished, the cells for Layer2 should change dark
blue, which indicates these cells belong to Zone2; you can use the Legend under the
toolbox as a guide, and also mouse over cells in the grid view, and note the values in
the status bar.
Next you must assign the appropriate conductivity values to the discontinuous region.
Although the region where the aquitard pinches out is very thin, the conductivity values
of these grid cells should be set equal to the Conductivity values of either the upper or
lower aquifers.In this particular example, the zone of discontinuous aquitard is indicated
on a shapefile.. We will import this shapefile into the project:
File/Import...
For the Data Type, select Polygon from the drop-down list.
In the Source File field click the […] button and navigate to your "My Documents" folder,
then Visual MODFLOW Flex\Projects\\suppfiles\discontinuous-aquitard.shp, and click
[Open]
Click [Next>>]
Click [Next>>] (accept the defaults)
Click [Next>>] (accept the defaults)
Click [Finish]. You should now see a new data object, "discontinuous-aquitard" appear
in the data tree, in the top left corner of the window.
Click on the box beside this data object in the tree . The data object should now
appear in the Layer View of the grid.
Zoom into this area (using the mouse wheel, or the Zoom in button on the toolbar).
Click [Assign / Polygon] from the toolbox.
Trace a polygon overtop of this discontinuous-aquitard shape; when you have closed
the polygon, click the right-mouse button.
Select [Define Attributes] from the menu that appears
Now view the model in cross-section to see the three hydrogeological units. First,
zoom out to the fill extent using one of the following options:
Constant Heads
The first Constant Head boundary condition to assign will be for the upper unconfined aquifer
along the northern boundary of the model domain. To do this you will use the [Assign
>Polyline] tool.
Click on [Define Attributes]. The "Define Boundary Condition" dialog will appear.
Click [Next >>] to accept the default name. The following dialog will appear:
[Assign / Polyline] from the toolbox. Move the mouse pointer to the north-west corner of
the grid (top-left grid cell) and left-click on this location to anchor the starting point of the
line. Now move the mouse pointer to the north-east corner of the grid (top-right grid
cell) and Right-Click on this location to indicate the end point of the line. You should
then see a small menu appear "Define Attributes".
Click on [Define Attributes]. The "Define Boundary Condition" dialog will appear.
Click [Next >>] to accept the default name.
In the Define Boundary Condition dialog, enter the following values:
Enter Starting Head (m) of 18
Enter Ending Head (m) of 18
Click [Finish] to complete the boundary condition. The hand-drawn polyline will now turn
to a set of red points, indicating that a Constant Head boundary condition has been
assigned to these cells
Next, assign the Constant Head boundary condition to the lower confined aquifer along
the southern boundary of the model domain.
[Assign / Polyline] from the toolbox. Move the mouse pointer to the south-west corner
of the grid (bottom-left grid cell) and click on this location to anchor the starting point of
the line. Now move the mouse pointer to the south-east corner of the grid (bottom-right
grid cell) and Right-Click on this location to indicate the end point of the line. You should
then see a small menu appear "Define Attributes".
Click on [Define Attributes]. The "Define Boundary Condition" dialog will appear.
Click [Next >>] to accept the default name.
In the Define Boundary Condition dialog, enter the following values:
Enter Starting Head (m) of 16.5
Enter Ending Head (m) of 16.5
Click [Finish] to complete the boundary condition. The hand-drawn polyline will now turn
to a set of red points, indicating that a Constant Head boundary condition has been
assigned to these cells
River
The following instructions describe how to assign a River boundary condition in the top layer
of the model, along the southern edge of the model.
First, you need to go back to Layer 1 (using the steps explained previously)
Next you need to import a polyline that defines the location of the River.
File/Import from the main menu. The following window will appear:
For the Data Type, select Polyline from the drop-down list.
In the Source File field click the […] button and navigate to your "My Documents" folder,
then Visual MODFLOW Flex\Projects\suppfiles\river.shp" and select [Open]
Click [Next>>]
Click [Next>>] (accept the defaults)
Click [Next>>] (accept the defaults)
Click [Finish]. You should now see a new "river" data object appear in the data tree, in
the top left corner of the window.
Place a check box beside this data object, and it should appear in the layer view at the
Define Boundary Conditions step.
VMOD Flex allows you to select existing shapes (polygons/polylines) to define the cell
assignment for the boundary condition.
Select River from the list of boundary conditions in the toolbox as shown below.
[Assign / Using Data Object] from the toolbox. A "Define Boundary Condition" window
will appear
From the Data Explorer, select the river polyline data object that you just imported.
Click the button in the Define Boundary Condition dialog, to add this river
polyline to the input. Your display should appear as below
Traditionally, the River boundary condition has required a value for the Conductance of
the riverbed. However, the Conductance value for each grid cell depends on the length
and width of the river as it passes through each grid cell. Therefore, in a model such as
this, with different sizes of grid cells, the Conductance value will change depending on
the size of the grid cell. In order to accommodate this type of scenario, Visual
MODFLOW allows you to enter the actual physical dimensions of the river at the Start
point and End point of the line, and then calculates the appropriate Conductance value
for each grid cell according to the standard formula., enter the following values:
Under "Select how the attributes are defined", select the [Define Values at vertices
(Linear Interpolation)] option. After doing so, the settings in the top right should appear
as shown below.
In the parameters grid at the bottom, enter the following values (for the start point).
(This is indicated as Point0, under the Points box.)
Leakance from the river will be calculated based on the parameters you define. For
more details on the calculation, refer to Boundary Conditions Theory 446
Now you will define the values for the End Point of the line.
Click on "Point37" under the Points box, as shown below.
Now define the values at this end point, in the parameters grid, based on the values
below"
Click [Finish] to complete the boundary condition. The polyline will now turn to a set of
blue points, indicating that a River boundary condition has been assigned to these cells
Recharge
In most situations, aquifers are recharged by infiltrating surface water. In order to assign
recharge in Visual MODFLOW, you must be viewing the top layer of the model. Check the
Navigator Cube in the lower left-hand side of the screen to see which layer you are currently
in. The first boundary condition to assign is the recharge flux to the aquifer
Click [Finish]. All cells in the top layer will be assigned a recharge rate of 100. (mm/yr)
Now you will assign a higher recharge value at the Refuelling Area where jet fuel has been
spilled on a daily basis. First you need to import a polygon shapefile that delineates this area.
File/Import...
For the Data Type, select Polygon from the drop-down list.
In the Source File field click the […] button and navigate to your "My Documents" folder,
then Visual MODFLOW Flex\Projects\\suppfiles\refuelling-area.shp, and click [Open]
Click [Next>>]
Click [Next>>] (accept the defaults)
Click [Next>>] (accept the defaults)
Click [Finish]. You should now see a new data object, "refuelling-area" appear in the
data tree, in the top left corner of the window.
Click on the box beside this data object in the tree . The data object should now
appear in the Layer View of the grid (it is located in the top middle of the site)
Zoom into this area (using the mouse wheel, or the Zoom in button on the toolbar).
[Assign / Using Data Object...] from the toolbox. A "Define Boundary Condition"
window will appear
From the Data Explorer, select the refuelling-area polygon data object that you just
imported.
Click the button in the Define Boundary Condition dialog, to add this polygon to
the input. Your display should appear as below:
In the Define Boundary Condition dialog, enter 250 for "Rate" (in units of mm/yr). Notice
that Conc001 has a default of -1 indicating that there is no defined mass flux assigned
to this boundary condition. You will modify this later on in the Transport section of the
tutorial.
Click [Finish]. You should now see a new zone of cells colored red, indicating the new
RechargeZone2, with this new value
Click [Database] to see the recharge zones you created, and their corresponding
values.
[Next>>]. VMOD Flex provides you with various options to import well data. In this
window, you must select to import the well heads, screens, and pumping schedules:
[Well heads with the following data]
[Pumping Schedule] check box
[Next>>]
[Next>>] to accept the default Coordinate System
In this screen, you need to map the fields from the spreadsheet to required fields in the Wells
Import utility. If you prepare your Excel file with the exact filenames that are required by
VMOD Flex, then no mapping is required and this can save you time. For this exercise, the
source Excel file has the map names pre-defined. Take a moment to review the required
fields for the Wells import:
Well heads: Well ID, XY Coordinates, Elevation, and Bottom
Screens: Screen Id, Screen top Z, Screen bottom Z
Pump Schedule: Pumping start date, Pumping end date, Pumping rate
When working with your own pumping well data for your models, you can use this
Excel file as a template; by having all the fields automatically mapped this reduces
the effort required during the import process, and minimizes the source of errors.
[Next>>]
[Next>>]
The Pumping_Wells will now appear as a new data object in the Data tree. .
At the Define Boundary Conditions step in the workflow, under Toolbox, choose "Wells"
from the list of Available Boundary Conditions.
Click on the [Assign] button, select "Using Data Object"
A "Create Well Boundary Condition" dialog will appear.
Select (highlight) the "Pumping_Wells" data object from the Data tree (you may need to
move the Pumping Wells Boundary Condition dialog to the right in order to see this).
button located in the middle of the Define Well Boundary Condition, under “Select
Raw Wells Data Object". Once completed, your display should appear as shown
below.
[OK]. The pumping wells have now be added to the numerical model.
You should see a new node appear on the Model Explorer, under NumericGrid1/Run/
Inputs/Boundary Conditions/Wells
In order to see these wells, you need to turn off the Recharge coverage and change to
layer 3.
Click on the box beside "Recharge" in the Model Explorer, to remove the check box
Change to Layer 3 (as explained earlier).
Also, you may need to zoom out to the full grid extents, by selecting the (Zoom to
Full Extents) button on the toolbar above the grid.
You should see the two points representing the wells, located in the lower right corner
of the model domain, as shown in the following figure.
Now is a good time to save the project. Click File/Save Project from the main menu.
Click (Next Step) to proceed.
Select "Define Observation Wells"
[Next>>]. VMOD Flex provides you with various options to import well data.
Choose the radio button "Well heads with the following data"
Then select "Observations points"
Then select "Observed heads"
Ensure you have the options selected as shown below.
Next>>
Next>> to accept the default Coordinate System
In this screen, you need to map the fields from the spreadsheet to required fields in the Wells
Import utility.
To save time, you can prepare your Excel file with the exact filenames that are required by
VMOD Flex, and then no mapping is required. For this exercise, the source Excel file has the
map names pre-defined. Take a moment to review the required fields for the Wells import:
Well heads: Well ID, XY Coordinates, Elevation, and Bottom
Observation points: Logger Id, Logger Z, Head observation date, Observed head
[Next>>]
[Finish]
The Heads_Observations will now appear as a new data object in the Data tree. Take a
moment and visualize this in the 3D Viewer.
Next you need to add these raw observation wells as observation points for the numerical
model.
Be sure that the "Head_Observations" data object is selected in the Data tree
Click on the button located under the toolbox in the "Define Observation Wells"
workflow step.
The observation wells will be added to the display and the numerical model tree. You
should see several green points in the model domain that represent the locations
where head measurements were taken. (in this example, all the head observations are
in layer 1).
Now is a good time to save the project. Click File/Save Project from the main menu.
At the Translate step you have the option to adjust the various parameters and flags for the
MODFLOW packages and run time settings. Available options include: Settings (General),
Time Steps (only appropriate for transient simulations), Solvers, Recharge and
Evapotranspiration package, Lake package settings, Layer types, Rewetting options, Initial
Heads, Anisotropy, and Output control
MODFLOW-2005 / Settings
Enter 7300 for steady-state simulation length (in the grid in the main window).
Run MODFLOW-2005
The following "View Results" window will then appear; you have the option to View
Maps or View Charts. We will start by viewing maps of heads
Click [View Maps] button to proceed. You will then see color shading of the calculated
heads, in layer view.
By default, VMOD Flex will display 10 contour lines, with an arbitrary interval. However,
if you do not like the default contour interval or line color, you can customize the contour
map settings. To access the contouring options for Heads, right-click on "Heads" from
the model tree, and select "Settings". The following dialog will appear
From the Settings tree on the left, select "Style" followed by "Contour Lines". This will
expand the settings window and give you access to the Contour Line settings.
Under "Interval options", select "Contour Interval", then enter 0.5 for the contour interval.
This is shown below:
You can display heads along a row, and along a column, and in 3D, using the same
tools as you used earlier.
Take a moment to view the correlation between calculated and observed heads
Now is a good time to save the project. Click File/Save Project from the main menu.
Click (Next Step) to proceed
In the next section of the tutorial, you will define the inputs for the transport run (properties and
boundary conditions), then run MT3MDS along with MODFLOW-2005, and view and interpret
the results.
The following section outlines the steps necessary to complete a simplified transport model.
Sorption
In this example, the only reaction that will be simulated is linear equilibrium adsorption of a
single dissolved species (the Jet fuel compound JP-4). However, depending on the
complexity of the problem you are dealing with, your model may have several different zones
with different sorptive and reactive properties (distribution coefficients, decay coefficients and
yield coefficients) for each dissolved species in the model. In Visual MODFLOW Flex, the
properties and processes for the transport model are assigned using the same types of
graphical tools as you used for assigning the flow model properties.
For this tutorial you will not need to modify the Distribution Coefficient value you defined
during the transport model setup, but you may examine the sorption parameter values as
follows.
From the workflow tree, click on [Define Properties] to go return back to this step.
Under the toolbox, choose [Species Parameters]
Click on [Database]. The Parameters Database window will appear as shown below.
The default distribution coefficient (Kd = 1.0e-7 L/mg) was specified during the setup of the
transport numeric engine. If this is not so (e.g. if you did not enter this value when creating the
project), enter this now.
The Kd values for each zone can be modified to accommodate heterogeneous soil properties
and reactions throughout the model domain. However, for this example you will keep it simple
and use a uniform Distribution Coefficient for each layer of the model.
Dispersion Coefficients
The next step is to define the dispersion properties for the model.
Visual MODFLOW automatically assigns a set of default values for each of the dispersivity
variables. The following table summarizes these values.
Longitudinal Dispersivity 10
Horizontal to Longitudinal Ratio 0.1
Vertical to Longitudinal Ratio 0.01
Molecular Diffusion Coefficient 0.0
It is possible to assign alternate values for the longitudinal dispersivity by using the [Assign>]
option buttons from the left toolbar.
However, for this example, you will use a uniform dispersion value for the entire model
domain.
In order to modify the horizontal or vertical dispersivity ratios and/or the molecular diffusion
values you need to load the Layer Options.
These parameters can be modified on a "per-layer" basis. For this example you will not need
to modify the defaults
In this section you will define the location and concentration of the contaminant source. The
source of contamination will be designated at the refueling area as a Recharge
Concentration that serves as a source of contamination to infiltrating precipitation.
The recharge cells should now appear in the Layer View of the grid
[Database] button and the following window will appear.
When the recharge zones were previously created, the values for the chemical species
(Conc001) were left as undefined, indicated by -1. You will modify this for the smaller
recharge area.
Now is a good time to save the project. Click File/Save Project from the main menu.
Click (Next Step) to proceed
Select "Define Observation Wells"
Next>>
VMOD Flex provides you with various options to import well data.
Choose the radio button "Well heads with the following data" radio button
Then select "Observations points"
Then select "Observed concentrations"
Next>>
Next>>to accept the default Coordinate System.
In this screen, you need to map the fields from the spreadsheet to required fields in the
Wells Import utility. To save time, you can prepare your Excel file with the exact
filenames that are required by VMOD Flex, and then no mapping is required. For this
exercise, the source Excel file has the map names pre-defined. Take a moment to
review the required fields for the Wells import:
Well heads: Well ID, XY Coordinates, Elevation, and Bottom
Logger Id, Logger Z, Head observation date, Observed head
Next>>]
[Finish]
The Concentration_Observations will now appear as a new data object in the Data tree, as
shown below.
Next you need to add these raw observation wells as observation points for the numerical
model.
button located under the toolbox in the "Define Observation Wells" workflow step.
The observation wells will be added to the display and the numerical model tree, under
Inputs/Observations/
Locate Concentration Observations, and click on the box beside this data object in the
Model Explorer .
You should see several orange points in the model domain that represent the locations
where head measurements were taken.
Now is a good time to save the project. Click File/Save Project from the main menu.
This section will guide you through the selection of the advection method, solver settings, and
output times that you will use to obtain the solution and results for the contaminant transport
model.
Solution Method
Expand the "MT3DMS" item under the Translation settings, and select [Solution
Method]. A Solution Method settings will appear, as shown in the following figure.
In the Solution Method dialogue, Advection term frame, you will be using the Upstream Finite
Difference solution method with the Implicit GCG Solver. The Upstream Finite Difference
method provides a stable solution to the contaminant transport model in a relatively short
period of time. The GCG solver uses an implicit approach to solving the finite difference
equations, and is usually much faster than the explicit solution
method.
Click the button in the Advection term frame, and select Upstream Finite Difference
(UFD)
To select the GCG Solver, select [Yes], beside "Use Implicit GCG Solver". The Implicit
GCG Solver Settings window will appear in the lower half of the Solution Method
settings.
Though the Upstream Finite Difference method and the Implicit GCG Solver are
computationally efficient, the tutorial simulation tracks contaminant transport over a 20
year period. In order to speed up the modeling process, you will use a nonlinear time
step. Type the following information in the fields at the bottom of the window.
Multiplier: 1.1
Maximum transport step size: 200, as shown below
Output Settings
Next, you will define the output times at which you would like to see the contaminant transport
modeling results.
Expand the "MT3DMS" item under the Translation settings, and select [Output Control].
The Translation settings will update as shown below.
Output Times
Select [Output Times], under the MT3DMS / Output Control tree, and the following
display will appear
For this tutorial you will define specified times at which you would like to see the
transport simulation results.
[Add Row] button; repeat this 6 more times.
Enter the following output times in the grid. If you wish, you can select and copy
(Ctrl+C) directly from this list below, and paste into the table using the Paste button
(circled below).
By default, the Heads will be shown in the Maps view. In order to see the
Concentrations, you need to turn off Heads from the model explorer, and set
"Concentrations" to be visible
Locate the Output node on the model tree.
Remove the Checkbox beside Heads
Add a checkbox beside "Concentrations"
The concentration contours will be plotted for the first transport output time (in this case
the first transport output time is 1 day).
In order to see the concentration results at the other output times, you need to advance
the output time. Click on the "Next Time Step" button located on the toolbar above the
Layer view, as shown below. Alternately, you can expand the list of output times, and
navigate directly to the desired output time.
This display will then update with a plot of plot of concentration contours for selected
output time
Advanced to the last output time, 7300 days, and the concentrations in the first layer of
the model should look similar to the following figure:
You can determine the risk that the contaminant front poses to the discontinuous
aquitard by doing the following:
Locate the data object "discontinuous-aquitard" from the tree, and turn it on. It should
appear in the layer view. Take a moment to navigate through the other layers, to see
the calculated concentrations.
Move your mouse cursor to specific areas of the interest (such as in the discontinuous
aquitard region), and note in the status bar the calculated concentrations for the
selected cell.
After 7300 days (20 years) of simulation time it is clear that the plume has migrated to
the ‘hole’s in the aquitard.
To see how the plume looks in cross-section, turn on the [Column] view, and enter
column 25
Advance the times to see the plume migrating the upper layers down to the lower
layers.
Click (Next Step) to proceed, or select [View Charts] item from the workflow tree.
From the "Parameter" combo box to the left of the main chart window, choose
"Transport"
You will then be presented with the graph for Concentration vs. Time, enabling you to
This time-series graph shows the calculated result using a line-and-point data series while
the observation data is displayed only as data point symbols.
Now is a good time to save the project. Click File/Save Project from the main menu.
This exercise demonstrates some of the advanced and exiting opportunities for model
calibration and uncertainty analysis using PEST in VMOD Flex. This exercise is based on the
problem described in "Using Pilot Points to Calibrate a MODFLOW/MT3D Model", by John
Doherty Watermark Numerical Computing, and has been adjusted to work with the PEST
workflow inside VMOD Flex.
Objectives
By the time you have finished this exercise you will have:
used pilot points as a means of characterizing the spatial distribution of an aquifer hydraulic
property;
used PEST’s advanced regularization functionality in conjunction with geostatistically-
based regularization constraints;
used the VMOD Flex GUI to:
Build input files for PEST
Run PEST
Analyze the results
Save adjusted parameters as new model inputs
Note:
You must have a license of Pro or Premium in order to
use the PEST module in VMOD Flex.
Required Files
Introduction
In the Numerical Workflow window, locate the Workflow Tree (this is shown on the left
in the window below)
Click on the "Select Run Type" in the numerical workflow tree.
A new PEST Workflow window will load as shown below. (note, if this does not appear
right away, select this tab from the list of workflows across the top of the window)
Define Observations
The first step is to define the observations you want to include for calculating the
objective function, and assign weights to various observations. In this example, there
are 21 observation wells where heads were measured at several intervals.
All head locations, and associated time varying heads, are selected by default, and will
be used with a default weight = 1. No changes will be needed for this exercise
At this step, select which parameters you want to include in the PEST run. The Define
Parameters window will then appear:
In the table at the top, select which property parameters you want to include; in the
table at the bottom, select which property zones you want to include. For this exercise,
all Kx property zones will be included (these are selected by default)
For each parameter, you can specify to "Tie" it to another parameter. You can also
specify the Transformation option (by default, all Conductivity parameters are set to Log
transformation)
In the table at the bottom, for each property zone, you must specify minimum and
maximum values; defaults are provided, in addition, the value from each zone is also
displayed to assist in defining reasonable minimum/maximums.
Enter 1 for the Minimum for each zone
Enter 300 for the Maximum for each zone. This is shown below.
Pilot points are XY points with an initial value for each parameter. Pilot points can be imported
173 from .TXT file, XLS, .SHP file, or assigned manually 219 by digitizing in the 2D
environment. An example of the pilot points on top of conductivity zones is shown below
Click (Insert button) at the top of the Define Pilot Points window to add these
points.
Select which parameter zones the points represent under the Parameter Zones grid in
the upper right section of the window; for this set, Kx-Zone1 is fine (this should be
selected by default)
You display should now appear as shown below.
Now repeat these steps to define the pilot points for the remaining Kx Zone2
When you are finished, your display should appear similar to the figure below.
In the table at the bottom of the window, you can adjust some parameters for specific pilot
points. The main use of this table is to specify which pilot points (if any) are Fixed (Hard) and
their initial values. Fixed pilot points are those locations where you are confident in the
measured parameter value (eg. pumping/slug test locations), and you want these values to
remain Fixed during the PEST run.
Above this table, there is a combo box where you select which parameter zone should be
shown. VMOD Flex allows you to combine multiple pilot point sets (eg. hard/soft) for
parameter zones.
points.
One of the benefits of using Kriging as a basis for spatial interpolation is that the factors by
which hydraulic properties at pilot points are multiplied before summation to obtain the
hydraulic property value at a particular grid cell are independent of the actual hydraulic
property values at the pilot points. Hence a set of “Kriging factors” pertaining to each of the
cells of the finite difference grid can be calculated in advance of the actual interpolation
process. As the latter is undertaken again and again as the model is run repeatedly by PEST,
the fact that it is not necessary to repeat calculation of the Kriging factors on each occasion
that the model is run can result in large savings in the time required to complete the overall
parameter estimation process.
the creek alluvium) whereas “structure3” will be used to characterize zones 3 and 4. Note
that the variogram assigned to these latter zones is quite unimportant; because there is only
one pilot point assigned to each of them, all cells within these zones will be assigned the one
interpolated value (same as the respective pilot point) irrespective of the variogram.
In VMOD Flex, a default variogram is generated for each parameter zone, with type 2
(Exponential).
Click Zone1 under Kx in the tree. The display will appear as below.
In the editor on the right side of the display, for Transform, set this to log.
Repeat these steps, setting log Transform for Kx Zone2, 3, and 4.
Thus any variogram cited in each of these structures must pertain to the spatial distribution of
the logarithm of the pertinent hydraulic property. This is in accordance with the fact that most
studies cited in the groundwater literature which treat transmissivity and/or hydraulic
conductivity as a regionalised variable indicate that its distribution is better described by a log
variogram than by a variogram based on native property values.
For this example, the default parameters for the variograms (all will use Exponential) is
sufficient. However, for Zone2, we will define a value of 2.0 for the Anisotropy, with the
direction of anisotropy coinciding with the direction of the creek. Alignment in the direction of
the creek is based on the premise that channel structures within this old creek valley will
make it more likely for hydraulic property similarity to prevail in this direction than in a direction
at right angles to it.
The variogram parameters can be adjusted by selecting a Variogram from the tree as shown
below.
Click Variogramkx2 under the Variograms node in the tree. The display will appear as
below.
At this step, choose the type of PEST Run: if you want to run PEST, then some additional
options will be needed, such as define regularization and adjust the PEST control file. If you
want to run Sensitivity Analysis, this can also be launched.
Click the [Parameter Estimation] button from the main window, as shown above.
The next step will be to choose the Regularization options.
Select Regularization
The last step before running PEST is to view and adjust the PEST Control file.
If you are familiar with the PEST file format/structure, you can adjust the PEST Control file in
this window, or copy into a text editor, make changes, and paste the adjusted contents back
in this window. A full explanation of the PEST control file is available in the PEST manual
(http://www.pesthomepage.org/getfiles.php?file=pestman.pdf)
Before starting the PEST Run, it is a good idea to check the PEST Input files. PEST provides
Run PEST
The pest.exe will load in a DOS command window, and show the progress as seen below.
Depending on the speed of your computer, the PEST run should take between 3-5 minutes.
As PEST runs, you should see the objective function (phi) decreasing over each optimization
iteration; pay attention to these values in the DOS window. PEST will run a total of 25
optimization iterations and a total of 1366 model runs. PEST should reach a final objective
function (phi) value of approximately 2.06 E-02.
When PEST finishes, you should see a confirmation message in the main window, below the
PEST Run Log tab, as shown below.
After the PEST run completes, you can analyze the results.
Analyze Results
VMOD Flex presents the results of the PEST run, with one tab per output file.
Record file (.REC): contains parameter values, objective function, sensitivities, etc..
Sensitivities for Observations (.SEO)
Sensitivities for Parameters (.SEN)
Residuals (.RES): contains the adjusted calculated vs. observed values and residuals
The results from these files can be Exported into Excel for charting.
If the results look reasonable, you can save the adjusted Kx parameter zonation as inputs for
a new model; this is explained in the next section.
After reviewing the PEST output, if the adjusted parameter values seem reasonable, you can
save these parameters as inputs for a new model run.
Click on the [Create New Model Run with PEST Results] button.
VMOD Flex will save the adjusted model parameters in a new model run within the same
project. This new model run will appear in the Model Explorer below the most recent model
run. A new workflow window will also appear with this model run.
Click on "Define Properties" from the workflow tree (if not already selected)
From the Toolbox, select "Kx" as shown below; you should then see a color flood of the
Kx values.
You can mouse over the 2D display to see the range of Kx values
Click on the button on the toolbar to show color shading with contour lines.
You must Translate and Run this new model run in order to see the updated MODFLOW
results using the adjusted Kx parameters from PEST.
Objectives
Open and review a VMOD Flex project that contains a conceptual model
Define an UnStructured Grid, with refinement around the wells and boundaries
Pre-requisites
The boundary conditions consist of a constant head in upper aquifer, in the north part of the
model, a river along the southern edge, and two pumping wells screened over the
bottommost property zone, each pumping 400 - 700 m3/day, with a time-varying pumping
schedule. Constant head values are also defined in the lower aquifer. Each boundary
condition consists of a few simple stress periods to illustrate a transient MODFLOW-USG
model run.
When discussing the site, in plan view, the top of the site will be designated as north, the
bottom of the site as south, and the left side and right side as west and east, respectively.
Groundwater flow is from north to south (top to bottom).
Select the Conceptual Model 2 tab (from the list of active windows, at the top of the
display
Navigate to the "Select Grid Type" step in the workflow (if its not already selected), as
shown below.
Click on the "Define UnStructured Grid" button, and the following window will appear
The first step in defining the Unstructured Grid is to provide the desired shape add-ins. These
are polylines, polygons, and points within the model boundary. The grid generator in VMOD
Flex will use these as control points (grid generator nodes) during creating the unstructured
grid. By default, the Add-ins List contains the model boundary (polygon) and any linear or
point boundary condition currently defined for the conceptual model. Additional add-ins may
be added to the list using data objects from the Data Explorer, and then clicking on [Add-In
Lines/Points/Polygons] button (For example, you may want to add-in the points that represent
your head observations (targets), so that these lie horizontally in the middle of an
unstructured grid cell. Likewise, you can conform the grid around geological features such as
faults/fractures). An Add-in may be included or excluded in the grid creation, by checking or
unchecking the corresponding check box, respectively. When an add-in is “checked” it will
also be displayed in the adjacent 2D Viewer preview window.
[Generate] button (located in the bottom middle section of the window). A preview of the
USG grid will appear in the adjacent 3D viewer. If you are not satisfied with the grid, you
can modify the settings and regenerate the grid by selecting the Generate button again.
Click [Convert to Numerical Model] button from the main window below
The conversion process will begin; this make take about 5-10 seconds. Note that for larger
grid sizes and more complex boundary conditions, this conversion process may take several
minutes.
After the conversion is complete, a new workflow tab will appear, titled "UnStructuredGrid1-
Run1". This workflow will provide you the tools and displays for navigating the MODFLOW-
USG Numerical Model (keeping in mind that you were previously navigating and working with
a Conceptual Model). More details on the specifics of each step can be found in the section
MODFLOW-USG Numerical Modeling Workflow 519
In addition, you will now see new items in the Model Explorer, under the UnstructuredGrid1
node (in the lower left corner of your window), with a Run folder containing Inputs (Properties
and Boundary conditions) and Outputs (Heads and Drawdown, which will be added after a
successful MODFLOW-USG run). For the boundary conditions, you will see nodes for
groups of boundary condition cells that were generated: Constant Head (west) Constant
Head (right), River, and the Pumping Wells.
By default, Conductivity will be displayed in the 3D viewer. All UnStructured grid cells will be
drawn and colored by the Kx.
In order to gain a better perspective, you need to apply a Vertical Exaggeration and rotate the
3D Viewer.
Now you will rotate the 3D view to see the property zones from a side-view perspective.
Left click with the mouse near the bottom middle section of the 3D display
Hold down the left-mouse button, and drag your mouse upwards towards the top of the
VMOD Flex window, then release the mouse button. By clicking and dragging the
mouse in the viewer window you can position the image however you like. You may
need to select the rotate button from the toolbar on the right side before clicking and
dragging the mouse.
Above the 3D Viewer, you will see a set of standard navigation tools for zoom in/out,
pan, and rotate which you can use to further manipulate the view.
In order to change how the parameter values are displayed, you need to load the settings.
(This step is optional in the Tutorial exercise) Right-click on Conductivity in the Model
Explorer, and select Settings. This will allow you to render by the parameter value (eg. Kx)
instead of by ZoneID, and also show cross-sectional slices and color maps. Take a moment
to experiment with these Settings, and when you are finished, click the OK button to close the
Settings.
In order to see another parameter group, you need to de-select (remove the checkbox
beside) Conductivity in the Model Explorer, then select (add a check-box beside) the new
parameter group, eg. Initial Heads. Take a moment to experiment with these options.
Take a moment to zoom into the river and constant head cells to see the boundary condition
cell geometry.
Each boundary condition will be colored differently. All wells and line-based boundary
conditions will be shown by default.
The display settings for a group of boundary condition cells can be adjusted through the
settings. We will turn on the Cell ID for the well cells.
Locate "PumpingWell1" in the Model Explorer, under Input / Boundary Conditions / Wells
Right click on this item and select Settings
Expand Style / Cells
beside Show Cell ID
Click [OK]
You should now see the Cell ID drawn beside the two well cells in the 3d viewer. You will
need to zoom into the two pumping wells in order to see the Cell ID label. The Cell ID can
assist when editing the numerical values, or when cross-checking the values in the .WEL
package. For more details on editing the numerical values for boundary conditions, see
View and Edit Boundary Conditions 523
Select the "Head_Observation Wells" data object from the Data tree in the top-left
panel of the window.
The translation will begin, it should complete in approximately 5-10 seconds. At this
stage, if any errors or warnings are encountered with any of the packages, you will be
notified. Take a moment to preview the MODFLOW-USG input files; each package will
appear as a separate tab across the top of the window.
When you are finished, you can proceed to the run step.
Click (Next Step) to proceed.
Run MODFLOW-USG
Click the button to run MODFLOW-USG. The MODFLOW-USG Engine will start
running and show progress of the current stress period and time step in a DOS console
window.
After the model converges you can view the summary of the mass balance for the last time
step in each stress period.
By default the view is plan (from above); take a moment to rotate the view as previously
described, and apply the desired vertical exaggeration (40 is ideal for this example).
The default option is to render all cells. You can display heads along a specific layer, or
cross-section by adjusting the settings.
Right-click on Heads from the Model Explorer (under Output / Flow), and select
Settings from the pop-up menu
In the Settings window, expand Style / Cells from the tree on the left side of the window.
Remove the check box beside "Show Cells" in the main window, as shown below.
Next from the Settings tree on the left, expand Slice, turn on the check box beside
"Show Slice", and change the Slice Type to "Layer" as shown below
Click the OK button to apply these changes to the 3D View, and close the Setting
window. You should then see just cells rendered for Layer 1 slice.
For Transient models, the 3D Displays can be updated to display calculated heads (or
drawdown) from different time steps. The available time steps are located in the
Settings.
Repeat the same steps above to load the Settings window. Expand Style, and select
the "Time" node from the tree, and you should see the following display
In the main window, under "Transient Attributes Time Schedule" you will see the list of
available time steps. Choose the desired output time from this list, then click the [Apply]
button at the bottom of the Settings window, and the 3D View will update with the
calculated heads from that time step. Take a moment to experiment with these
options..
Export
The calculated heads and drawdown can be exported to shapefile, for further post-
processing. This option is available by right-clicking on the "Heads" item on the Model
Explorer, and selecting "Export". The heads can be exported to either point or polygon
shapefiles, with attributes. This option is not covered in this Tutorial exercise.
Select the [View Charts] item from the workflow tree, under "View Results"
Select the "All Obs" check box in the Charts panel, as shown below.
Click the [Apply] button. You will then be presented with the graph for Calculated vs.
Observed Heads.
You can change the chart type to display Time Series graph, and see the corresponding
charts for the desired observation points. An example is shown below, with "All times" visible.
If, after running the numerical model for your project, you
find that the grid is not suitable or stable, you can return
back to the "Define UnStructured Grid 366 " step, create a
new grid (with different refinement levels), and generate a
new numerical model. You can then translate and run this
model.
In this fashion, you can evaluate multiple numerical
models, with very little effort, in order to find the best
balance between model run times and accuracy.
Make a backup copy of your Hydro GeoBuilder project and corresponding data repository
folder.
Download the Hydro GeoBuilder to VMOD Flex project conversion utility:
Unzip this to a temporary location on your computer.
Run the HGB2Flex.exe program and follow the on-screen instructions
Start VMOD Flex and open this project.
Ensure that you have your conceptual model created and at least one numerical grid
Right-click on the numerical grid node in the tree, and select "Convert to Numerical Model"
This will launch a new numerical model workflow window, that contains the steps for
navigating the inputs, run, and outputs for the numerical grid; the conversion may take a
few minutes, depending on the size and complexity of the grid and your model.
Use the workflow to navigate and see the resulting properties and boundary conditions. For
more details on the numerical modeling workflow, see the Numerical Modeling 384 Workflow
section.
If you run into difficulties, please contact Waterloo Hydrogeologic Technical Support.
Backwards Compatibility!
For more details, refer to the "Convert to Numerical Model 373 " section.
Learning more
The data import process in VMOD Flex varies slightly depending on the data type being
imported. However, in general, the importing process consists of the following steps:
The following sections provide additional information on the import process for each data type
Points 173
Polylines 182
Polygons 184
Surfaces 185
Wells 187
3D Gridded Data 194
Cross-Sections 198
Maps 200
Time Schedules 209
4.1.1 Points
Points represent discrete locations in space (XYZ) where attribute information is known.
Examples of points data include: ground surface or subsurface elevations, well tops,
locations with known aquifer hydraulic properties, etc. Typically, this information may come
from drilling wells or monitoring events where information is gathered from a specific
location.
Once imported, points data can then be interpolated to generate surfaces. These surfaces
can be used to create conceptual model horizons, or for defining property values for
structural zones. For more information on creating surfaces from points data see Creating
Surfaces 213 .
VMOD Flex supports the following file types for points data:
Shapefile, *.SHP
AutoCAD, *.DXF
Text, *.TXT
Comma-Separated Values, *.CSV
Access, *.MDB
Excel, *.XLS
For Points data, the following data must exist in separate columns, in your source data:
Y
Elevation
Attribute 1 (optional) (e.g., conductivity)
Attribute 2 (optional) (e.g., layer 2 elevation)
etc..
Right-click in the Data Explorer, and select Import Data... from the pop-up menu. The
import dialog will open:
Select Points from the Data Type drop-down list. Click the [...] button and locate the source
file.
Enter a Name and a Description (optional) for the imported data, and click [Next] to continue.
The next step allows you to preview the source data before importing, and will vary
depending on which file type is selected.
For .CSV and .TXT files (shown below), select the appropriate delimiter from the Delimiters
frame, e.g., if it is a *.CSV file, you would select “comma”. Specify which row to start
importing from using the From row selector.
For .XLS files (shown below), select which Excel worksheet to import from the Select
Worksheet drop down list. Also, you can choose which row to import from using the From
row selector.
For .MDB files (shown below), you can choose to import data from a table or a query, by
selecting either the View Tables or View Queries radio button. Select the desired query/table
from the Select Table or Query drop down list box.
Next, select the Coordinate System of the data being imported. If the coordinate system is
different than the one defined in the project settings, VMOD Flex will perform a
geotransformation, converting all coordinates to the project’s coordinate system. Click the
[Next>>] button to continue to the next step.
Next, set your Data Mapping by mapping columns in the source data to the target fields in
VMOD Flex. A read-only preview of the source data is presented. The process of data
mapping is described in the following section in greater detail.
Data Mapping
The first column in the Data Mapping table, named Target_Fields, contains the required target
fields for the data object. The second column, named Map_to, allows you to match the fields
in the source data to each required target field.
If the column labels in the source data are identical to the labels of the target fields, VMOD
Flex will automatically map the columns for you. However, if the labels differ, you must map
the columns manually.
To map a source field to a target field, select the corresponding source field from the drop list
box in the Map_to column. The drop down list displays the column headers in the data source
file.
For example, in the figure above, the elevation field in the source data is labeled “Z”. To map
this field to the target field “Elevation”, select “Z” from the adjacent drop down list.
If the file you are trying to import is a 3D Shapefile (with Elevation defined), then VMOD Flex
should automatically detect this, and you should not need to map the Elevation attribute at
this step.
Source fields that are not required, can be mapped by creating a new attribute. To create a
new attribute, click the Add a new attribute button. A new row will be added to the Data
Mapping table.
In the Map_to column, select the desired attribute field in the source data, from the combo
box. Repeat for additional attributes. You can delete a mapped attribute by selecting the row
from the Data Mapping table, and then clicking the Delete button.
Use the Unit Category and Unit columns to define the units of a mapped field. If the specified
units are different than those defined in the Project Settings, VMOD Flex will automatically
convert the data in the source file to the default project units.
The Multiplier column allows you to multiply all values in the mapped field by a specified
multiplier value.
The Data Type column allows you to define the data type. Select from the following options:
Numeric, Text, Boolean, Date and Time. For example, if the mapped column contains text
data, select Text from the drop down list.
Once the data mapping is complete, click the [Next] button to continue to the validation
dialog.
Data Validation
The final step involves validation of the data being imported. This step will ensure that the
data set contains valid data for each of the mapped fields.
In the top half of the dialog, VMOD Flex will list any mapped fields that contain invalid data,
along with a reason for why they are deemed invalid. The data validation rules for each
mapped column are as follows:
X and Y values must be a numeric value, and present in each row of the mapped data.
Data columns will be deemed invalid if VMOD Flex detects a null (blank) field.
Data in each column must satisfy the specified data type.
If invalid data exists, you can choose to import this data anyway. Otherwise, you can select
the Do Not Import Rows with Warnings check box, and VMOD Flex will not import any rows
deemed invalid.
Show only errors and warnings: When selected, only the records deemed invalid will be
shown in the preview table. Records that are deemed invalid will be colored either red
(error) or yellow (warning).
Show this amount: When selected, you can view a specified number of records in the
preview table below. Enter a value, and then click the [Apply] button to show the records
When you import pumping well schedule data or head/concentration observation data in
Absolute time format, VMOD Flex will check the date values against the start date you defined
in the modeling objectives;
For pumping well schedules, any wells that have dates before the model start date will be
flagged as warning, since these data cannot be used when you create Pumping Wells
Boundary condition object. Likewise
For head/concentration observations, any wells that have dates before the model start date
will be flagged as warnings, since these observations cannot be used as calibration points
in the numerical model.
Click the [Finish] button to import the data. Once imported, a data object will be added in the
Data Explorer.
4.1.2 Polylines
Polyline data consists of a series of points (vertices) connected by lines. Polyline data objects
can be used in VMOD Flex for defining geometry and assigning attributes to linear boundary
conditions, such as River and Drain boundary conditions. Polylines may also be useful to
visualizing geographic features such as river and road networks.
VMOD Flex supports the following file types for polyline data.
Shapefile, *.SHP
AutoCAD, *.DXF
Right-click in the Data Explorer, and select Import Data... from the pop-up menu.
Select Polyline from the Data Type drop down list.
Click the [...] button and locate the source file.
Enter a Name and a Description and then click [Next] to continue.
The next step involves selecting the coordinate system of the source file, and will vary
depending on which file-type is selected for the source file.
For .SHP files, if the associated .PRJ file is located in the same location as the source file,
VMOD Flex can automatically detect the coordinate system of the source data and will
perform a geotransformation if the coordinate system is different than that defined in the
project settings. If a .PRJ file is missing, than you will be prompted to select the Coordinate
System for the data being imported.
For .DXF files. you will always be prompted to select the Coordinate System of the selected
source file.
If the file type is .SHP, the next step involves creating attributes. If you are importing from .
DXF file, you can skip this step.
If the file you are trying to import is a 3D Shapefile (with Elevation defined), then VMOD Flex
should automatically detect this, and you should not need to map the Elevation attribute at
this step.
This dialog allows you to import shapefile attributes. To create a new attribute, click the Add
a new attribute button. When selected, a new row will be added to the Data Mapping table.
In the Map_to column, select the desired attribute field in the source data, from the combo
box. Repeat for additional attributes. You can delete a mapped attribute by selecting the row
from the Data Mapping table, and then clicking the Delete button.
For a description of the Unit Category, Unit, Multiplier and Data Type columns, please refer to
section "Data Mapping 179 " section.
The final step involves validation of the data being imported. This step will ensure that the
data set contains valid data for each of the mapped columns.
For .SHP files, please refer to "Data Validation 181 " section for more information on the data
validation step.
For .DXF files, the following dialog will show, indicating the number of polylines that will be
created from the source file.
Click the [Finish] button to complete the polygon importing process. Once imported, a polyline
data object will be added to the Data Explorer.
4.1.3 Polygons
Polygons are closed shapes consisting of vertices, line segments and have at least 3 sides.
Polygons can be used in VMOD Flex in the following ways:
Shapefile, *.SHP
AutoCAD, *.DXF
To import polygon data, follow the steps below:
Right-click in the Data Explorer and select Import Data... from the pop-up menu.
Select Polygon from the Data Type drop down list box.
Click the [...] button and locate the source file.
Enter a Name and a Description for the imported data, and click [Next] to continue.
The remaining workflow for importing polygon data is very similar to that of importing
Polylines. For more information on how to import polygons, please see Importing Polylines 182
4.1.4 Surfaces
Surface data consists of an ordered array of interpolated values at regularly spaced intervals
that represent the spatial distribution of an attribute, e.g., digital elevation models. Surface
data can be used in VMOD Flex in the following ways:
Right-click in the Data Explorer and select Import Data... from the pop-up menu.
Select Surface from the Data Type drop down list box.
Click the [...] button and locate the source file.
Enter a Name and a Description for the imported data, and click [Next] to continue.
Note: Surface files that contain a large quantity of data points may require substantial time to
import into VMOD Flex.
Next, select the Coordinate System of the data being imported. If the coordinate system is
different than the one defined in the project settings, VMOD Flex will perform a
geotransformation, converting all coordinates to the project’s coordinate system. Click the
[Next] button to continue to the next step
Surface data will usually only consist of three columns: X, Y and Attribute Data (elevation,
conductivity, etc). VMOD Flex will automatically map the source columns to the target fields.
You can preview the mapped data before importing into VMOD Flex.
Click the [Next] button to finish the import process. Upon importing, a new data object will be
added to the Data Explorer.
4.1.5 Wells
VMOD Flex supports the following file types for well data.
Excel,*.XLS
Right-click in the Data Explorer and select Import Data... from the pop-up menu.
Select Wells from the Data Type drop down list.
Click the [...] button and locate the source file.
Enter a Name and a Description for the imported data, and click [Next] to continue.
The next step allows you to preview the source data before importing, and choose a
subset of the source data, e.g., a worksheet of an excel file. Select which Excel
worksheet to import from the Select Worksheet drop-down list. Also, you can choose
which row to import from using the From Row text field.
VMOD Flex provides you with various options for importing wells, and associated well
data. For example, you can choose to import well heads (Well ID, X, Y, Elevation,
Bottom), or you can choose to import wells heads along with related screen locations,
pumping schedules, or observation points
In the Select the type of wells to import frame, choose between Vertical and Deviated
(Horizontal).
Next, specify how the vertical data is expressed in the source file. If the data is expressed
with respect to a vertical reference datum, e.g., above mean sea level, then select Elevation.
If the vertical data is expressed as a depth, e.g., distance from ground to the bottom of the
well, then select Measured Depth.
Time Options: Time-varying data can be imported in Absolute (eg. calendar date 5/10/2015)
or in Relative times (1 day, 30 days, 365 days, etc) where the value is relative to the start time
defined in the Modeling Objectives).
Select the Well Heads Only option to import just the well heads, i.e., X-Y coordinates,
elevation, and well depth for each well. Select the Well Heads with the Following Data option
to import additional data for each well. Options include:
Screen ID Location: Import the screen locations for each well. Select the Pumping Schedule
check box to also import related pumping schedules for each screen. This data could be
used later to define pumping well boundary conditions.
Observation Points: Import observation points for each well. Select either Observed heads,
Observed Concentrations, or both.
Well tops: Import the elevation (or measured depth) of points along the well path, where
geologic formation (contact points) intersect with the well. This data could be used later to
generate surface and horizon layers.
Note: For data requirements for each option please see the next step “Data Mapping”
Once you have selected which well data to import, click the [Next] button to proceed to the
data mapping .
This step requires you to map the columns in the source data to the required target fields.
The required fields will vary depending on the type of well data you selected in the previous
step. The following sections describe the data mapping for each data type option:
For importing Well Heads only, you must map the following columns from the source data
to the required target fields:
If this option is selected, you must first map the well heads under the Well Heads tab. Next,
click on the Screens tab, and map the appropriate columns from the source data to the
following target fields:
Screen ID
Screen Bottom Z (elevation of bottom of screen)
Screen Top Z (elevation of top of screen)
For each well in the source data, the Screen ID must be unique. Also, screens should not
overlap within a single well. These requirements will be validated in the final step of the well
import process.
If you selected the pumping schedule check box in the previous step, click the Pumping
Schedule tab and then map the appropriate columns from the source field to the following
target fields:
If time is not included in the source data (just the date), VMOD Flex will automatically set the
time to 12:00:00 pm.
Currently, Pumping Schedules can only be imported using absolute time. Please ensure that
the date and time values in your source data are expressed in absolute time (MM/DD/YYYY
HH:MM:SS) and not relative time (0-10 days, 10-20 days, etc..).
When this option is selected, you must first map the well heads under the Well Heads tab
(described above). Next, click the Observation Points tab, and map the appropriate columns
from the source data to the following target fields:
Obs Point ID
When this option is selected, you must first map the well heads under the Well Heads tab
(described above). Next, click on the Tops tab and map the appropriate columns from the
source data to the following target fields:
Please note, the well top data in the source file must be formatted as follows:
Validation Step
The final step in the Well import process is data validation. VMOD Flex will validate the
mapped data, and highlights any rows that contain invalid data, e.g., null values, wrong
assigned data type, duplicate rows etc.
Please see "Data Validation 181 " section for more information on data validation.
Click the [Next] button to import the data. Once imported, a Wells data object will be added in
the Data Explorer.
Note: In order to import data from MODFLOW .HDS files, the source file must exist in the
folder that contains all associated MODFLOW data files, e.g., .DIS, .NAM etc.
Right-click in the Data Explorer and select Import Data... from the pop-up menu.
Select 3D Gridded Data from the Data Type drop down list.
Click the [...] button and locate the source file.
Enter a Name and a Description for the imported data, and click [Next] to continue.
Next, select the Coordinate System of the 3D Gridded data. If the coordinate system is
different than the one defined in the project settings, VMOD Flex will perform a
geotransformation, converting all coordinates to the project’s coordinate system. Click
the [Next] button to continue to the next step.
The next step allows you to specify how the gridded data is to be imported.
When importing a .HDS file, the Gridded data for existing grid option will be automatically
selected. The grid dimensions in the source file must be identical to the dimensions of a grid
in your project. Select the existing numerical grid from Conceptual Model tree, and then click
the button.
When importing a .DAT file, the Gridded data for existing grid option will be unchecked.
When this option is selected, the Grid Origin frame will display. If the gridded data is in model
coordinates, specify the Grid Origin and the degree of Rotation. If the grid is in world
coordinates, you may leave the grid origin as is.
For both file types, you can specify the grid resolution. To import the full grid dimensions,
select Import the true grid dimensions option. Please note that depending on the performance
capabilities of your computer, 3D Gridded data containing large volumes of data may take a
significant time to import.
To improve importing and viewing performance, select the Import a reduced grid size option,
and specify a value in the Import every nth node box. For example, if a value of 2 is defined,
then VMOD Flex will only display every other node in the 3D grid.
Next, select the appropriate Data Category, Unit and Data Type for each of the mapped
attributes.
The final dialog in the import process for 3D Gridded shows the grid dimensions of the
source data.
The Source Dimensions frame displays the Number of Rows, Number of Layers, Number of
Columns and Number of Time Steps in the source data.
4.1.7 Cross-Sections
VMOD Flex is capable of importing 3D cross sections generated by Hydro GeoAnalyst (HGA)
data management software.
For information on how to create 3D cross section in HGA, please refer to the HGA User’s
Manual. For HGA product information, please visit our website: www.waterloohydrogeolgic.
com or contact your sales representative or local distributor.
When a cross section is created in HGA’s 3D Explorer, a file (*.3XS) is saved in the v3D
folder, located in the HGA project folder. By default, the location of this folder is
A *.3XS file contains information on the wells and layers of each cross section. The cross
section can contain geology, hydrogeology, and model layer interpretation layers. When
imported into VMOD Flex, this data can be used for generating surfaces and horizons from
interpretation layers, or simply for visualization purposes.
To import a cross section file in VMOD Flex, follow the steps below:
Right-click in the Data Explorer and select Import Data... from the pop-up menu.
Select Cross Section from the Data Type drop down list.
Click the [...] button and locate the source file.
Enter a Name and a Description for the data, and click [Next] to continue
Next, select the Coordinate System of the cross section. If the coordinate system is different
than the one defined in the project settings, VMOD Flex will perform a geotransformation,
converting all coordinates to the project’s coordinate system. Click the [Next] button to
continue to the next step.
The final step involves selecting the elevation units and previewing the cross section data.
At the top of the dialog, specify the cross section elevation units from the drop-down list box.
You can choose from metres or feet.
The Source File Data frame contains information about the selected source file. Here you can
preview the Number of Cross sections in the source file, along with the cross section names.
The Number of wells in the source data is shown, along with the well names. Finally, the
number and type of interpretations in the source data are shown, e.g., Model, Geology and
HydroGeology.
Click the [Finish] button to import the cross section data. Upon importing, a new cross
section data object will be added to the Data Explorer.
4.1.8 Maps
Site maps of the model region, such as aerial photographs, topographic maps and satellite
imagery, are often useful for gaining a perspective of the dimensions of the model, and for
locating important characteristics of the model. Although maps do not contain any specific
data used in the calculations, and the presence of a map does not influence the results of the
simulation, they are useful for enhancing visualization of the model.
*.BMP, Bitmap
Note: When a raster image is imported into VMOD Flex, the source file is copied and saved
in the project’s data repository folder. As such, the original file may be modified, moved or
deleted without affecting the imported raster image.
Right-click in the Data Explorer and select Import Data... from the pop-up menu.
Select Map from the Data Type drop down list.
Click the [...] button and locate the source file.
Enter a Name and a Description for the data, and click [Next] to continue
Next, select the Coordinate System of the image file. If the coordinate system is different than
the one defined in the project settings, VMOD Flex will perform a geotransformation,
converting all coordinates to the project’s coordinate system.
All raster images must be georeferenced before importing into VMOD Flex. If the selected
raster image has already been georeferenced, it will have an associated "world" file, and as
such, it will not need to be georeferenced in VMOD Flex. Please note that this world file must
have the same filename as the image, and must be located in the same folder as the
selected source file, in order for VMOD Flex to recognize it. The following table summarizes
the supported graphics file types, and the corresponding georeferencing tag files:
If your source image has a world file, you can skip to the final step. If the source file does not
have a world file, you will be prompted to manually georeference the raster image. This
procedure is described in the following section.
Georeferencing Images
Georeferencing a graphics file involves mapping a coordinate system to the individual pixels
of the image. When this is required, the following window will display, when importing a raster
image:
Toolbar Buttons
Save: Saves the transformed image, along with a corresponding georeferencing tag
file.
Zoom In: Click-and-drag the mouse to select the zoom area.
Zoom Out: Zoom out of the image.
Full Extent: Zoom completely out so that the entire image is shown.
Pan: When zoomed in, move the image left, right, up or down.
Add (Control Point): Add a georeference point. See "Adding Georeference Points".
Delete (Control Point): Delete a selected georeference point.
Transform Image: Assigns coordinates to image pixels using the specified control
points.
Output Region: This button allows you to save a specified area of the image to the
georeferenced file, after the image has been transformed. By default, the output region is the
whole image. Click-and-drag a rectangular box on the image to define a new output region,
and then click the Save button to save the output region to the georeference file.
Configure Georeferencing Options: Opens the configure georeferencing options dialog box.
For more information on these options, please see "Configure Georeferencing Options"
section.
You can also delete a control point from the control points table. To do so, select an existing
control point from the grid, and then click the Delete button.
The georeference information table displays information about the georeferenced image
including the original image file name and path, the original image size, and coordinate type
(projected, local or geographic). It also displays information on the transformation such as the
degree of rotation, scale X-Y shift, and the output file name path and image size.
In order to map pixels of the image to a coordinate system, the image must have at least two
georeference points with known world coordinates.
Once you have set at least two georeference points, click the Transform button to
georeference the image. The georeferenced image will then be displayed in the Preview tab.
When the Configure Georeferencing Options button is selected, the following dialog will
open:
Symbols Tab
This tab allows you to change the style settings of the original control points and the
georeference points. Choose a Style, symbol Size and Color. A preview of the symbol
settings is shown in the boxes below.
When a georeferenced image is rotated, you can fill the areas of empty space with a
specified color. Otherwise, leave the check box unchecked and the empty space will show
transparent.
Click the color box beside Fill color for empty area to select the color to fill the empty spaces
(only if Show Fill Color option is selected).
Use the slider to set the JPEG Image Quality. When set closer to L (low), more compression
is used in the saved georeference image file, resulting in a smaller file and poorer quality.
When set close to H (high), less compression is used in the saved georeferenced image file,
resulting in a larger file with better quality.
From the Interpolation Mode combo box, specify the interpolation method (algorithm) to use
when the image is scaled or rotated The various interpolation methods are briefly described
below. Keep in mind, lower-quality interpolation mode will result in a smaller output file,
whereas high-quality interpolation modes will result in a larger output file.
Bilinear: Bilinear interpolation. No prefiltering is done. This mode is not suitable for shrinking
an image below 50 percent of its original size.
Bicubic: Bicubic interpolation. No prefiltering is done. This mode is not suitable for shrinking
an image below 25 percent of its original size.
Graticule Tab
The graticule tab provides display options for the preview graticule. These settings are
described below.
Padding Space Controls the amount of buffer space between the edge of the preview window
display, and the labels on the axis. It may be necessary to increase this value when the X and
Y coordinates contain many digits.
Line Style Select from various line styles, e.g., solid, dashed, etc.
Major mark width Set the width of the major mark ticks.
Interval If Auto Interval is not selected, set the distance between graticule lines.
Mark Settings Controls the axis labels. For each axis, you can set the visible status, rotate the
label, and control the gap between the label and the axis itself.
The final step involves previewing the raster image and viewing coordinate information, before
importing into VMOD Flex.
The Map Coordinates frame provides the georeferenced coordinates of the Top Right and
Bottom Left corners of the image. The path of the georeferenced image, and the associated
georeference tag file is also shown.
Click the [Finish] button to import the map into VMOD Flex.
Excel, *.XLS
Time schedule data can be imported using either an absolute or relative time format. An
example of an absolute time schedule is shown below:
Right-click in the Data Explorer and select Import Data... from the pop-up menu.
Select Time Schedule from the Data Type drop down list.
Click the [...] button and locate the source file.
Enter a Name and a Description for the imported data, and click [Next] to continue.
The next step allows you to preview the source data before importing, and choose a subset
of the source data, e.g., a worksheet of an excel file. Select which Excel worksheet to import
from the Select Worksheet drop down list. Also, you can choose which row to import from
using the From Row text field.
The next step involves selecting the type of time data used in the source file.
If the time values are expressed in relative time select the Relative option, and specify the
starting date and time from the combo boxes.
If the time values are expressed in absolute time, select the Absolute option.
The next step involves data mapping and creating attributes. The required target fields will
vary depending on which option was selected in the previous step, e.g., Absolute or Relative.
If you selected Absolute, the required target field will be Start Date and Time, and if you
selected Relative, the required target field will be Relative Time. Map the time field in your
source data to the required target field.
Next, create a new attribute, and map any associated parameter, e.g., recharge, in the
source data to the new attribute. If necessary, repeat for additional parameters in the time
schedule.
Data mapping and creating new attributes are described in the "Data Mapping 179 " section.
The final step in the time schedule import process is data validation. VMOD Flex will validate
the mapped data, and highlights any rows that contain invalid data, e.g., null values, wrong
assigned data type, duplicate rows etc.
Please see "Data Validation 181 " for more information on data validation.
Click the [Next] button to import the data. Once imported, a time schedule data object will be
added in the Data Explorer.
To import your Visual MODFLOW project, select the .VMF file and click OK to continue.
The .VMF file must be from VMOD v.2009.1 and later.
If your VMOD Classic project contains Transport Boundary condition parameters, then please
refer to the section "Transport Boundary Condition parameters" 433 for more details on the
differences in which VMOD Flex handles point source concentrations over VMOD Classic.
While the model is created, you will see the corresponding inputs added to the Model
Explorer.
Often you may need to import an existing MODFLOW data set into VMOD Flex in order to
review the model, or evaluate different scenarios. VMOD Flex can import existing MODFLOW
data sets provided they are in MODFLOW-2000 or MODFLOW-2005 format.
To import a MODFLOW-2000 model data set, select the .NAM file (or .MODFLOW.IN) at the
Import Grid screen.
Note: The .NAM file (or .MODFLOW.IN file) is an ASCII file containing a list of the input and
output data files for the model, and their location (folder and pathname) on the computer. If
the model files have been moved to a new location, the file must be manually updated to
reflect the new file location(s).
Once you have selected the desired model data file, click on the [Open] button to continue.
For more details on the Import MODFLOW process and limitations, please refer to s.2.2 of
the Visual MODFLOW User Documentation.
Surfaces are required in VMOD Flex for defining the vertical boundaries of structural zones, i.
e., horizons, in a conceptual model. However, surfaces can also be used to assign spatially-
variable attributes to property zones and boundary conditions, or for simply visualizing spatial
variation using the 2D or 3D Viewers.
The create surface process allows you to generate surfaces using any numeric attribute in a
point data object. The point data object can be one that has been imported using the import
utility, or one that has been generated from other data objects, e.g., cross sections and wells.
For more information on creating points data objects from well data and cross sections,
please see Creating Points from Model Layer cross-sections 248 and Converting well tops to
points data 249 .
Creating a Surface
From the Data Explorer, right-click anywhere and select Create Surface... from the
pop-up menu.
The Create Surface dialog will display. Specify the general settings, described in the
following section.
Enter a unique name for the surface in the Surface Name field, and a description of the
surface (optional) in the Description text box.
The Data Source frame allows you to select the point data object(s) from which the surface
will be created.
From the Data Explorer, select the desired Point data object from which the surface will
be interpolated.
Click the Add button, to add the point data object to the Data Source frame.
VMOD Flex allows you to create a single surface from multiple point data objects.
Repeat the steps above to add additional points data objects to the Data Source
frame.
For each data source, select the Z Value from the combo box (shown below). The Z
value can be any numeric attribute stored in the points data source, e.g., Elevation,
Conductivity, etc.
Next, click the Interpolation Settings tab to define the interpolation settings for the surface.
These settings are described in the following section.
Interpolation Settings
Select the interpolation method to use for generating the surface. Choose from the following
interpolation methods:
Inverse Distance
Kriging
Natural Neighbor
Below are brief descriptions of each interpolation method, taken from the GSLIB
Geostatistical Software Library and User’s Guide (Deutsch and Journel, 1998). For a
description of each interpolation parameter setting, click on the setting, and a brief description
will be displayed beneath the interpolation settings grid.
Once the settings have been defined, click the [OK] button to generate the surface.
Inverse Distance
The Inverse Distance Squared method is very fast and efficient, weighted average
interpolation method. The weighting factor applied to the data depends on the distance of the
point from the grid cell, and is inversely proportional to the distance squared. Consequently,
the greater the distance the data point is from the grid node, the smaller the influence it has
on the calculated value.
The Inverse Distance Squared method for interpolation may generate patterns similar to the
“bull’s-eye” surrounding points of observations. Selecting a larger number of nearest
neighboring data points may smooth this effect, but if the bull’s eye pattern is undesirable,
then other methods for interpolation, like Natural Neighbor and Kriging, are recommended.
Kriging
Kriging is a geostatistical method that produces visually appealing maps from irregularly
spaced data. Anistropy and underlying trends suggested in raw data can be incorporated in
an efficient manner through Kriging. The program used, called kt3d, is available in the public
domain from the Geostatistical Software Library (GSLIB), distributed by Stanford University,
and is well documented by Deutsch and Journel (1998). The project kt3d performs simple
Kriging, ordinary Kriging, or Kriging with a polynomial trend, and uses the standard parameter
file used by GSLIP. If the semi-variogram components have already been modeled by the
user, they can be incorporated into the program by choosing the appropriate set of
parameters in the parameter file. The semi-variograms available include Spherical,
Exponential, Gaussian, Power, and the Hoe effect models. If the variogram information is not
available, the default linear variogram with no nugget effect should be used. This option is a
special case of the Power model with the exponent equal to 1.
Natural Neighbors
The Natural Neighbor method (Watson, 1994) is based on the Thiessen polygon method
used for interpolating rainfall data. The grid node for interpolation is considered a new point, or
target, to the existing data set. With the addition of this point, the Thiessen polygons based on
the existing points are modified to include the new point. The polygons reduce in area to
include the new points, and the area that is taken out from the existing polygons is called the
“borrowed area”. The interpolation algorithm calculates the interpolated value as the weighted
average of the neighboring observations where the weights are proportional to the borrowed
areas. The Natural Neighbor method is valid only with the convex hull of the Thiessen polygon
formed by the data points, and values outside the hull extrapolation should be used with
caution.
The Natural Neighbor interpolation scheme may be visualized as a taut rubber sheet
stretched to satisfy all the data points. The interpolated value at any location is a linear
combination of all Natural Neighbors of that location, and the resulting surface is continuous
with a slope that is also continuous. Combining the gradients or slopes with the linear
interpolation provides results that are more smooth, and may anticipate the peak and valleys
between data. Singularities and other undesirable effects may be lessened by incorporating
the gradient factor.
The gradient influence on the results can be manipulated by two tautness parameters that
you can enter. These parameters allow the interpolated surface to vary from purely linear
interpolation to one which is well rounded and has a gradient factor. In all cases the slope
discontinuities are removed and the resulting surface has slope continuity everywhere.
To define the interpolation domain using a polygon data object, follow the steps below:
In the Create Surface dialog box, select the Use a polygon extent check box.
Select a polygon data object from the Data Explorer, and then click the button.
When the polygon data object is selected, the interpolation domain values in the settings grid
will update with the X-Y extents of the selected polygon data object.
The 2D Viewer provides interactive drawing tools which allow you to create your own polygon,
polyline and point data objects. This feature can be useful for digitizing boundary condition
areas, property zones or your conceptual model boundary. To create a new polygon, polyline
or points data object, follow the steps below.
In the Data Explorer, right-click and select Create New Data Object from the pop-up
menu. The following dialog will display:
Select the data object type from the Layer Type combo box.
Enter a name for the data object in the Layer Name field.
Click the [Ok] button to create the new data object.
Once created, the new data object will appear in the Data Explorer. From here, you can
define the geometry of the data object using the 2D Viewer editing tools.
The 2D Viewer allows you to create and modify the geometry of points, polylines and polygon
data objects. The process of drawing in a 2D Viewer is described below:
Open a 2D Viewer by selecting Window from the VMOD Flex main menu, and then
clicking New 2D Window.
Next, display the data object that will be edited in the 2D Viewer. Note: You can have
multiple data objects displayed in the viewer while you’re editing/drawing the data
object. However, make sure that the data object being edited is the “active” one by
selecting the data object name from the Layer combo box, located at the bottom of the
2D Viewer window.
From the 2D Viewer sidebar, select the Pick button to set the 2D Viewer to pick
mode. Pick mode allows you to click and select individual shape elements, e.g.,
vertices, line segments, features, that comprise the active data object.
From the 2D Viewer sidebar, select the Edit button to set the 2D Viewer to edit
mode. Once this button is selected, a set of editing buttons will display in the 2D Viewer
sidebar. The edit buttons that show in the sidebar will vary depending on which type of
data object is being edited. For example, the Add Points button will not be shown when
you are editing/creating a polygon or polyline data object. The edit buttons are
described below.
Undo All: Undo all edits. This button will revert the data object back
to its original geometry.
If you are editing an existing polyline or polygon data object, the
Selector combo box located at the bottom of the 2D Viewer allows
you to select and modify the points (vertices) that comprise the
features in the data object. For example, if you are editing a
polyline data object, you can select Points from the Selector
combo box, and each vertex that comprises each polyline will
become active, allowing you to add, move or delete the vertices.
When the Selector combo box is set to Points, the following icons
are added to the 2D Viewer sidebar.
Add Vertex: Add a vertex to a polyline or polygon feature by placing
your mouse in the desired location on the line or polygon
boundary, and clicking the left mouse button.
Move Vertex: Select and hold the left mouse button and move the
vertex to a new location the line or polygon boundary.
Delete Vertex: When selected, select a vertex to remove from a
line and or polygon boundary.
Once you have created/modified the data object geometry using the edit tools described
above, click the End Edit button to save the changes.
Finally, click the View button to return to the normal 2D Viewing mode.
VMOD Flex allows you to have multiple viewers opened and displayed simultaneously. Both
viewers can be launched by clicking on Window from the main menu, and then selecting New
2D Window or New 3D Window.
See Also:
Export 515 for details on exporting data from a viewer
Exporting 2D/3D Views to image 233
5.1 Viewers_Opening_Adding_Data_Objects
Opening a new 2D or 3D Viewer
There are two ways in which you can launch a 2D or 3D Viewer in VMOD Flex: From the
Main Menu or from the Data Explorer.
To display data in a
viewer, select the check
box beside the data
object in the Data
Explorer or Conceptual
Model Explorer. If
multiple viewers are
opened, the data will be
shown in the active
viewer.
Layer ordering
in 2D Viewer is
determined by
the sequence in
which data
objects are
added to the
viewer. For
example, if two
data objects
completely
overlap each
other, the data
object added
last will appear
on top of the
other.
The Layer
combo box
contains all of
the layers
currently
displayed in the
2D Viewer.
Select a layer
from the combo
box to bring it to
“the top” of the
layer order.
5.2 Viewers_Working_With_Viewers
Using Multiple Viewers
VMOD Flex allows you to have multiple 2D and 3D Viewer windows opened and displayed at
one time. When a new viewer is opened, it is added to the window bar, located at the top of
the main VMOD Flex Window.
You can change the current active viewer by clicking on a different tab from the bar.
Flex Viewer
The Flex viewer is available in the numerical modeling workflow for regular (MODFLOW
Finite Difference) grids. This multi-purpose view gives you the ability to view and inspect your
numerical model data along a selected layer, row, column, and 3D view.
Under Views, select the various views you want to see in the Flex viewer; VMOD Flex
allows you to simultaneously show a layer, row, column and 3D Views. Place a check box
beside the desired view and it will appear on the screen.
Adjust a specific layer, row, or column using the up/down arrows. Alternatively, click on
the button then click on any specific row, column, or layer in any of the 2D views, and
the selected row, column, or layer will be set automatically.
The 3D Viewer will show a "ThreeSlice" view of the selected Layer, Row, and Column; for
details on controlling the display of this, see 3D Gridded Data Settings 269
Objects in View
Below the list of Views you will see the Objects in View Panel.
This panel provides a list of the data objects that are visible in the current view; any objects
that have been "checked on" from the Data tab or Model Explorer will be listed in this Objects
in View; since both the Data tab and Model Explorer can grow in size and complexity as your
project evolves, this Objects in View panel provides a nice short-cut to hide objects you don't
wish to see in the view. In addition, you can access context menu options from this panel;
these are menu items that were typically only available by right-clicking on the Data tab or
Model Explorer.
5.3 Viewers_Controls
The viewer controls allow you to interact with displayed data objects. The controls are
accessible from the toolbar located along the right side of the viewer window.
View Mode: The default mode. Allows you to zoom, rotate and pan
the displayed data objects.
Pick Mode (2D Viewer Only): Allows you to select individual data
object elements currently displayed in the viewer. When in Pick
Mode, the Edit button will be shown in the sidebar, allowing you to
edit the selected data object element.
Rotate: Allows you to rotate the displayed data objects using your
mouse. Click-and-hold on the displayed data, and move the
mouse in a direction to rotate the data. (Available in 3D Viewer
only).
Move/Pan: Allows you to move/pan the displayed data objects in
the viewer.
Zoom In: Allows you to zoom in on the displayed data objects.
Zoom Out: Allows you to zoom out of the displayed data objects.
Zoom Into box:: Use the mouse cursor to draw a box around an
area of interest, and automatically zoom into this area.
The 2D Viewer can be linked with the spreadsheet table such that when a polyline, polygon or
point feature is selected in the 2D viewer, its corresponding attribute data is automatically
highlighted in the spreadsheet table. Likewise, when an attribute row is selected in the
spreadsheet table, its corresponding feature is highlighted in the active 2D Viewer. In order to
have this bidirectional linking between viewer and spreadsheet table, the 2D Viewer must be
in Pick mode, and the spreadsheet table must be opened.
Tip! Data object spreadsheet tables can be viewed by right-clicking on the data object in the
Data Explorer, and selecting Spreadsheet... from the pop-up menu. 2D Viewers can be set to
pick mode by selecting the Pick Mode button from the viewer sidebar.
Setting the Vertical Exaggeration: The Vertical Exaggeration is the ratio of the scale of
the Y-axis to the scale of the X-axis. Vertical exaggeration can be used for discerning
subtle topographic features or when the data covers a large horizontal distance (miles)
relative to the relief (feet). By default, the vertical exaggeration is set to 0. You can
change the vertical exaggeration using the Exaggeration text box, located at the bottom
of the 3D Viewer (shown below).
Resetting the Viewer: To zoom out to the full extents of your data click the Reset
Scene Position button located at the bottom of the viewer. Please note that clicking this
button will reset the rotation and zoom level back to the original view configuration.
Right-click anywhere inside the 3D Viewer, and select CutAway Properties from the
pop-up menu. The following dialog box will display on your screen.
Click the CutOffs Active check box to enable CutAways.
Under the Activity tab, specify which slices to make active by clicking the appropriate
Active check boxes. The YZ slice refers to a vertical plane along the Y and Z axis, the
XZ slice refer to a vertical plane along the X and Z axis, and the YZ slice refers to a
horizontal plane along the Y and Z axis.
For each active slice, select which portion to remove from the viewer (for example, the
portion of the model that is left or right side of the slice, before or after the slice, or
above or under the slice).
By default, the position of each slice is automatically positioned in the middle of the data
along its respective axis. However, you can manually change the position of the slice by
entering a new value in the Position field. Note: The Xmin, Xmax, Ymin, Ymax, Zmin
and Zmax fields are read-only, and cannot be changed.
Alternatively, you can set the position of a slice by entering a value in the Fraction field.
For example a fraction value of 0.5 will set the slice position in the middle of the 3D
data.
Click the [OK] button to apply the changes to the current 3D Viewer.
Right-click on the 3D viewer and select the Animation Parameters. The following options are
available:
Rotate will allow you to rotate the model domain around the specified axis.
If you wish to save to a video file, select the check box beside Write Video File and specify a
name and directory. The combo box below this allows you to specify the video resolution.
If you click on the Time tab, you will have options to specify the start and end time and the
number of time frames. These options are only appropriate if you are animating Heads or
Then right-click on the 3D viewer and select Animate and the rotation will start. If you have
selected to record a video file, then the video recording will begin.
Once you are done recording, right click on the 3D viewer again and select Animate to stop
the animation.
Warning!
Heads/Drawdown, or Concentrations
Select the desired image size from the Image Size combo box. If you select Custom,
then specify the desired image dimensions in the Height and Width combo boxes.
Click the [...] button and specify a folder location on your computer to save the image
file.
Click the [Ok] button to save the image.
6 Data Settings
VMOD Flex allows you to view and modify various settings and properties for each imported
or digitized data object. In general, data object settings consist of the following categories:
General: View data object metadata including source data information, statistics, native
coordinate system, field mappings; view the attribute and geometry table.
Operations: Apply arithmetic and geometric operations to data object geometry and
attributes.
Style Settings: Modify various style settings for different data object elements, e.g.,
point/line symbology, show labels, color rendering by attribute, create isosurfaces, set
transparency etc.
Data object settings can be accessed from the main VMOD Flex window. To view the
settings for a data object, in the Data Explorer, right-click on the desired data object and
select Settings... from the pop-up menu.
Info
The Info node contains the following information:
Name: The name of the data object (read only) defined during import.
Type: The type of the data object, e.g., points, polygon, polyline.
Data Source: The folder path of the data source when the data was imported.
Color: The color of the data object when displayed in 2D and 3D Viewers. Click the color box
to select a new color for the data object.
Description: The description of the data object as defined during import. This field is editable
allowing you to update the description at any time.
Table (Button):The table button allows you to view the geometry and attributes of the data
object in a table view. For more information on the table view, please see "Viewing the Data
Table 236 " section.
Details
The Details node contains information on the coordinate system of the data object, and the
field mappings specified during import.
Statistics
The Statistics node displays a count summary of the various data elements that comprise
the data object. For example, for polygon data objects, the statistics node will show the
number of polygons, polygon parts and vertices in the data object. For cross section data
For Property and Structural Zone conceptual model objects, various statistics are
automatically calculated and displayed under the statistics nodes, including: Min and Max X, Y
and Z values, Area and Volume.
The data table allows you to view the geometry and attribute values of a data object. The data
table can be accessed from the General settings in the Settings dialog, or it can be launched
by right-clicking on the data object in the Data Explorer, and selecting Spreadsheet... . Note:
Map and Cross Section data objects do not have a data table.
The Attribute tab contains the attribute data of the selected data object. Each column in the
attribute tab represents an attribute. The Geometry tab contains the geometry (X,Y, Z) values
of the data object. In both tabs, the FID column uniquely identifies each feature in the data
object.
To copy data to the Windows clipboard, highlight the data to be copied, and then click the
Copy button , or press CTRL+C on your keyboard.
Tip! When a data object is shown in 2D Viewer and the viewer is set to Pick Mode, you can
select a row from the attribute or geometry table, and the corresponding feature will be
highlighted in the 2D Viewer.
Imported geometry and attribute data can be modified in the Data Table. To make changes to
data, click the Begin Edit button to enter edit mode. Make the necessary changes to the
data table and once finished, click the End Edit button to save the changes. Please note
that the data table only allows you to modify existing attribute and geometry data. Currently,
VMOD Flex does not allow you to create new columns, i.e., new data object attributes. This
can only be done during the data import process.
Well Table
For Wells data objects, the data table is different than that of other data objects. The Well
data table is designed to allow you to add and/or modify wells and associated well data, e.g.,
pumping schedule, screen intervals, observation points, etc.
To access the well table, right-click on a Wells data object in the Data Explorer, and select
Settings... . In the Settings dialog, click on the Table button.
In the Well Table, there are two tabs: Vertical and Horizontal. Each tab is described in the
following sections.
Vertical Wells
The Vertical tab allows you to view and modify data for vertical wells.
The Well Heads table contains a list of all the wells in the data object. The data stored in this
table includes the Name, X-Y coordinates, Elevation and Depth for each well. When a well is
selected, its corresponding attribute data is displayed in the adjacent data tables, e.g.,
Screens, Pumping Schedule. You can search for a well in the Well Heads table by entering
the well name in the text box, located at the top of the window, and then clicking the [Find]
button.
The Data to Display list box allows you to select which tables to display. For example, if
Screens is selected (default), the Screens and Pumping Schedule tables will be shown. If
Observations is selected, the Observation Points and Observation Data tables are shown. If
Well Tops is selected, the Well Tops table will be shown.
The Display Format frame allows you express the Z values in the data tables as either an
Elevation or a Measured Depth (with respect to the well head Zmax).
At the top of each table, there is a set of buttons that allow you to add, remove and modify the
contents. The function of these buttons, in order from left to right, is described below:
To add an item to the Well Head table, follow the steps below:
Click the Add Row button from the Well Head toolbar to add a new item to the table.
Enter an alphanumeric name in the Well Name column. Note: The well name must be
unique and it may contain hyphens and spaces, but not the forward or backward slash
characters.
Enter the X-Y coordinates of the well head in the X and Y fields, respectively.
Enter the elevation of the well head in the Zmax field.
Enter the depth of the well in the Zmin field.
To add an item to the Well Screen table, follow the steps below:
Make sure the Screens option is selected from the Data to Display box.
Select a Well from the Well Head table
Click the Add Row button from the Screens toolbar to add a new item to the table.
Enter a screen identification number in the Screen ID field.
Enter a screen top elevation (or measured depth) in the Screen Top field.
Enter a screen bottom elevation (or measured depth) in the Screen Bottom field.
The Pumping Schedule table is used to enter the well pumping rates for specified time
periods. Negative pumping rate values are used for extraction wells, and positive pumping
rates are used for injection wells.
Pumping well schedules are defined for the entire well, and therefore a screen must exist
before a pumping schedule can be defined.
Make sure the Screens option is selected from the Data to Display box.
Select a Well from the Well Head table, and a Screen from the Screen Table (if multiple
screens exist)
Click the Add Row button from the Pumping Schedule toolbar to add a new item to the
table.
Enter a Start time value and press the <Tab> key to advance to the End time field.
Enter an End time value and press the <Tab> key to advance to the Rate field.
Enter a pumping Rate value (remember to use a negative value for extraction wells)
Press the <Tab> key again to create a new schedule item.
The final time in the pumping schedule should have a pumping rate of 0 to indicate the
stop time.
Note: If the pumping schedule is not specified for the entire length of the transient simulation,
then it will assume the well is shut off for the time where no information is available. For
steady-state simulation, the pumping rate for the first time period will be used as the steady-
state pumping rate.
The "Show as Relative Times", when selected will display time schedule data starting at 0,
and relative to the start date defined in the Modeling Objectives; this is useful when you want
to correlates the raw well data to MODFLOW time formats. When this option is not selected,
then time schedule data will appear in "Absolute" (calendar) time formats.
Observation Points are the elevations at which head or concentration observations are
recorded. Although most monitoring or observation wells are installed with a well screen
spanning a known interval of the aquifer, VMOD Flex requires a single observation point
elevation to be defined instead of a well screen interval.
Select the Observations option from the Data to Display box. This will show the
Observation Points table.
Select a well from the Well Heads table
Click the Add Row button from the Observation Points toolbar to add a new item to the
table.
Enter an observation point ID in the ID field.
Enter an elevation value in the Elevation field.
The MODFLOW simulator supports head and concentration observation wells with multiple
observation points throughout the length of the well-bore. Repeat the steps above to add
additional points.
The Observation Data table is used to enter the observed values at specified times, for the
selected observation point.
To add observations to the Observation Data table, follow the steps below:
The "Show as Relative Times", when selected will display time related data starting at 0, and
relative to the start date defined in the Modeling Objectives; this is useful when you want to
correlates the raw well data to MODFLOW output time. When this option is not selected,
then time related data will appear in "Absolute" (calendar) time formats.
The Well tops table is used to enter the elevation points along the well path, where the well
intersects with a horizon. Well top information can be used in VMOD Flex to create surfaces
which can then be used to define conceptual model horizons. For more information on
creating surfaces from well tops, please see "Converting Well Tops to Points Data Object 249
" section.
To add well top information to the Well Top table, follow the steps below:
Horizontal Wells
The Horizontal Well tab is used to store information on deviated (horizontal wells) and
contains many of the features available in the Vertical Well tab, e g., add/modify screens,
pumping schedule observation points etc. Please refer to the previous section for a
description of these common features. The primary difference of the horizontal well tab is the
ability to view and modify the deviated Well Paths.
The Well Path table is used to view, add and modify the well paths for horizontal wells. When
a well is selected from the Well Heads table, its corresponding well path geometry data is
displayed in the Well Path table.
Horizontal well paths consist of a series of points with known coordinates and elevation that
represent nodes along the well path trajectory. VMOD Flex then creates the well path by
connecting each node in the series.
The Elevation frame allows you specify the Z value of the well path nodes as either an
Elevation or as a Total Vertical Depth (measured from ground surface).
Select the Well from the Well Heads table for which the well path will be created.
Click the Add Row button from the Well Path toolbar to add a new item to the table.
Enter the X, Y and Z value of the well path node in the table. If this is the first row in the
table, you would enter the X, Y and Z values of the well head, i.e., the top-most node in
the well path.
Repeat above for additional nodes.
Arithmetic Operations
Arithmetic operations allow you to shift the elevation values in the data object source data
according to a user specified arithmetic expression. For example, you can use this option to
drape a map over a specified surface data object. You can also shift polylines, polygons,
points or surfaces up or down by a specified constant value. Arithmetic operations can be
applied to Polygons, Polylines, Points, Surfaces and Maps.
When the Arithmetic node is selected from the Settings tree, the following dialog will display:
Select the desired arithmetic expression from the Select Operation combo box.
If you are unsure of what the expression does, refer to the provided description in the
Description and Instructions text box.
The contents of the Input Parameters frame will vary depending on the selected
expression.
If the selected expression contains a constant value, e.g., Z = Constant, enter a value in
Value field.
If the selected expression requires a surface, e.g., Z = Surface(x,y), then select the
desired surface from the Data Explorer, and then click the button to insert the
surface into the Value field.
Optional: Select the Save As New Data Object check box to save the transformed data
as a new data object.
Click the [Execute] button to apply the operation.
Note: If the data object is being viewed in a 3D Viewer while the operation is applied, you may
have to turn off the data object, and then turn it back on to see the changes.
Attribute Operations
Modify an Attribute using a Constant Value
For time-schedule data objects, VMOD Flex allows you to modify attribute values using a
specified constant value. For example, the constant value can be set equal to, added to,
subtracted from, and multiplied by the existing attribute values.
Select the desired expression from the Select Operation combo box.
If you are unsure of what the expression does, refer to the provided description in the
Description and Instructions text box.
In the Input Parameters frame, select an attribute from the combo box under the Value
column.
Enter a value in the Constant field, under the Value column.
Optional: Select the Save As New Data Object check box to save the transformed data
as a new data object.
Click the [Execute] button to apply the operation
Creating an Attribute from 3D Gridded Data Object
This operation allows you to create a new attribute using 3D Gridded data for surface and
points data objects. This feature can be useful after you have run the numerical model
simulation using VMOD Flex, and you have imported the .HDS file back into VMOD Flex as a
3D Gridded data object for visualizing the heads in 3D Viewer. The head information in the 3D
Gridded data object can be extracted, and interpolated for a surface or points data object. You
can then use the Color by Attribute feature to display the heads information on the surface or
points data object. Likewise, this can be used for visualizing any attribute contained in a 3D
Gridded data object on a surface or points data object. This procedure is described below.
This operation can be accessed from the Settings dialog. Select the surface or points data
object in the Data Explorer, right-click and then select Settings... . Once the Settings dialog
launches, expand the Operations node, and select Attribute from the settings tree.
Select Create new Attribute from the Select Operation combo box.
Select the 3D Gridded data object from the Data Explorer, and select the button
to insert the data object into the dataObject field.
Once the 3D Gridded data object is selected, its available attributes are populated in
the Attribute combo box. Select the desired attribute from the Combo box.
Optional: Select the Save As New Data Object check box to save the transformed data
as a new data object.
Click the [Execute] button to apply the operation.
Once the operation is applied, you can confirm that the new attribute was created by viewing
the table view for the selected surface or points data object.
This operation allows you to create a new points data object, for each model layer
interpretation, from all cross sections in the data object that include this interpretation. Once
the points data objects are created, you can then create surface data objects, which can then
be used to define the horizons of your conceptual model.
To create points data objects from cross section interpretation model layers:
From the Select Operation combo box, select Convert Model Interpretations to Points
Data Object (default).
Click the [Execute] button to apply the operation.
Once the points data objects are created, they will be added to the Data Explorer,
where they can be used to create surface layers.
This operation allows you to create a new points data object, for each well top formation in a
wells data object. The resulting points data objects can then be used to create surfaces,
which can be used to define the horizons of a conceptual model.
Well top data can either be included during data import, or they can be manually defined in
the well table view. For information on defining well tops, please see "Adding Well Tops"
section.
To access this operation, right-click on the desired wells data object in the Data Explorer, and
select Settings... from the pop-up menu. In the Settings dialog, select the Operations node,
and a window, similar to the one shown below, will display.
To create new points data objects from well top formation, follow the steps below:
Select the Convert well tops to points data objects option from the Select Option
combo box (selected by default).
Click the [Execute] button to apply the operation.
Once the points data objects are created, they are added to the Data Explorer using the
naming convention [wells data object name]_[formation label] (shown above).
This operation is only available for well data objects. It allows you to calculate elevation values
for each well head in the data object, using a specified surface data object. Please note, any
well head elevations that have been added manually or imported will be overwritten with the
elevation values calculated from the specified surface.
Select Calculate well head elevation (Z) from a surface from the Select Operation
combo box.
Select the desired Surface data object from the Data Explorer, and select the
button to insert the data object into the surface field.
Click the [Execute] button to apply the operation.
Once the operation is applied, you can confirm that the new Z values were created by viewing
the table view for the selected well data object.
Please note that VMOD Flex will ignore wells where the elevation of the bottom of the well
(Zmin) is greater than the calculated well head elevation.
expanding the Style node in the Settings tree (shown below). Please note that the Style node
will only be available when the particular data object is being shown in 2D or 3D Viewer.
In general, each data object has its own set of style settings, although some settings are
common between data objects. The following sections describe the style settings for the
various data objects.
Points/Vertices
The style settings for points data objects are described below:
Select the color method, symbol, and size from the appropriate combo boxes.
The Show in Cutaway check box allows you to show points or vertices in cutaway regions in
the 3D Viewer window. When this option is disabled, points or vertices will not show in any
areas that have been “hidden” in the 3D Viewer window by creating “Cutaways”. For
information on creating cutaways, please see "Adjusting Viewer Settings 229 " section.
Specified : Points are colored using the color specified in the General settings.
By Attribute: Points are colored based on a specified data object attribute as explained
below.
Color By Attribute
Data objects can be colored based on a specified attribute. Color rendering can be applied to
any shape element that contains attributes. To color a data object by attribute, follow the
steps below.
Expand the Style node and select the shape element to be colored, e.g., Points
From the Color combo box, select the By Attribute option.
From the Settings tree, select the Colors node and the following dialog will appear.
Select the desired attribute from the Attribute combo box. You will notice that the min
and max values are displayed to the right of the combo box. Some data objects will
have attributes while others will not. The following table lists which data object types
Select the Color Classification: by default, the colors will be calculated from the min
and max values for the current data object. VMOD provides an option to use Project-
wide Color Palettes. This is useful when you have multiple data objects that are
rendering the same attribute (e.g. heads from different model runs, conductivity
distributions), and you want to make qualitative comparisons between these. This is
challenging when each data object has its own min and max values and are colored
based on this. However this becomes much easier when these data objects all read
from a common color palette. If this option is checked on, you can access the color
palette and adjust min and max values. See Project Color Palettes 19 for more details.
For the selected attribute, you can define various settings. These settings are
described below.
Type: Select between Stretched or Classified. The stretched option allows for color shading,
i.e, continuous color gradient. The classified option allows for discrete intervals, i.e., zebra, in
the color gradient.
Classes: There are two options for defining the number of classes to be used: Number of
Classes and Equal Intervals.
Number of Classes : Specify the number of color classes in the text box.
Equal Intervals : Specify an interval spacing, and the number of classes will be determined
from the range of the attribute data. For example if your data rage is 100, and you specify a
VMOD Flex automatically calculates the intervals based on the defined specified
number of classes or equal intervals.
Once the settings have been defined, click the [Apply] button to show the changes in an
active 2D or 3D Viewer.
Area
Select the Show Area Fill check box to show/hide the area file. If unchecked, only the shape
boundary will be visible in 2D and 3D Viewers.
Select the color method and fill pattern symbology, from the appropriate combo boxes.
Specified : Shape is colored using the color specified in the General node.
By Attribute : Shape is colored based on an attribute. See "Color By Attribute" section
for more information on color rendering.
Custom: Specify a color for the area fill. This color will overwrite the default color
defined in the general settings for this particular shape element.
Select the Transparent checkbox to make the polygon fill pattern transparent. Use the
adjacent Transparency text box to set the level of transparency, e.g., a higher value will make
the fill more transparent.
The Show in Cutaway check box allows you to show areas the polygon in cutaway regions in
the 3D Viewer window. When this option is disabled, the polygon will not show in any areas
that have been “hidden” in the 3D Viewer window by creating “Cutaways”. For information on
creating cutaways, please see "Creating Cutaways 222 ".
Lines
Select the Color method, line Pattern (solid or dash), line Width from the appropriate combo
boxes.
Specified : Line is colored using the color specified in the General settings.
Custom: Specify a color for the line element. This color will overwrite the default color
defined in the general settings for this particular shape element.
The Show in Cutaway check box allows you to show areas the line in cutaway regions in the
3D Viewer window. When this option is disabled, lines will not show in any areas that have
been “hidden” in the 3D Viewer window by creating “Cutaways”. For information, please see
the "Creating Cutaways" 222 section.
Labels
General
The following label settings are available under the General node (shown above):
Format
The following label settings are available under the Format node:
To access the style settings, right-click on the cross section data object in the Data Explorer,
and select Settings... from the pop-up menu. Then, in the Settings dialog, expand the Style
node to view the style settings.
Cross section data objects consist of two main elements; the interpretation layers and the
cross section wells. The settings for each element can be accessed by clicking on the
Interpretation or Wells node, respectively.
Interpretation
From the Interpretation Type combo box, select which interpretation layer to show in 3D
Viewer. Select from Model, Geology or Hydrogeology.
When a interpretation layer is selected from the combo box, its associated cross sections
are listed in the grid below. Under the Visible column, select which cross section to show/
hide in 3D Viewer.
Select the Show All check box to show all the cross sections for the selected interpretation
layer.
Select the Show Labels check box to show the label for each cross-section.
Wells
The wells node contains settings for changing the appearance of the cross section wells.
Show Labels: Check this option to show the well label above each well.
Line Style: Select the type of line to display. Choose between solid or dashed.
Click the [Apply] button to display the changes in an active 3D Viewer window.
6.4.3 Wells
The following section describes the available style settings for Wells data objects.
To access the style settings, right-click on the well data object in the Data Explorer, and
select Settings... from the pop-up menu. Then, in the Settings dialog, expand the Style node
to view the style settings.
The Wells settings are divided into three sections: Well Head, Well Path and Well Tops.
Well Head
The Well Head node provides options for changing the appearance of the well heads (top of
the wells).
When the General subnode is selected, the following options are available:
Symbol: Select the well head symbology from the combo box. Choose from various symbols
including circle, square, cross, diamond etc.
For information on the Labels node, please see "Labels 258 " section.
Well Path
The Well Head node provides options for changing the appearance of the well path. These
options are described below.
When the General subnode is selected, the following options are available:
Type: Specify the line type for the well path. Choose between a solid line or a dashed line.
For information on the Labels node, please see the "Labels 258 " section.
Well Tops
The Well Tops node provides options for changing the appearance of the well tops. These
options are described below.
When the General subnode is selected, the following options are available:
Symbol: Select the well top symbology from the combo box. Choose from various symbols
including circle, square, cross, diamond etc.
Click the [Apply] button to view the change in an active 2D- or 3D-Window.
For information on the Labels node, please see the "Labels 258 " section
6.4.4 Surfaces
The following section describes the available style settings for Surface data objects.
To access the style settings, right-click on the surface data object in the Data Explorer, and
select Settings... from the pop-up menu. Then, in the Settings dialog, expand the Style node
to view the style settings.
Colors
The Colors node provides options for coloring the surface layer by elevation value. The
following options are available.
Show Color Fill : This option allows you to show or hide the color fill. If disabled, the surface
will appear in the color defined in the General settings.
Transparency: This option allows you to make the surface appear transparent. When the
Transparent checkbox is selected, use the adjacent slider bar to set the level of
transparency.
Type: Select the type of gradient to use for coloring the surface. Select Stretched to use a
continuous color gradient, or select Classified to use discrete color zones.
Classes: There are two options for defining the number of classes to be used: Number of
Classes and Equal Intervals.
Number of Classes : Specify the number of color classes in the text box.
Equal Intervals : Specify an interval spacing, and the number of classes will be
determined from the range of the attribute data. For example if your data rage is 100,
and you specify a 10 interval spacing, 10 classes will be created.
As the number of intervals/classes is modified, rows are removed or added to the color table.
The maximum value will always be Red and the minimum value will always be Blue, but the
gradient between will change automatically depending on the specified number of classes.
Click the [Apply] button to view the changes in an active 2D- or 3D-Window.
Contour Lines
The Contour Lines node provides options for showing contour lines on the surface layer. The
following options are available:
Contour Interval: Set the contour increment value. When this option is used, VMOD Flex
automatically calculates the number of contours used.
Line Style: Select the contour line style from the combo box. Choose between solid line or
dashed line.
Label Spacing: Set the spacing between the contour line and the label.
Number of Decimals: Set the number of decimals to show in the contour labels.
Label Font: Select this button to specify the font settings for the contour labels.
To access the style settings, right-click on the surface data object in the Data Explorer, and
select Settings... from the pop-up menu. Then, in the Settings dialog, expand the Style node
to view the style settings.
Cells
The Cells node allows you to specify style settings for the grid cells. The following options are
available:
The Show Cell check box allows you to show/hide the grid cells in the 3D gridded data object.
When the check box is selected, you can choose how to show the cells in the Color combo
box in the Fill Settings frame. With the Specified option, select the adjacent color swatch and
select the desired color to fill the cells. If you select Color by Attribute, you can color each cell
according to a specified attribute, e.g., heads. Color by attribute settings can be defined by
selecting the Color node, located under the Cells node.
For more information on the color by attribute feature, please refer to "Color By Attribute 253 "
section.
The Show only Active Zone check box allows you to show/hide inactive grid cells.
Vertices, Lines
For information on the settings available in the Vertices and Lines nodes, please refer the
Points \ Vertices 252 and Lines 252 respectively.
Slice
Under Slice Settings, specify the desired Layer, Row, or Column Number.
Under Fill Settings, the ByAttribute option is default and recommended for most cases.
Show Legend check box at the bottom of the window will add a color legend to the current 3d
view
Show Wireframe will render with wireframe instead of filled in cells. The example below
illustrates this:
In the Settings tree, under Slice -- Colors, you can access the color page where you can
choose which attribute you want to render; in the case of Properties (or Recharge and
Evapotranspiration) you can render by Zone or by the specified Attribute (eg. Kx, Recharge
rate, etc..)For more information on the color by attribute feature, please refer to "Color By
Attribute 253 " section.
Colormap
Settings for the Colormap are identical to those explained above for Slice.
Color map has an additional Slice Type, which is "Cross Section" which is shown below:
After selecting this Slice Type, you need to provide a polyline data object that contains one or
more polylines representing the cross-sections you want to render. Polylines can be imported
from a shapefile or DXF file, or created manually. See Creating New Data Objects 219 for
more details.
Select this polyline data object from the tree, then click on the to insert this into the field
as shown above.
Click Apply and the display will update with the appropriate cross-section lines. An example
for two cross-sections is shown below.
In the Settings tree, under Colormap -- Colors, you can access the color page where you can
choose which attribute you want to render; in the case of Properties (or Recharge and
Evapotranspiration) you can render by Zone or by the specified Attribute (eg. Kx, Recharge
rate, etc..). For more information on the color by attribute feature, please refer to "Color By
Attribute 253 " section.
Isolines
Settings for the Isolines are identical to those explained above for Slice.
Isolines also has an option to plot on a Cross-Section; see Colormap on Cross Section 273 as
described above.
Under Select Data, choose the attribute you want to use for calculating Isolines: For
Properties, you can choose from Zones or Attributes (eg. Kx).
Additional Settings for Line Properties allow you to adjust the Line color, style, width. And, the
number of contour lines, or the contour interval, and the starting value (minimum) by which
contour intervals will be calculated. Settings in the Labels tab allow you to adjust the font size
and color and the decimal format.
In the Settings tree, under Isolines -- Colors, you can access the color page where you can
choose which attribute you want to render; in the case of Properties (or Recharge and
Evapotranspiration) you can render by Zone or by the specified Attribute (eg. Kx, Recharge
rate, etc..). For more information on the color by attribute feature, please refer to "Color By
Attribute 253 " section.
Isosurfaces
The IsoSurface node allow you to create and modify one or more isosurfaces from 3D
gridded attribute data. An isosurface is a 3D planar surface defined by a constant parameter
value in 3D space. Isosurfaces are typically used for demonstrating the spatial distribution of
a selected parameter. For groundwater modeling purposes, isosurfaces are generally used
for representing the spatial distribution of heads, drawdowns and concentrations.
Creating an Isosurface
From the Attribute Name combo box, select the attribute from which the isosurface is
to be created.
Specify the attribute value in the Attribute Value field.
Select the color method from the Color box. The isosurface can be displayed as a solid
color (Custom) or rendered by a specified attribute (ByAttribute).
Use the Visible check box to show/hide the isosurface.
Use the Show Border check box to display/hide a color map of the element value on the
borders (sides) of the model domain when the isosurface intersects the edge of the
model domain.
Use the Show in Cutaway check box to make the isosurface visible/invisible in
cutaways.
Use the transparent check box to enable/disable transparency. If enabled, use the
Transparency slider to set the level of transparency/opaqueness.
Click the [Add] button to create the isosurface.
Modifying an Isosurface
Time
The Time node provides a list of all the time steps in the 3D gridded data object, and allows
you to select the desired time step data to display in the 3D Viewer window. For 3D gridded
data objects generated by steady state flow models, only one time step will be available. For
3D gridded data objects generated by transient flow models, multiple time steps will be
available (as defined in the Translation settings in VMOD Flex, i.e, Translation / Time Steps).
ThreeSlices
The ThreeSlices option allows you to see a slice through a selected model layer, row, and
column at the same time in the 3D view. This is the display option that is used when you
view 3D Gridded objects in the 3D View of the Flex Viewer. An example is shown below, with
a slice through layer 2, and the centermost row and column in the Airport Transport tutorial
project.
The generic options for "Slice" apply to the ThreeSlice including the Wireframe and "Use
virtual grid" option.
The Colors and Legend options under ThreeSlice are also the same as described in earlier
sections for Slice
Presentation Style: Choose between Cells and Surface; when Surface is selected, you
will see a color map with Isolines; under the Isoline node in the Settings tree, you can
adjust the contour interval and line style.
Below Presentation Style, select the desired Layer, Row, and Column number for the
slice.
6.4.6 Settings Color Classifications
For those data objects that attributes that can be rendered, you will see a Colors page in the
Style node of the Settings page. You can now adjust the values assigned to the colors to suit
you needs (for example for Calculated Heads, Concentrations, Kx, etc.). A common
application of this would be when you are viewing transport concentrations, and you want a
value threshold to be assigned to a specific color (eg. 10 mg/l for a water quality).
Load the settings for the desired 2D or 3D view, and you should see the color page below
(this example is for Concentration for the Layer (2D) View).
In the grid at the bottom of the window, you can adjust the value that are assigned the various
colors. When using this option, you typically should set the Color Classification Type to be
"Classified". Doing so, will assign a specific color to a range of discrete values. Enter the
values working from highest to lowest (from top to bottom).
Using the data set and settings from the figure above, the color values were adjusted as
follows.
In the example below, there are 4 color classes
As you change different output times, the user-defined color palette will be honored.
The settings need to be defined separately for the 2D and 3D View. Once you close a view
(eg. stand-alone 3D viewer), the color values will be lost, and you will need to re-define them..
The sequential step in building the conceptual model are presented in the workflow navigator
and are summarized below:
When a new conceptual model is created, a new Model Explorer tree is added to the
Conceptual Model Explorer in the main VMOD Flex window.
The Model Explorer tree consists of a fixed folder structure that is designed to guide you
through the workflow of building your conceptual model.
VMOD Flex currently supports saturated flow simulations, and contaminant transport
with MT3DMS. Future releases will support variably-saturated flow, density-dependent flow,
and reactive transport simulations. The available engines provides a preview of what engines
are available based on your selected objectives.
MODFLOW-2000
MODFLOW-2005
MODFLOW-LGR
MODFLOW-NWT
MODFLOW-USG
Zone Budget; and
MODPATH
The Start Date of the model corresponds to the beginning of the simulation time period. It
is important to define a relevant start date since your field measurements (observed heads
and pumping schedules) will be defined with absolute (calendar) date measurements, and
must lie within the simulation time period. In this example, the default start date can be
used.
Start Date
VMOD Flex uses a standard Windows date picker; a few tips are shown below on how to use
this.
Click on the button shown below, to load the Windows date picker.
All months for the current year will appear as shown below.
Click on the year in the header:
The selected date will then appear for the Start Date.
Transport Objectives
Contaminant transport simulation can be enabled and setup in the conceptual model
workflow. The species concentrations (for sinks/sources) can be defined while you define
your conceptual boundary conditions. However the transport properties (initial
concentrations, dispersion, etc.), are defined in the Numerical Model workflow, after you have
defined a grid, and completed the "Convert to Numerical Model" step. This is explained in the
section Define Properties (Numerical Model) 401
The conceptual modeling workflow is data driven. This means that you first need to "collect"
the appropriate data objects in order to use these at a particular step in the workflow. Data
objects can be "collected" through several means:
Importing Data 172 : Import GIS data (shapefiles, CAD files), Gridded
data, images, points/wells in excel spreadsheets, or XYZ points in text
format.
Creating Data Objects 219 : digitizing new point, polygon, or polyline data
objects.
Creating Surfaces 213 : Interpolate XYZ points using Krigging, Natural
Neighbor, or Inverse Distance. The resulting surfaces can be used to
define geological layers or 2D parameter distributions (Kx, Recharge,
etc.)
Once you have the data loaded, Click (Next Step) to proceed.
You may return to this step in the workflow at any time during the model process to import or
create new data objects.
See the following table for some typical data object types and how they are used in the
conceptual model workflow.
Quick Overview
Once you have imported sufficient raw data into your project, you can begin to construct one
or more conceptual models using imported or digitized data objects as building blocks. At this
step, you need to define some basic information about the conceptual model, and provide a
polygon that represents the model area.
You can import a polygon shapefile/DXF file, as described in the section Import Polygons 184
Or, if you do not have a polygon, you can create an empty polygon data object, then digitize
the geometry. Please refer to the section Creating New Data Objects 219 for more details.
In the Define Conceptual Model window (as shown above), define the settings for the
conceptual model.
Enter a unique name for the conceptual model in the Name field.
Enter a description of the conceptual model in the Description field (optional).
Specify a start date from the Start Date combo box. This will be used for calculating
the start date for transient model runs.
NOTE: If you are using pumping wells, the start date must match the first start time for
your pumping schedule.
From the Data Explorer, select the polygon data object that represents the conceptual
model horizontal boundary, and then click the button.
Note: The model area cannot be defined using a complex polygon, or one that contains
multiple polygons. A complex polygon is a polygon that intersects with itself.
Click the [Save] button.
Once a conceptual model is created, a new Conceptual Model tree is added to the Model
Explorer. The conceptual model tree sets up the workflow for structural and property
modeling, assigning boundary conditions, numerical grid creation, and numerical model
translation. A typical conceptual model tree is shown below:
The Model Boundary node allows you to show/hide the conceptual model boundary in a 2D or
3D Viewer.
The Structure folder allows you to define the horizons and structural zones of the conceptual
model. For more information on structural modeling, please see "Defining the Structure 295 ".
The Properties node allows you to define property zones for the conceptual model. For more
information on property modeling, please see "Defining Property Zones 303 ".
Quick Overview
At this step, you define the geological structure for the conceptual model, by converting
surfaces to Horizons.
Horizons are stratigraphic layers (2D surfaces with topography) that define the upper and
lower boundaries of the structural zones in a conceptual model. In VMOD Flex, horizons are
created by clipping or extending interpolated surface data objects to the boundary of the
conceptual model.
When horizons are created, VMOD Flex will automatically generate the Structural Zones
(geologic formations) between the horizons, which can be used later to define property
zones.
Defining Horizons
From the Data Explorer, select the surface data object that will be used to generate the
horizon.
Click the Blue Arrow button to insert it into the Horizon Information table. If the
selected surface is greater than the conceptual model area, it will be clipped by the
conceptual model boundary polygon. If the surface is less than the conceptual model
area, it will be extended to the conceptual model boundary.
Note: Surfaces should be added from top to bottom, starting with the top surface (ground
surface) and ending with the bottommost surface.
Click the Add Horizon button to add a new horizon row to the Horizon Information
table.
In the Name column, type in a unique name for the horizon.
In the Type column, select the appropriate horizon type from the combo box. For
information on each horizon type, please refer to "Horizon Types 299 ".
Repeat the steps above to add additional horizons. Remember you must have at least
two horizons before VMOD Flex can create the structural zones.
You can preview the horizons in 3D Viewer, by clicking the [Apply] button.
Finally, click the [ ] button to create the horizons and proceed to the next step.
Once created, the horizons will be added to the Model Explorer Tree under the Horizons node
(shown below).
Horizon Types
Each horizon can be assigned a particular type, which defines the relationship to other
horizons in the conceptual model. This prevents intersecting layers and establishes layers
that satisfy both FEFLOW and MODFLOW requirements. Each horizon type is described
below.
Erosional horizons can be used as the highest or as an intermediate horizon, but not as the
bottom of the conceptual model. This type of horizon will truncate all horizons below it,
including the base horizon.
Base horizons can be used as the lowest horizon in the conceptual model. Any conformable
horizon types will lap onto it, while all erosional or discontinuity horizons will truncate it.
The horizon rules described above are applied after all the horizons are calculated. If one of
the horizons will be truncated by an erosional, base, or discontinuity horizon, it is a good idea
to extend the input data beyond these unconformable horizons in order to truncate them
properly.
The image below shows three surfaces in a 3D Viewer. The surfaces are colored Red,
Green, Blue, from top to bottom, respectively.
You will see that there are spots where the green surface intersects with the red surfaces,
and likewise, where the blue surface intersects with the green surface. For numerical models
(FEFLOW and MODFLOW), this geometry is not permitted which is why surfaces are
converted to horizons. Assigning a horizon type will eliminate the intersections.
When horizons are generated from these surfaces, and each surface is set to Conformable,
the horizons are truncated such that each one conforms to the horizon above it, as shown in
the following image.
If the middle horizon is set to Erosional, with the top and bottom set to Conformable, the
topmost surface (red) is pushed up, as shown in the following image.
Zones are given a default name, e.g., Zone1, Zone2, Zone3 etc., which cannot be modified.
You can view the zones in an active 3D Viewer window by checking the empty check box
beside the zone name. For more information on data viewers, please refer to "Data Viewers
222 " section.
Quick Overview
At this step, you define Property Zones for the conceptual model. Each property zone is
assigned appropriate property attributes, e.g., conductivity, storage, and initial heads.
A groundwater flow model requires many different types of data to simulate the
hydrogeological processes influencing the flow of groundwater. In VMOD Flex, the
hydrogeological characteristics of the model are classified into the following parameter
groups:
By default, VMOD Flex automatically assigns the entire model domain the default property
parameter values, specified in the Project Settings (see "Project Settings" for more details) .
However, in most situations, the flow properties will not be uniform throughout the entire
model domain, and it will be necessary to assign different property values to different areas of
the conceptual model. This can be accomplished by creating Property Zones. In VMOD Flex,
a property zone is a specified 3D volume, generated from structural zones, with user-defined
hydrogeologic attributes.
Property zone geometry can be defined using one or more existing structural zones. As
such, property zones can only be generated after horizons have been defined in the
conceptual model. Please see Defining the Structure 295 for more details.
VMOD Flex supports various methods for assigning values to hydrogeologic parameters. The
method used for defining attributes can be defined on the parameter level, allowing you to use
different methods for different parameters. The supported methods include:
Before you can create a property zone, you must have already defined horizons for the
conceptual model. For more information, see Defining the Structure 295 .
Enter a Name and Description (optional) for the property zone in the Name and
Description fields, respectively.
Select the method by which the property zone geometry will be defined. There are two
options: Use Structural Zone(s) and Use Polygon Data Object.
This method allows you to create a property zone from existing structural zones in your
conceptual model, i.e., zones generated from horizons.
Select a polygon data object from the Data Explorer, and click the button to
insert the data object in the Select Polygon Data field.
Note: The selected polygon cannot contain multiple parts, overlapping shapes or holes.
These features are currently not supported for property zone creation. If your polygon
does not meet this criteria, it can be edited using the 2D Viewer editing tools. For more
information on this topic, please see "Creating New Data Objects 219 "
Next, select a structural zone from the Model Explorer tree, and click the button
to insert the data object in the Define Volume frame.
Once the geometry has been defined, you can assign parameter values to the property
zone.
Select the group of parameters that will be defined, e.g., conductivity, storage or initial
heads. The data input grid below will display the appropriate parameters based on
which parameter group is selected. For example, if conductivity is selected, the data
input grid will show the parameters Kx, Ky, and Kz. The data input grid will already be
populated with the default values specified in the Project Settings (File > Project
Settings... ).
VMOD Flex provides various methods for assigning parameter attributes. The available
methods include: Constant Value, Use Surface, Use 3D Gridded Data and Use
Shapefile (available only when property zone is defined using polygon data object). The
type of method used can be specified per parameter. For each parameter in the data
input grid there is a combo box in the Method row (shown below).
Constant Value
The Constant Value method is selected by default for each parameter in the data input grid
and allows you to specify a spatially constant value for the parameter. If you do not wish to
use the default value, enter a new value.
Use Surface
The Use Surface method allows you use an existing surface data object to define spatially-
variable attribute values. This is ideal if you have a Surfer .GRD or ESRI ASCII GRD file
containing parameter values. Follow the steps below:
Select "Surface" as the method from the combo box. You should then see the
button become activated under the "Value" column
From the Data Explorer, select the desired surface data object
Click the button to insert this data object into the Object field.
Note: The selected surface data object must cover the entire area of the property zone, or
else the data object cannot be used.
The Use 3D Gridded Data method allows you to use an existing 3D gridded data object to
define spatially-variable attribute values. Follow the steps below:
Select "3D Grid" as the method from the combo box. You should then see the
button become activated.
From the Data Explorer, select the 3D Gridded data object
Note: The specified 3D Gridded data object must horizontally and vertically overlap the
defined property zone geometry, or else the data object cannot be used.
The Use Shapefile method is only available when you define the property zone geometry
using a polygon data object. This method allows you to assign an attribute value using an
attribute from the specified polygon data object. Follow the steps below:
If you have not already done so, create the Property Zone Using Polygon Data Object
306 , as described above.
Select the Use Shapefile Attribute from the method combo box.
Under Attribute column, the combo box contains all the attributes of the specified
polygon.
Select the desired attribute from the combo box.
Once the property zone attributes have been defined, click the [Save] button to create the
property zone. Once created, the property zone is added to the Model Explorer tree under the
Properties node and under the appropriate parameter category node.
Quick Overview
Background
Every conceptual model requires an appropriate set of boundary conditions to represent the
system’s relationship with the surrounding systems. In the case of groundwater flow model,
boundary conditions will describe the exchange of flow between the model and the external
system.
Specified Head
River
General Head
Drain
Recharge
Evapotranspiration
Lake
Specified Flux
Wall (Horizontal Flow Barrier)
Pumping Well
The workflow for defining a pumping well boundary conditions and a Wall (Horizontal Flow
Barrier) is different than that of defining other boundary conditions such as recharge,
specified head, river, etc. Please see the following section for information on defining
pumping well boundary conditions. For information on how to define all other types of
boundary conditions, please skip to "Defining Other Boundary Conditions 310 " section.
In VMOD Flex, the boundary condition types are separated into the following categories:
Boundary Conditions 313 (standard) (Constant Head, Rivers, Drains, General Head,
Recharge, EVT, etc.)
Wall (Horizontal Flow Barrier) 331
Pumping Wells 327
From the Model Explorer tree, right-click on the desired boundary condition, and select Edit
The Edit Boundary Condition dialog box will display on your screen, allowing you modify the
input parameters for the boundary condition. For more information on defining parameter
attributes, please refer to "Boundary Conditions Overview 334 " section
Once modifications have been made to the input parameters, click the [Finish] button to save
the changes.
From the Model Explorer tree, right-click on the desired boundary condition and select Delete
from the pop-up menu.
You will prompted with a confirmation message. Click the [Yes] button to delete the boundary
condition.
Note: Please be aware that there is no undo function to recover a deleted boundary condition.
Please exercise caution when deleting boundary condition
If you need to include contaminant transport in your model, then the species concentrations
for transport sinks/sources must also be defined while you create your conceptual boundary
conditions. By default, species concentrations will be undefined when you create a new
boundary condition. An undefined value is identified by the value "-1" for the species
concentration (eg. Conc001, Conc002). If you with to assign a contaminant mass to a
specific boundary condition object, then replace the default -1 value with a representative
contaminant concentration.
Limitations
In VMOD Flex you can create boundary conditions in the conceptual model and in the
numerical model. When you edit a conceptual boundary condition object, its corresponding
numerical representation will not get updated; likewise, when you update a numerical
boundary condition, its corresponding conceptual representation will not get updated. The one
exception to this rule is Pumping Wells.
Define Geometry
The first step involves selecting the boundary condition type and specifying the location of the
boundary condition on the simulation domain.
From the Select Boundary Condition Type combo box, select the desired boundary
condition type. For more information on each boundary condition type including the data
requirements for MODFLOW, please see "Boundary Conditions Overview"
Enter a Name and a Description (optional) for the boundary condition. The specified
name will appear in the Model Explorer tree, once the boundary condition is created.
Next, select where to apply the boundary condition on the simulation domain by
selecting an option from the Where to apply on the Simulation Model Domain combo
box. The type of options available in this combo box depend on which boundary
condition type is selected. The table below summarizes the available options for each
boundary condition type:
Boundary conditions can be applied to the top, bottom, intermediate layers or sides of the
simulation model domain, using imported or digitized Polygon or Polyline data objects, or by
manually selecting the sides of the simulation domain using an interactive 3D Viewer.
Top: Selecting this option will apply the boundary condition to the top layer of the
simulation domain.
Bottom: Selecting this option will apply the boundary condition to the bottom layer of the
simulation domain.
Side: Selecting this option will allow you to apply the boundary condition to a single side
or combination of sides of the simulation domain. When this option is selected, you will
be required to define the geometry of the boundary condition by selecting the desired
sides of the simulation domain using an interactive 3D Viewer. For more information on
how to do this, please see "Defining Boundary Condition Geometry (Sides)" section
Intermediate: Selecting this option will allow you to assign the boundary condition to an
intermediate model layer within the simulation domain, by specifying a Connection
Elevation value. Upon translation, VMOD Flex will assign the boundary condition to the
appropriate model layer based on the defined connection elevation value.
The next step is to define the geometry of the boundary condition. Boundary conditions that
are applied to the top, bottom or intermediate layers can be defined by using a Polygon (areal)
or Polyline (linear) data object from the Data Explorer.
From the Data Explorer, select the polygon or polyline data object that represents the
geometry of the boundary condition
Click the button to insert the data object into the Select a polyline or polygon from
the Data Explorer field.
Note: Some boundary conditions only support one type of geometry, either polygon or
polyline.
Polygons and polyline data objects that extend beyond the model domain must be “clipped”
before they can be used to define boundary conditions. Polygons and polylines can be clipped
using the “clip to polygon” data operations, which can be accessed in the data object settings
(right-click on the polygon or polyline in the Data Explorer, and select Settings... from the pop-
up menu). For more information on data object operations, please see "Performing
Operations on Data 243 " section.
For boundary conditions that are to be applied to the Side(s) of the simulation domain, VMOD
Flex allows you to define the geometry by selecting the appropriate side(s) using an
interactive 3D Viewer window. This process is described in "Defining Boundary Condition
Geometry (Sides)" section
If you select a polygon data object to define the geometry of the boundary condition, the next
step is defining boundary condition parameters. Please skip to "Defining Boundary Condition
Parameters" section for information on this topic.
If you select a polyline data object to define the geometry of the boundary condition, the next
step is defining zones for the selected polyline. This procedure is described in the following
section.
Define Attributes
VMOD Flex provides various methods for assigning parameter values to boundary conditions.
Each parameter in the boundary condition can be set to Constant or Transient, and values
can be assigned using attributes from various imported data objects. The available methods
for assigning attributes include:
Parameter values must be entered in the units defined in the project settings. To read more
about the project settings, please see "Units" section in the project settings.
Once the geometry has been defined (see previous sections), the next step is to define the
boundary condition parameters. Although each boundary condition type requires a different
set of parameters, the data input windows each have similar features and functionality. For
information on required parameters for each boundary condition, please see the appropriate
heading under "Boundary Conditions Overview" section.
For polylines, there are two ways in which you can assign attributes to the boundary condition
geometry:
Define for the entire zone (default): This option allows you to assign boundary condition
data to the entire zone.
Define values at vertices : This option allows you to assign boundary condition data to
the vertices along the zone (line), and then during translation, linear interpolation is
used to determine the parameters for the cells that fall between the specified vertices.
Boundary condition data can be specified by using the Data Input Grid. Each column in the
data input grid represents a required attribute for the selected boundary condition. For more
information on the required parameters for each boundary condition, please see the
appropriate section under "Boundary Conditions Overview 334 "
Attribute data must be defined for feature (polygon or polyline) in the boundary condition
object. Simply select the feature for which attributes are to be defined from the Feature List
(the selected line or polygon will be highlighted yellow in the adjacent 2D Viewer preview), and
then define the attribute data in the Data Entry Grid. Repeat this process for other features in
the selected data object.
Note: Attribute data must be defined for all features (polylines or polygons) in the selected
[Apply to All]: use this option (located in the top middle portion of the window) to apply the
current parameter values/methods, or mapping for the selected polyline (or polygon) to all
other polylines (or polygons) in the selected data object. Useful when you have 10's or 100's
of features in one data object, and they all reference a common data source (eg. a surface)
or a constant value.
For polylines only, it is possible to define attributes at line vertices. In this case, the Points List
will become available, where you can select the vertices that comprise the selected zone.
For more information on assigning attributes to points, see "Select the Method for Defining
Attributes (Polylines Only)" section.
For each attribute in the Data Input Grid, there are two combo boxes.
The combo box in the first row allows you to set an attribute as Static (Steady-State) or
Transient (conditions change over time). When one or more parameters are set to Transient,
the Transient Data button will become active. When selected, the Transient Data window will
launch (shown below).
The Transient Data dialog allows you to define the stress periods and values for all the
attributes in the boundary condition that have been set as “Transient”.
Click the Add Row button to add a new row to the table.
Enter a Start and End time, and a Value for each transient attribute.
Press the [Enter] button on your keyboard.
Repeat for additional stress periods.
Click [OK] to save the transient data.
The second combo box provides different methods for assigning attribute values to the
boundary condition.
The contents shown in this combo box depend on the attribute type, i.e., not all methods are
available for every attribute. The available methods may include:
Constant Value
Use Surface
Use Shapefile
Use 3D Gridded Data
Use Time Schedule (Transient only)
Constant Value
The constant value method allows you to define a single value for the entire zone. Upon
translation, each grid cell comprising the boundary condition zone will be assigned the
specified constant value.
When this method is selected (default), simply enter the desired attribute value in the Data
Entry Grid.
Note: The values for each constant value attribute should be entered in the same units as
From Surface
This method allows you to define boundary condition attributes using an existing Surface data
object. Upon translation, attribute values are calculated from the specified surface data
object. A surface data object can be useful for defining an elevation attribute, i.e., River Stage,
Head, Lakebed Bottom etc.
Note: The surface data object must cover the entire conceptual model domain area.
When this method is selected, click the [From Surface] button to launch the Static Data
Control dialog (shown below).
Click the button to insert the surface data object into the attribute field.
Repeat for other attributes that have been assigned this method.
Click the [OK] button.
From Shapefile
The method allows you to use Shapefile attributes for defining boundary condition attributes.
The combo box contains all the attributes of the specified polygon used to define the
horizontal geometry of the boundary condition.
Select the desired attribute from the combo box, and then click the [OK] button to close
the dialog box.
This method allows you to use spatially-variable attributes from a 3D Gridded data object for
defining a boundary condition attribute. When this method is selected, the Use 3D Gridded
Data button will become active. When selected, the 3D Gridded Data dialog will launch.
From the Data Explorer, select the desired 3D Gridded data object
Click the button to insert it into the Select 3D Gridded Data Object field.
Once selected, the data object’s attributes are listed in the combo box below.
Select the desired attribute from the combo box, and then click the [OK] button to close
the dialog box.
Note: The specified 3D Gridded data object must horizontally and vertically overlap the
defined property zone geometry, or else the data object cannot be used.
This method allows you to use a time-schedule data object for defining the stress periods
and values of a transient attribute. When this method is selected, click the Use Time
Schedule button to launch the Time Schedule dialog.
From the Data Explorer, select the desired time schedule data object
Click the button to insert it into the Select Time Schedule Object field.
Once selected, the data objects attributes are listed in the combo box below.
Select the desired attribute value from the combo box, and then click the [OK] button to
close the dialog box.
The Use Default Leakance option is used to calculated the leakance value for River, Drain,
Lake and General Head boundary conditions using a mathematical expression containing
array variables (see the section “Using Mathematical Formulas and Array Variables in the
VMOD Flex User’s Manual for more information). If the Use Default Leakance option is
selected, the leakance value will be calculated using a default formula associated with each
boundary condition type. If this option is not selected, a leakance value will need to be entered
manually.
The advantage of using the default leakance formula to calculate the leakance value for the
group of grid cells is that each grid cell will be assigned a leakance value proportional to the
size of the grid cell.
When the Define values at vertices option is selected, two sets of boundary condition data
are required; one set for the grid cell at the Start Point of the line (or line segment), and one
set for the grid cell at the End Point of the line (or line segment). The boundary condition data
for the grid cells between the Start Point grid cell and the End Point grid cell will be linearly
interpolated between these two points using the formula below:
where
$Xi is the boundary condition parameter value at the ith grid cell along the line
$XSP is the boundary condition parameter value at the Start Point of the line
$XEP is the boundary condition parameter value at the End Point of the line
$TVAR1, i is the cumulative length of the line at the ith grid cell along the line, as
measured from the center of the Start Point grid cell through the center of each
successive grid cell along the line (see following figure).
$LENGTH is the total length of the line, as measured from the center of the Start Point
grid cell through to the center of the End Point grid cell (see following figure).
When the line is digitized from the Start Point to the End Point, each grid cell is numbered in
sequence according to the order in which the line passes through each cell. If the line passes
through the same grid cell twice, the grid cell will be numbered twice as seen for grid cell “4”
and “6” in the following figure. As a result, the parameter value calculated for “grid cell #6” will
over-write the parameter value calculated for “grid cell #4”.
The interactive 3D Viewer behaves just like any other 3D Viewer. You can zoom in and out,
rotate and move the displayed simulation domain using your mouse. You can also change
the color of the background, show/hide the axis, and change the vertical exaggeration.
Click the [Create New Zone] button. A new row will be added to the Zones table. Here you
can change the zone Name and Description, as desired.
Click the [Start Selection] button. A new combo box called Selector will be added to the
bottom of the interactive 3D Viewer (indicated below).
From the Selector combo box, select one of the following options:
Global: Select all sides around the entire simulation domain
Horizontal: Select the area(s) between two horizons, around the entire simulation domain.
Vertical: Select an area(s) between two edges, spanning the entire height of the simulation
domain.
Facets: Select the area(s) that are bounded on the sides by edges of the simulation
domain, and bounded at the top/bottom by horizons
Using your mouse, click on the simulation domain in the 3D Viewer, and select the
appropriate sides for the boundary condition. When a side is selected, it will become
highlighted.
Tip! You can select multiple sides by holding down the [CTRL] on your keyboard
Once the sides have been highlighted, click the [Done Selection] button to save the
selections.
Repeat the steps above to create additional zones.
When you are finished, click Next to define the attributes; for more details, see Define
Boundary Conditions (Lines/Polygons) 316
7.6.3 Define Pumping Wells
Quick Overview
To add a new pumping well boundary condition, follow the steps below:
Click on the Define Pumping Wells button; the following window will appear
Each pumping well must satisfy the following requirements in order to be deemed valid:
VMOD Flex will then add the boundary condition under the Boundary Condition node in the
Model Explorer tree.
Visual MODFLOW supports wells with multiple well screens throughout the depth of the well-
bore, and well screens that partially penetrate a model layer. However, it is important to note
that the MODFLOW WEL package does not have any special considerations for multiple well
screens or grid cells containing partially penetrating well screens. MODFLOW treats wells as
flux boundary conditions, such that each grid cell intersecting a well screen is assigned a
specified flux. In a situation where a well is screened across several model layers, Visual
MODFLOW uses the length of the well screen intersecting each model layer to determine the
proportion of the total well pumping rate assigned to each well grid cell in the model, even
though MODFLOW considers a cell to be screened over its entire vertical length, regardless
of the length of screen assigned to the cell. The following equation is used to calculate the
pumping rate for each grid cell
where
Sum (LKx)i represents the sum of the products of screen length and hydraulic conductivities
in the x-direction of all layers penetrated by the well.
This approach, in which a multi-layer well is represented as a group of single layer wells, fails
to take into account the inter-connection between various layers provided by the well. One of
the most significant problems related to this approach is that well grid cells are essentially
shut off when the water table drops below the bottom of the grid cell (i.e. when the grid cell
becomes dry). This automatically reduces the total pumping rate of the well, and may cause
the water table to “rebound” and re-activate the well grid cell. This type of on-again-off-again
behavior for the pumping well(s) causes the solution to oscillate, and may prevent the model
from converging to a solution. In the event the model does converge to a solution, the model
results may be misleading if one or more pumping wells have lower than expected total
pumping rates.
Visual MODFLOW Flex supports multiple pumping wells in the same cell, a common
scenario when grid cell sizes are large and wells are close to one another. When the .WEL
package is created, and there are multiple wells in the same cell, you will see multiple entries
for that cell; the well name will appear as a last parameter, and this will allow you to confirm
that the correct wells have made it into the correct cells; an example is below:
in Layer 2, Row 40, Col 40, if this cell has 2 wells in model (named PW1 and PW2), in the
WEL package this will appear as:
2 40 50 -100 #PW1
2 40 50 -250 #PW2
7.6.4 Define Wall (HFB)
Visual MODFLOW supports the Horizontal Flow Barrier (HFB) Package included with
MODFLOW. The Horizontal-Flow-Barrier (HFB) Package, or Wall Boundary as it is referred
to in Visual MODFLOW, was developed to simulate thin, vertical, low-permeability features
that impede the horizontal flow of groundwater. This package allows such features to be
simulated without the need to reduce grid spacing in an excessive number of model cells,
thus enhancing model efficiency. These features are approximated as a series of horizontal
flow barriers conceptually situated on the boundaries between adjacent cells in the finite
difference grid.
The key assumption underlying the HFB Package is that the thickness of a barrier is
negligibly small in comparison to the horizontal dimensions of the cells in the grid. Barrier
width is not explicitly considered in the Package, but is represented in MODFLOW as a
hydraulic characteristic defined as barrier hydraulic conductivity divided by barrier thickness.
The HFB Package requires the following information as input for each cell containing this
boundary condition:
(I1, J1): Row and column number of grid cell on one side of the barrier.
(I2, J2): Row and column number of grid cell on the other side of the barrier.
Hydchr: Hydraulic characteristic of the barrier (equivalent to hydraulic conductivity of the
barrier divided by the width of the barrier).
Walls can be defined in the Conceptual Model workflow, or in existing numerical models
using structured grids (excluding MODFLOW-LGR). The behaviour for Walls is similar to
other boundary conditions in VMOD Flex; if you create this object in the Conceptual Model
workflow, then the numerical realization of the Wall will be created after you run "Convert to
Numerical Model" steps. If you "Assign" a wall in a numerical model, then VMOD Flex will
create the conceptual object and also create the numerical wall representation at the same
time.
In VMOD Flex, Wall objects are assembled using existing data objects in the Data tree and
from Conceptual Model. Horizontal Flow Barriers (or Walls) are assigned by using polyline
objects to define the spatial extent, and Horizons to define the upper and lower extents.
1. Select "Define Wall Boundary" from the conceptual model, or select "Assign" option at the
Define Boundary conditions step in the numerical model
2. Import the desired polyline object, or digitize the desired polyline using the 2D Viewer (see
Creating New Data Objects 219 for more details). Note: the polyline data object must
contain only one line feature.
3. Choose this Wall object from the Data tree
4. Click on the button (under Select Polyline) in the Define Wall Boundary Condition
Visual MODFLOW Flex will automatically calculated the appropriate cell faces based on the
intersection point of the polyline and spanning through the appropriate model layers.
You can edit the attributes for a Conceptual Model Wall object by right-clicking on this item in
the Model Explorer, and selecting "Edit Boundary Condition". Please note that if you change
the attributes, you need to re-run the Conceptual Model to Numerical Model conversion in
order to re-generate the numerical model Wall object(s).
You can edit the attributes for a Numerical Model Wall object by right-clicking on this item in
the Model Explorer, and selecting "Edit Attributes...". The attributes will load as a CSV file in
either Excel or Notepad (or other text editors if you have associated a different program to .
CSV file extensions). Make the desired changes to the values, then close (and Save) the file.
When you are finished, and wish to update the Wall object with your edits, right-clicking on
this item in the Model Explorer, and selecting "Reload Attributes..."
7.6.5 Theory
Every model requires an appropriate set of boundary conditions to represent the system’s
relationship with the surrounding systems. In the case of a groundwater flow model, boundary
conditions will describe the exchange of flow between the model and the external system. In
the case of a mass transport model, the boundary conditions will also describe the exchange
of solute mass between the model and the external system.
The following sections present an overview of the boundary condition packages supported in
VMOD Flex. Each section includes a brief description of the boundary condition, including the
input data required by MODFLOW and the supported data objects for defining the boundary
condition geometry. The following boundary conditions are discussed in this section:
Well
The pumping well boundary condition is used to simulate wells (or other features) that
withdraw water from or add water to the model at a constant rate during a stress period,
where the rate is independent of both the cell area and head in the cell.
For finite difference translations, VMOD Flex uses the Well (WEL) package, provided with
MODFLOW. The MODFLOW input data for Well cells is stored in the projectname.WEL file.
You can define the location for horizontal or deviated wells, which include the well path and
the screen location. When you translate your conceptual model to MODFLOW format, the
horizontal well screen location is converted to set of pumping well cells side-by-side. Another
option is to define a specified flux or drain boundary condition in VMOD Flex. These are the
workarounds, since there is no MODFLOW package for horizontal wells.
For finite element model translations, VMOD Flex translates the pumping well boundary
conditions as a Type 4 (Well) boundary condition. Please note that the defined screen interval
must extend beyond half of the element height for it to be assigned the boundary condition.
Currently, deviated/horizontal well translation is not supported for finite element models. If you
intend to translate to FEFLOW, please make sure all pumping well boundary conditions are
defined using vertical wells.
Required Data
In VMOD Flex, pumping well boundary conditions are defined using the well data contained in
a wells data object. During the boundary condition creation process, you will be required to
select a wells data object from the Data Explorer.
For information on importing well data, please see "Importing Wells 187 " section.
For information on defining well data for existing wells data objects, please see the "Well
Table 237 " section
Constant Head
Currently, this boundary condition is only supported for Finite Difference Model translation.
The Specified Head boundary condition, also known as Constant Head in VMOD Flex, is used
to fix the head value in selected grid cells regardless of the system conditions in the
surrounding grid cells, thus acting as an infinite source of water entering the system, or as an
infinite sink for water leaving the system. Therefore, specified head boundary conditions can
have a significant influence on the results of a simulation, and may lead to unrealistic
predictions, particularly when used in locations close to the area of interest.
During translation, VMOD Flex uses the Time-Variant Specified-Head Package provided with
MODFLOW. The MODFLOW input data for Specified Head cells is stored in projectname.
CHD file.
Unlike most other transient MODFLOW boundary condition packages, the Specified-Head
package allows the specified heads to be linearly interpolated in time between the beginning
and end of each stress period, such that the specified head for a grid cell may change at
each time step of a given stress period.
Required Data
The Specified-Head package requires the following information for each specified head grid
cell for each stress period:
Start Head: Specified head value at the beginning of the stress period
Stop Head: Specified head value at the end of the stress period
Supported Geometry
The geometry for Specified Head boundary conditions can be specified using Polylines or
Polygons
In VMOD Flex, when you create a new boundary condition, this is done using shapes:
polyline, polygon, and side faces. At this point, there is no notion of cell geometry, as a result,
the conductance cannot be calculated since the cell face area cannot yet be calculated. For
this reason, you are asked to define "Leakance" instead of "Conductance". Leakance is a
conceptual (hydrogeological) term, and is expressed per unit area (if the conceptual boundary
condition object is a polygon) or per unit length (if the conceptual boundary condition object is
a polyline).
When you create the boundary condition, the Leakance can be calculated based on other
defined parameters, or it can be explicitly defined.
When you look at the numerical representation (cell realization) of the boundary condition,
you will see "Conductance" as the parameter, since this value can be calculated based on
the intersecting cell geometry. For a boundary condition assigned with a polygon or side
face, the Leakance is multiplied by the cell area, in order to get Conductance. For a boundary
condition assigned with a polyline, the Leakance is multiplied by the length of the line that
intersects the cell, in order to get the Conductance.
River
The River boundary condition is used to simulate the influence of a surface water body on the
groundwater flow. Surface water bodies such as rivers, streams, lakes and swamps may
either contribute water to the groundwater system, or act as groundwater discharge zones,
depending on the hydraulic gradient between the surface water body and the groundwater
system.
For finite difference models, VMOD Flex uses the River Package included with MODFLOW.
The MODFLOW input data for River grid cells is stored in projectname.RIV file. Currently,
translation of river boundary conditions is not supported for finite element (FEFLOW)
translations.
The MODFLOW River Package simulates the surface water/groundwater interaction via a
seepage layer separating the surface water body from the groundwater system (see following
figure).
Required Data
The MODFLOW River Package input file requires the following information for each grid cell
containing a River boundary;
River Stage: The free water surface elevation of the surface water body. This elevation
may change with time.
Riverbed Bottom: The elevation of the bottom of the seepage layer (bedding material) of
the surface water body.
Conductance: A numerical parameter representing the resistance to flow between the
surface water body and the groundwater caused by the seepage layer (riverbed).
The Conductance value (C) may be calculated from the length of a reach (L) through a cell,
the width of the river (W) in the cell, the thickness of the riverbed (M), and the vertical
hydraulic conductivity of the riverbed material (K) using the following formula:
For situations where the River package is used to simulate lakes or wetlands, the L and W
variables would correspond to the X-Y dimension of the River boundary grid cells.
When a River boundary condition is assigned, the Use default Leakance option is
automatically selected.
If the Use default Leakance option is selected, the River boundary condition requires the
following data:
River Stage: The free water surface elevation of the surface water body.
Riverbed Bottom: The elevation of the bottom of the seepage layer (bedding material) of
the surface water body.
Riverbed Thickness: Thickness of the riverbed (seepage layer).
Leakance: A numerical parameter representing the resistance to flow between the
surface water body and the aquifer (this field is read-only and is calculated using the
formula described below).
Riverbed Kz: Vertical hydraulic conductivity of the riverbed material.
River Width: Width of the river.
When a polyline is used to define the river geometry, the default conductance formula is as
follows:
When a polygon is used to define the river geometry, the default conductance formula is as
follows::
where
$RCHLNG: is the reach length of the river line in each grid cell
$UCTOCOND: is the conversion factor for converting the $K value to the same L and T units
used by $COND
If the Use default Leakance option is turned off, the fields used for calculating the River
Leakance value (Riverbed Thickness, Riverbed Kz, and River Width) are removed from the
table, and the Leakance field becomes a writable field where a value may be entered.
Supported Geometry
The geometry for River boundary conditions can be specified using polylines or polygons
General Head
For finite difference models, VMOD Flex supports translation of the General-Head Boundary
Package included with MODFLOW. The MODFLOW input data for General-Head grid cells is
stored in the projectname.GHB file. Currently, for finite element models, translation of this
boundary condition is not supported.
The function of the General-Head Boundary (GHB) Package is mathematically similar to that
of the River, Drain, and Evapotranspiration Packages. Flow into or out of a cell from an
external source is provided in proportion to the difference between the head in the cell and the
reference head assigned to the external source. The application of this boundary condition is
intended to be general, as indicated by its name, but the typical application of this boundary
condition is to represent heads in a model that are influenced by a large surface water body
outside the model domain with a known water elevation. The purpose of using this boundary
condition is to avoid unnecessarily extending the model domain outward to meet the element
influencing the head in the model. As a result, the General Head boundary condition is usually
assigned along the outside edges (sides) of the simulation model domain. This scenario is
illustrated in the following figure.
The primary differences between the General-Head boundary and the Specified Head
boundary are:
the model solves for the head values in the General-Head grid cells whereas the head
values are specified in Constant Head cells.
the General-Head grid cells do not act as infinite sources of water whereas Specified
Head cells can provide an infinite amount of water as required to maintain the specified
head. Therefore, under some circumstances, the General-Head grid cells may become
dry cells.
Required Data
The General-Head Boundary Package requires the following information for each General-
Head grid cell:
Stage: This is the head of the external source/sink. This head may be physically based,
such as a large lake, or may be obtained through model calibration.
Conductance: The is a numerical parameter that represents the resistance to flow
between the boundary head and the model domain.
In contrast to the River, Drain, and Evapotranspiration packages, the General Head package
provides no limiting value of head to bind the linear function in either direction. Therefore, as
the head difference between a model cell and the boundary head increases/decreases, flow
into or out of the cell continues to increase without limit. Accordingly, care must be used to
ensure that unrealistic flows into or out of the system do not develop during the simulation.
The leakance value may be physically based, representing the conductance associated with
an aquifer between the model area and a large lake, or may be obtained through model
calibration. The leakance value (C) for the scenarios illustrated in the preceding figure may be
calculated using the following formula:
where
(LxW) is the surface area of the grid cell face exchanging flow with the external source/
sink
K is the average hydraulic conductivity of the aquifer material separating the external
source/sink from the model grid
D is the distance from the external source/sink to the model grid
When a General-Head boundary condition is assigned, the Use default leakance option is
automatically selected.
If the "Use default leakance" option is selected, the General-Head boundary condition requires
the following data:
The default formula used to calculate the Leakance value for the General-Head boundary is:
where
If the "Use default conductance" formula option is not selected, the fields used for calculating
the General-Head Conductance value (Distance to Reservoir, Average Conductivity) are
removed from the table, and the Leakance field becomes a writable field where a value may
be entered.
Supported Geometry
The geometry for General-Head boundary conditions can be specified using a polygon data
objects.
Drain
For finite difference models, VMOD Flex supports the standard Drain Boundary Package
included with MODFLOW. The MODFLOW input data for Drain grid cells is stored in the
projectname.DRN file. Currently, for finite element model translation, this boundary condition
is not supported.
Required Data
The Drain Package requires the following information as input for each cell containing this
boundary condition:
Elevation: The drain elevation, or drain head of the free surface of water within the
drain. The drain is assumed to run only partially full, so that the head within the drain is
approximately equal to the median elevation of the drain.
Leakance: The drain leakance is a lumped coefficient describing the head loss between
the drain and the groundwater system. This loss is caused by converging flow patterns
near the drain, the presence of foreign material around the drain, channel bed
materials, the drain wall, and the degree to which the drain pipe openings may be
blocked by chemical precipitates, plant roots, etc.
There is no general formulation for calculating drain leakance. In most situations, the detailed
information required to calculate drain leakance is not available to the groundwater modeler.
These details include the detailed head distribution around the drain, aquifer hydraulic
conductivity near the drain, distribution of fill material, number and size of the drain pipe
openings, the amount of clogging materials, and the hydraulic conductivity of clogging
materials. It is common to calculate drain leakance from measured values of flow rate and
head difference. Drain leakance value is usually adjusted during model calibration.
When a polyline is used to define the boundary condition geometry, the default formula for the
leakance is as follows:
When a polygon is used to define the boundary condition geometry, the default leakance
formula is as follows:
where
If the Use default leakance option is turned off, the fields used for calculating the Drain
Leakance value (Leakance per unit length or area) are removed from the table and the
Leakance field becomes a read/write field where any value may be entered.
Supported Geometry
The geometry for General-Head boundary conditions can be specified using polygon or
polylines
Recharge
For finite difference models, VMOD Flex supports the Recharge Package (RCH) included
with MODFLOW. The Recharge input data for MODFLOW is stored in the projectname.RCH
file. For finite element models, recharge boundary conditions are translated as the In(+)/Out
(-)flow material parameter.
The recharge boundary condition is typically used to simulate surficially distributed recharge
to the groundwater system. Most commonly, recharge occurs as a result of precipitation
percolating into the groundwater system. However, the recharge boundary can potentially be
used to simulate recharge from sources other than precipitation, such as irrigation, artificial
recharge, or seepage from a pond.
Note: The recharge rate is a parameter that is not often measured at a site, but rather, it is
assumed to be a percentage of the precipitation. This percentage typically ranges from 5% to
20% depending on many different factors including:
Supported Geometry
The geometry for Recharge boundary conditions can be specified using polygon data objects
Evapotranspiration
For finite difference models, VMOD Flex supports the Evapotranspiration Package (ET)
included with MODFLOW. After translation, the Evapotranspiration input data for MODFLOW
is stored in the projectname.EVT file. Currently, this boundary condition is not supported for
finite element translation.
The evapotranspiration boundary condition simulates the effects of plant transpiration, direct
evaporation, and seepage at the ground surface by removing water from the saturated
groundwater regime.
When the water table is at or above the ground surface (top of layer 1),
evapotranspiration loss from the water table occurs at the maximum rate specified by
the user.
When the elevation of the water table is below the ‘extinction depth’, or is beneath layer
1, evapotranspiration from the water table is negligible.
Between these limits, evapotranspiration from the water table varies linearly with water table
elevation.
Required Data
When the water table is at or above the ground surface (top of layer 1), evapotranspiration
loss from the water table occurs at the maximum rate specified by the user.
When the elevation of the water table is below the ‘extinction depth’, or is beneath layer 1,
evapotranspiration from the water table is negligible.
Between these limits, evapotranspiration from the water table varies linearly with water table
elevation.
Supported Geometry
The geometry for Evapotranspiration boundary conditions can be specified using polygon
data objects
Lake
For finite difference models, VMOD Flex supports the Lake (LAK3) package for MODFLOW.
After translation, the Lake input data for MODFLOW is stored in the projectname.LAK file.
Currently, translation of this boundary condition is not supported for finite element models.
The lake boundary condition can be used to simulate the effects of stationary surface-water
bodies such as lakes and reservoirs on an aquifer. The lake boundary is an alternative to the
traditional approach of using the general head boundary condition. The main difference in the
lake boundary is that the lake stage is calculated automatically based on the water budget,
which is a function of inflow, outflow, recharge, etc.
For more information on the Lake package, please refer to USGS publication, Documentation
of a Computer Program to Simulate Lake-Aquifer Interaction Using the MODFLOW Ground-
Water Flow Model and the MOC3D Solute-Transport Model.
Required Data
Stage: The initial stage of the lake at the beginning of the run.
Bottom: The elevation of the bottom of the seepage layer (bedding material) of the
surface water body.
Leakance: A numerical parameter representing the resistance to flow between the
boundary head and the model domain (this field is read-only and is calculated using
where
If the Use default Leakance option is turned off, the fields used for calculating the River
Conductance value (Lakebed Thickness, Lakebed Kz) are removed from the table, and the
Leakance field becomes a writable field where a value may be entered.
Supported Geometry
The geometry for Lake boundary conditions can be specified using polygon data objects
Specified Flux
For finite difference models, VMOD Flex supports the Specified Flux (FHB1) package for
MODFLOW. After translation, the specified flux input data for MODFLOW is stored in the
projectname.FHB file. Currently, translation of this boundary condition is not supported for
finite element models.
The Specified Flux boundary condition allows you to specify flow, as a function of time, at
selected model cells. FHB1 is an alternative and (or) supplement to the recharge (RCH)
package for simulating specified-flow boundary conditions. The main differences between the
FHB1 package and the recharge package are as follows:
FHB1 package can simulate specified-flux on the top, side, bottom or intermediate
layers in the simulation domain, whereas the recharge package can only be applied to
the top and intermediate layers.
FHB1 package allows you to specify a starting flux and an ending flux (for each stress
period, if transient). The package then uses linear interpolation to compute values of
flow at each model time step.
For more information on the Specified-Flow (FHB1) package, please refer to Documentation
of a Computer Program (FHB1) for Assignment of Transient Specified-Flow and Specified-
Head Boundaries in Applications of the Modular Finite-Difference Ground-Water Flow Model
(MODFLOW, Open-File Report 97-571, U.S. Geological Survey.
Required Data
Supported Geometry
The geometry for Specified Flux boundary conditions can be specified using polygon or
polyline data objects
8 Defining Grids/Meshes
At this step, you can create finite difference grids for MODFLOW, unstructured grids for
MODFLOW-USG, or finite element meshes for a FEFLOW run.
Quick Overview
Once you have created your conceptual model you can discretize your model using either the
finite difference method, finite volume (Control Volume Finite Difference, CVFD) or the finite
element method. The finite difference method involves fitting your conceptual model to one or
more finite difference grids. The CVFD method (used in MODFLOW-USG), allows you to
conform the grid to your wells and boundary conditions. For MODFLOW-based numerical
models, after conversion, the resulting numerical model can be viewed/edited and then
simulated in the VMOD Flex environment. The finite element method involves fitting your
conceptual model to a finite element mesh. Once translated, a FEFLOW ASCII .FEM file is
created (and saved on the hard disk), which can then be opened and simulated using
FEFLOW. (Note: a license of FEFLOW v.5.4 or above is required to open FEFLOW .FEM
files generated from VMOD Flex).
Sections covered in this chapter:
Quick Overview
From the "Select Grid Type" step in the Conceptual Model workflow, click on the "Define
Finite Difference Grid button":
By default, VMOD Flex discretizes the horizontal grid using 20 rows and 20 columns, with no
rotation. However, you can customize the grid to your liking, by modifying the settings in the
horizontal grid dialog (shown below).
Enter a unique Name for the numerical grid. This name will appear in the Model Explorer tree
once the grid is created.
The grid can be rotated counter-clockwise about the grid origin by entering a value between 0
and 360 in the Rotation text field.
The Xmin and Ymin values refer to the X-Y coordinates of the bottom-left corner of the
numerical grid. The Xmax and Ymax values refer to the X-Y coordinates of the top-right
corner of the numerical grid.
The Columns and Rows fields allow you to define the Grid Size. The maximum grid size
supported by VMOD Flex is 5000 rows by 5000 columns.
The first step in defining the vertical grid is selecting the Grid Type. There are three different
grid types: Deformed, Uniform and Deformed-Uniform. Each grid type is described in the
following sections.
Grid Types
Deformed
In a deformed grid, the tops and bottoms of the model layers conform to the horizons
elevation. You can refine the model layers, by diving the structural zones into proportionately
thick layers.
A Minimum Cell Thickness must be specified as MODFLOW does not permit lateral
discontinuity of layers, i.e., a layer cannot have a thickness of 0 at any point in the layer.
When horizons are on-lapping one another, resulting in a zero cell thickness, the minimum
cell thickness is applied and the horizons are shifted based on the horizon types defined in
the Horizon settings (See "Horizon Types 299 " section).
For deformed grids, you have the option of refining (subdividing) each layer into a specified
number of equally thick layers. In the table located below the grid description, enter a
refinement factor for the desired layer(s). For example, a layer refinement factor of 2 would
subdivide the layer into two equally spaced layers.
After entering a refinement factor, click the [Apply] button to view the changes in the adjacent
2D Viewer.
Uniform
In a uniform grid, a number of layers with uniform thickness will be created. At the time of
translating the conceptual model to the numerical model, the properties will be assigned to
the appropriate grid cells to represent the geological structure. This grid is useful for transport
or density-dependent simulations, where it is desirable to have fine vertical discretization.
When this grid type is selected, specify the number of layers to create in the Number of
Layers field (default is 10).
Deformed-Uniform
In a deformed-uniform grid, the top and bottom of the grid are deformed, following the top-
most and bottom-most horizons respectively; in between, a set of uniformly thick layers will
be generated. At the time of translating the conceptual model to the numerical model, the
properties will be assigned to the appropriate grid cells to represent the geological structure.
This grid is useful where you have discontinuous layers.
For Deformed-Uniform grids, you must specify a Minimum Cell Thickness (see above) and
the Number of Layers.
Once the grid is created, it will appear as a new node in the tree as shown below:
Note: You cannot refine/coarsen areas of a grid that overlap a child grid. It is recommended
that you refine/coarsen the parent grid before creating a child grid.
To edit the grid lines in a numerical grid, follow the steps below:
From the Model Explorer tree, right-click on the Numerical Grid, and select Edit from the pop-
up menu
The Grid Refinement dialog provides options for refining/coarsening a numerical grid. These
options are described below.
Tip! You can add data objects (e.g., boundaries, wells, site maps) from the data explorer to
the 2D Viewer preview to assist you in determining the areas in which horizontal refinement/
coarsening should be applied. Select the desired data objects from the Data Explorer, and
the data will be displayed in the 2D Viewer preview.
Select the Edit Rows radio button to add/remove grid lines (rows) along the Y-direction of the
numerical grid, or select the Edit column radio button to add/remove grid lines (columns)
along the X-direction of the numerical grid.
From the Select Editing Options combo box, select either Refine in an interval or Coarsen in
an interval. Refining in an interval will add rows/columns within a specified interval, where
coarsening in an interval will remove rows/columns in a specified interval.
In the Settings frame, define the row/column interval for which the refinement/coarsening
should be applied, by specifying the Start row/column and the End row/column. For example,
if you would like to refine the grid area between row 20 and 30, you would enter 20 as the
start row and 30 as the end row.
Finally, specify the refinement/coarsening factor in the Refine by box. For example, if refine in
an interval is selected, a factor of 2 would subdivide each row/column within the specified
interval into two equally spaced rows/columns. If coarsen in an interval is selected, a factor of
2 would reduce the number of rows/columns within the specified interval by a factor of 2.
Click the [Apply] button to show the defined refinement/coarsening in the adjacent 2D Viewer.
regions where hydraulic gradients change substantially over short distances, as would be
common near pumping or injecting wells, rivers, drains, and focused recharge.
regions of site-scale contamination within a regional aquifer where simulations of plume
movement are of interest.
regions requiring detailed representation of heterogeneity, as may be required to simulate
faults, lithologic displacements caused by faulting, fractures, thin lenses, pinch outs of
geologic units, and so on.
VMOD Flex allows you to create up to nine child grids within a single parent grid. However,
you cannot create a child grid within a child grid, and child grids cannot not overlap within a
single parent grid.
For more information on the local grid refinement package, please refer to MODFLOW-2005,
The U.S Geological Survey Modular Ground-Water Model- Documentation of Shared Node
Local Grid Refinement (LGR) and the Boundary Flow and Head (BFH) Package, by Steffen
W. Mehl and Mary C. Hill, U.S. Geological Survey.
There are two ways in which you can define a child grid within a numerical model grid.
When defining the parent grid; check the Create Child Grid box in the Vertical Grid dialog,
and click the [Next] button.
After the parent grid has been defined; right-click on the numerical grid from the Model
Explorer tree, and select Create Child Grid.
Tip! You can add data objects (e.g., boundaries, wells, site maps) from the data explorer to
the 2D Viewer preview to assist you in determining the placement of the child grid within the
parent grid. Select the desired data objects from the data explorer, and the data will be
displayed in the 2D Viewer preview.
Enter a unique name for the child grid in the Name field.
Next, select the refinement ratio from the Ratio combo box. A ratio of 3:1, for example, will
refine the parent cell by a factor of three, resulting in nine horizontal child cells within one
parent cell.
Finally, specify the Row Refinement interval and the Column Refinement interval, by selecting
the starting row/column and ending row/column, for where the grid refinement should be
applied within the parent grid. The child grid can be placed anywhere within the parent grid as
long as it does not overlap another child grid.
Note: The child grid cannot be rotated; it must be in the same orientation as the parent grid.
Click the [Preview] button to preview the child grid in the adjacent 2D Viewer.
Vertical grid refinement involves selecting which model layers to refine and specifying the
refinement ratio for the selected layers.
The top of the child grid must always coincide with the parent grid and therefore the Start
layer will always be 1. However, the End layer can be any model layer below the top model
layer in the simulation domain.
There are two options for defining the refinement ratio. Select Globally for all layers to assign
a single refinement ratio to all layers. Alternatively, select Specify each layer to assign a
refinement ratio layer by layer.
Note: Although the top layer must be the start layer, vertical refinement does not have to start
at the top. Assign a refinement ratio of 1:1 to the top layer and it will not be refined.
Quick Overview
From the "Select Grid Type" step in the Conceptual Model workflow, click on the "Define
Finite Element Mesh button":
The Define Finite Element Mesh wizard will appear on your screen, where you can configure
the properties of the finite element mesh.
Specify a unique name for the finite element mesh in the Name text field.
The Superelement Mesh represents the main geometry (points and segments) of the model
region from which finite elements are generated. A superelement mesh is defined using the
model boundary polygon geometry and, optionally, one or more “add-ins”. Add-ins are lines,
points or polygons within the model boundary which VMOD Flex uses as focal points to
create nodes during finite element mesh creation.
By default, the Add-ins List contains the model boundary and any linear or point boundary
condition currently defined for the conceptual model. Additional add-ins may be added to the
list using data objects from the Data Explorer.
Note: To avoid unstable mesh designs, it is recommended that all add-in objects are pre-
processed such that there is equal spacing between vertices on polygons and polylines. Data
object geometry can be edited using the 2D Viewer editing tools. For more information,
please see "Digitizing & Editing Geometry in 2D Viewers 219 ".
Leaving the Define Finite Element Mesh window open, select the desired data object
An Add-in may be included or excluded in the mesh creation, by checking or unchecking the
corresponding check box, respectively. When an add-in is “checked” it will also be displayed
in the adjacent 2D Viewer preview window.
In the second dialog in the Define Finite Element Mesh wizard, you can define various
discretization settings for the horizontal mesh.
Finite element meshes are created using the Triangle mesh generator, developed by J.R.
Shewchuk. Triangle provides various options for generating finite element meshes. These
options are described briefly below.
Please note that the switch letters in parenthesis beside the name of each option refers to the
command line switches used by the Triangle mesh generator.
tend to maximize the minimum angle of all the angles of the triangles in the triangulation,
providing a nice set of triangles, and avoiding narrow “skinny” triangles. There are three
triangulation methods from which to choose from: Constrained, Constrained Conforming and
Conforming.
Minimum Angle
For the Constrained Conforming triangulation method, a minimum angle can be specified.
The specified angle will replace the default bound on the minimum angle (20 degrees). The
specified angle may include a decimal point, but cannot be expressed in exponential
notation.
Refinement Options
Edges of triangles along model boundary should have approx length: Use this option to set
the approximate length of edges (segments) that comprise the model boundary domain.
Vertices will be added along the boundary, creating subsegments with the specified length.
This option will refine the areas along the model domain boundary.
Edges of triangles along line should have approx length: Use this option to set the
approximate length of edges of triangles along line add-ins. Vertices will be added along the
lines, creating subsegments with a specified length. The option will refine areas around line
add-ins.
Refinement around point add-ins: Use this option to refine areas around point add-ins.
Refinement for point add-ins is defined by specifying the number of triangles directly around
the points, and the desired distance from the point to the new vertices. Use the Gradation
slider bar to specify the smoothness of the transition from the fine elements around the
points to the coarser elements. A smoother transition will result in more elements, but will
lead to more regular elements therefore improved model stability.
Polygon Refinement
You can use one or more polygon data objects that have been included in the superelement
mesh (see "Create Finite Element Mesh 360 ) to define localized areas of mesh refinement. To
do so, click the Polygons Refinement... button. The Polygon Refinement screen will appear.
In the left side of the Polygon Refinement window, all features in the polygon add-ins are
listed in a table under the Polygon ID column. When a feature is selected, it is highlighted
yellow in the adjacent 2D Viewer. Select the polygon feature that represents that area of the
mesh for which refinement is to be performed. In the adjacent field under the Number of
Elements column, enter the desired number of element that should exist in polygon area.
VMOD Flex will automatically refine the underlying triangles to equal the prescribed number of
elements for the polygon area.
Once you have defined the refinement for the polygon features, click the [OK] button to apply
the settings.
Once the above settings have been defined, click the [Generate] button to generate the
horizontal mesh. Once generated, the Triangle output results, e.g., number of mesh vertices,
triangles, edges, etc, are displayed in the text box (above the Generate button). These results
may be copied to the clipboard by right-clicking anywhere inside the box, and selecting Copy
to Clipboard from the pop-up menu.
The generated mesh will also display in the adjacent 2D Viewer window.
If you are not satisfied with the mesh, you can modify the settings and regenerate the mesh
by selecting the Generate button again.
If you have selected polygon refinement, the mesh may look something similar to below.
The third step in the finite element mesh creation involves defining slice elevations. Various
settings are available for defining the slice elevations in the third dialog of the finite element
mesh creation wizard (shown below).
The options available for defining slice elevations are similar to those for defining slice
elevations for finite difference grids. For information on these settings, e.g., grid types, min
layer thickness and layer refinement, please refer to "Defining the Vertical Grid 350 ".
Once the vertical mesh settings have been defined, click the [Finish] button to generate the
finite element mesh. The finite element mesh will now appear in the Model Explorer tree
under the Model Domain node as shown below, where it can be displayed in a 2D or 3D
Viewer window, and used in Translation to Finite Element Model 380 .
Quick Overview
For more details on how MODFLOW-USG differs from traditional versions of MODFLOW,
please see our website.
From the "Select Grid Type" step in the Conceptual Model workflow, click on the "Define
UnStructured Grid" button:
The Define UnStructured Grid wizard will appear on your screen, where you can configure
the inputs for the grid.
Specify a unique name for the UnStructured Gird in the Name text field.
The Add-ins for the grid represents the main geometry (points and line segments) of the
model region from which Voronoi Cells are generated. The add-ins consist of the model
boundary (a closed polygon) and, optionally, one or more “add-ins”. Add-ins are polylines,
points, or polygons within the model boundary which VMOD Flex uses as "node generators"
for the grid generator. By default, the Add-ins List contains the model boundary and any linear
or point boundary conditions defined for the conceptual model. Additional add-ins may be
added to the list using data objects from the Data Explorer. Boundary conditions that are
created with polygons are not included in the Add-Ins, by default. (Generally, it is not
recommended to include polygon-based boundary conditions that cover the entire model, as
grid add-ins; (for example, recharge or evapotranspiration. However, smaller polygons, for
example those representing lakes, ponds, drains, general heads, etc., may be used)
Note: To avoid unstable grid designs, it is recommended that all add-in objects are pre-
processed such that there is equal spacing between vertices on polygons and polylines. Data
object geometry can be edited using the 2D Viewer editing tools. For more information,
please see "Digitizing & Editing Geometry in 2D Viewers 219 ".
Select the desired data object from the Data Explorer (while leaving the Define
UnStructured Grid window open)
In the Define unstructured grid window, select the [Add-in Lines/Points/Polygons]
button, located below the Add-ins List .
An Add-in may be included or excluded in the grid creation, by checking or unchecking the
corresponding check box, respectively. When an add-in is “checked” it will also be displayed
in the adjacent 2D Viewer preview window.
In the second dialog, you can define various settings that control the cell sizes and the
approximate number of cells.
Unstructured grids are created using the Triangle mesh generator, developed by J.R.
Shewchuk. Triangle provides various options for generating unstructured grids. These
options are described briefly below. Please note that the switch letters in parenthesis beside
the name of each option refers to the command line switches used by the Triangle mesh
generator. More details on "Triangle" are available on the Triangle website
In VMOD Flex, this mesh generator is used to create a Delaunay Triangulation, and from this,
Voronoi Grid cells are created, which are suitable grids for MODFLOW-USG. More details on
Voronoi Polygons can be found on our website.
In the figure above there are 4 wells, and 3 polyline boundaries. Using the default
refinement settings and the number of elements as 1000, results in 6500 unstructured grid
cells (per layer).
For the same example, using 10,000 as the total number of elements, 100 for the edge
length around lines, and 25 as the spacing from points to new nodes, and middle-range
Gradation, results in 6500 unstructured grid cells (per layer).
As a rule-of-thumb, the actual number of voronoi cells that will result from the grid generator
is typically within the same order of magnitude as the value you define for the "Total Number
of Elements".
Fortunately in VMOD Flex, you can repeat the grid generator several times, create multiple
grids, and find the most suitable grid size and refinement level for your project.
Refinement Options
The refinement options are separated into three categories, each of which can have its own
unique refinement levels:
For each of the refinement settings, you enter an "edge length" (defined using the same unit
convention as the project's units), and this will result in an "equivalent" approximate cell size.
Refinement around superelement border edges: Use this option to set the approximate
length of edges (segments) that comprise the model boundary domain. Vertices will be
added along the boundary, creating subsegments with the specified length. This option will
refine the areas along the model domain boundary.
Refinement around line add-ins: Use this to set the approximate target cell size around
the polyline add-ins. Vertices will be added along the lines, creating subsegments with a
specified length. The option will refine areas around line add-ins.
Refinement around point/well add-ins: Use this option to refine the grid around point
add-ins. Refinement for point add-ins is defined by specifying the number of triangles
directly around the points, and the desired distance from the point to the new vertices. The
default of 10 triangles should be adequate for most cases; in order to adjust the cell size
around the pumping wells, you need to change the "Space from points to new nodes"
value; a smaller value will result in smaller cell sizes.
Gradation: Use the Gradation slider bar to specify the smoothness of the transition of the
cell sizes from around the refinement regions to the more coarser (background) cell sizes.
A smoother transition will result in more cells, but will lead to a more gradual change in cell
size, which is recommended for MODFLOW-USG grids.
The generated grid will also display in the adjacent 3D Viewer window. If you are not satisfied
with the grid, you can modify the settings and regenerate the grid by selecting the [Generate]
button again.
Once the grid is defined, click the [Finish] button to complete the process. The UnStructured
Grid will now appear in the Model Explorer tree under the Model Domain node as shown
below, where it can be displayed in a 3D Viewer window.
Next you are ready to generate a numerical model from this UnStructured Grid. This is
explained in the section Converting to MODFLOW-USG 377 .
When you are done previewing the grid, click on the Next button on the workflow toolbar.
For finite element models, VMOD Flex will generate the .FEM problem file for loading into
FEFLOW. (Note: FEFLOW v.5.4 or later is required for opening and running FEFLOW
models)
This chapter walks you through the steps involved in translating a conceptual model to a
numerical model, and includes information on the following topics:
Quick Overview
Once you have the conceptual model designed and at least one numerical grid, you are ready
to populate this grid with the conceptual data.
Proceed to the "Convert to Numerical Model" step in the Conceptual Model workflow; this is
shown in the display below.
The Select Grid combo box will list all the finite difference grids you have created for your
project, including grids for use in Local Grid Refinement (LGR)
Select the grid you wish to use ,and click on the "Convert to Numerical Model" button.
(Alternatively, you can select the desired numerical grid from the Model Explorer tree, right
mouse click, and select "Convert to Numerical Model from the pop-up menu..)
After clicking on the conversion button, a new numerical model workflow window will appear
which includes the steps for the numerical model. In the first window, you will see the
progress of the conceptual to numerical conversion. This conversion could take several
minutes, depending on the size and type of grid you used, and the complexity of the
conceptual model inputs.
During the conversion, the run node will be added to the model explorer under the numerical
grid that you selected. This tree will be populated with all the inputs from your conceptual
model: Properties, Boundary Conditions, Wells, etc.
When the conversion is complete, you can click on the Next button on the workflow
toolbar, which will take you to the Define Properties 401 . You can then proceed through the
numerical model workflow 384 .
In the example below, Conductivity1, Storage1, InitialHeads1 are the property values for the
Parent Grid.
Conductivity-Child grid1, Storage - Child grid1, and InitialHeads - Child grid 1 are the property
values for ChildGrid1.
The same convention applies for boundary condition cells: there is one entry for the parent
grid boundary cells and one entry for each of the child grid cells.
After a successful MODFLOW-LGR run, you will see multiple entries in the Output directory:
Heads for the parent grid and Heads for each of the child grids, and likewise for Drawdown.
Once you have the conceptual model designed and at least one UnStructured grid, you are
ready to populate this grid with the conceptual data.
Proceed to the "Convert to MODFLOW-USG Model" step in the Conceptual Model workflow;
this is shown in the display below.
The Select Grid combo box will list all the UnStructured grids you have created for your
project
Select the grid you wish to use ,and click on the "Convert to Numerical Model" button.
Conversion times!
After the conversion is complete, a new numerical model workflow window will appear which
includes the steps for viewing and editing the UnStructured grid numerical model.
During the conversion, a "Run" node will be added to the Model Explorer under the
UnStructured grid that you selected. This Model Explorer tree will be populated with all the
inputs from your conceptual model: Properties, Boundary Conditions, Wells, etc.
When the conversion is complete, you can click on the Next button on the workflow
toolbar, which will take you to the View/Edit Properties. You can then proceed through the
MODFLOW-USG numerical model workflow 519 .
Quick Overview
Once you have the conceptual model designed and at least one finite element mesh, you are
ready to populate this mesh with the conceptual data.
Proceed to the "Translate to Finite Element Model" step in the Conceptual Model workflow;
this is shown in the display below.
Click on the Translate to Finite Element model button, and the following dialog will appear.
(Alternatively, you can select the Conceptual model folder in the Model Explorer tree, and
select Translate to Finite Element Model... from the pop-up menu..)
Project Description
A brief description of the project. By default, this is the name of the current VMOD Flex
project.
Output Name
Click the button and specify the output name and directory for the *.FEM file that is
created during translation.
The .FEM file is an ASCII file containing information on the problem class and model
properties. This file is required for importing your model into FEFLOW.
The default file name is “Project_name.FEM” and the default directory on your computer is
[Project Folder]\Numerical Models.
Problem Class
Currently, VMOD Flex only supports the separate flow problem class.
Simulation Type
Select Steady State or Transient from the combo box.
If the Steady State option is selected, VMOD Flex will prepare the data set for a steady-state
flow simulation, and will automatically use the data from the first stress period of each
boundary condition and pumping well defined in your conceptual model.
If the Transient Flow option is selected, VMOD Flex will automatically merge all the different
time period data defined for each pumping well and boundary condition into the stress period
format required by FEFLOW.
Flow Type
Select the flow type of the problem class. Choose from the following options: Saturated
media (groundwater), unsaturated media, Unsaturated steady-state linearized Richards
equation.
Translation Format
The output .FEM file generated by VMOD Flex during translation is currently compatible with
FEFLOW v.5.3.11 or later.
Start Date
The default start date is the date specified in the conceptual model settings. The Start Date of
the model is the date corresponding to the beginning of the simulation. This date is relevant
only for transient flow simulations where recorded field data may be used for defining time
schedules for selected boundary conditions.
Start Time
Specify the simulation start time. The Start Time of the model is the time corresponding to
the beginning of the simulation. This time is relevant only for transient flow simulations where
recorded data may be imported for defining time schedules for selected boundary conditions.
the same equilibrium solution in Steady State, the total amount of water passing through
boundary conditions (i.e. the cumulative value of the solution) depends on the amount of time
simulated.
The Packages frame contains a list of existing boundary conditions for the conceptual model
being translated. Here you can include/exclude boundary conditions by selecting the
appropriate check box in the Translate column. The corresponding FEFLOW condition type
is listed for each boundary condition under the FEFLOW Conditions column.
You can also select how Recharge and Evapotranspiration should be represented: As Flow
Properties or as Type2 Boundary Condition.
Click the [Next] button to initiate the model translation. During translation, output details are
displayed in the translation log. Once finished, click the [Finish] button to exit the translation
wizard.
The numerical modeling workflow provides the tools for building the numerical model
(properties and boundaries assigned to grid cells), running the MODFLOW engines, and
analyzing the results.
8. Translation 496
The first step in defining your numerical model is to Define the Modeling Objectives. This
entails selecting the desired flow and transport simulation options.
MODFLOW-2000
MODFLOW-2005
MODFLOW-LGR
MODFLOW-NWT
MODFLOW-USG
ZONEBUDGET; and
MODPATH
Flow Objectives
Under the left panel of Define Modeling Objectives, you can specify a Start Date for the
project. Pumping well data and calibration data (head and concentration observation wells)
are entered and save as absolute (calendar) dates. Therefore, it is important to choose a
relevant start date at this step that coincides with the start time of your simulation.
Under Property Settings, you can modify the default flow parameters.
Start Date
The model start date for this exercise should be set to 1/1/2000.
VMOD Flex uses a standard Windows date picker; a few tips are shown below on how to use
this.
Click on the button shown below, to load the Windows date picker.
All months for the current year will appear as shown below.
Click on the year in the header:
The selected date will then appear for the Start Date.
Transport Objectives
The transport objectives are defined on the right panel of the Define Modeling Objectives
window.
When you select the "Transport Active" check box at the top of the screen, then the options
can be defined as explained and shown below.
No Sorption is simulated
Linear Isotherm (equilibrium-controlled)
Freundlich Isotherm (equilibrium-controlled)
Langmuir Isotherm (equilibrium-controlled)
First-order kinetic sorption (non-equilibrium)
First-order kinetic dual-domain mass transfer (without sorption)
No kinetic reaction
First-order irreversible decay
Zeroth-order irreversible decay
The selections you make for Sorption and Reaction options will determine what parameters
you need to define for your model. Default values can be defined in the "Species Parameters"
and "Reaction Parameters" tab respectively. After the model is created, you can define
additional zonation for Transport Properties at the "Define Properties" step. Detailed
information regarding these parameters can be found in the MT3DMS Users Manual.
The New Species and Delete Species buttons allow you to add and remove species to your
Transport simulation. This option is available only for certain transport engines.
When you Species Parameter tab is selected, use the button to Add a new species, or
The next step is to choose to Import Model (import VMOD Classic project or MODFLOW
files), or Create Grid (create an empty grid).
Import Model
You can import a Visual MODFLOW project or a USGS MODFLOW 2000/2005 data set.
When you click on the Import Model button, the following dialog will appear:
To import your Visual MODFLOW project, select the .VMF file and click Open to continue.
To import a MODFLOW data set, change the file type to "MODFLOW 2000 or MODFLOW
2005", then select the desired .NAM file,and click Open to continue.
Create Grid
If you select the Create Grid option, the following window will appear.
At this step, you can define the Horizontal Grid (grid size and the extents), and the Vertical
Grid (number of layers and the layer elevations).
There is no limit on the grid size you can use, however if you design a grid that exceeds
approximately 500,000 cells, it is strongly recommended that you use the 64-bit version, as
more memory will be required to accommodate these model sizes. (With the 64-bit version
of VMOD Flex, running on 64-bit Windows and having at least 10 GB RAM, you should be
able to create grids in excess of 5 million cells).
The grid extents can be defined manually; enter the min and max values for the X and Y co-
ordinates.
Alternatively, the extents can be calculated from a bounding polygon. Select the option
"Calculate extents from a polygon object". You will need to import a polygon object (from .
SHP or .DXF File), that contains just a single, closed polygon, and provide this is as an input.
For details on importing polygon objects, see the section Import Polygons 184 . Once the
polygon is imported, it will appear in the Data tree in the top left. Select/click on this polygon
from the Data tree, then click on the blue arrow button under "Calculate extents from a
polygon". The polygon should appear, and the X and Y extents will be calculated accordingly.
(note VMOD Flex will calculate a minimum bounding rectangle from an irregularly-shaped
polygon, in order to calculate the X and Y min/max extents.
Specify the number of layers you want for the grid. In the table below, you can manually
define a constant (flat) layer elevation for the top of each layer, and the bottom of the
bottommost layer (by default, VMOD Flex will calculate equally thick layers)
At this step, you can also defined varying layer elevations by using surfaces. This is intended
for "simple" numerical models where there are "pancake-layer geology". If your model has
layers that pinchouts and/or discontinuities, it is advised that you follow the Conceptual Model
workflow 284 , as this will allow you to better accommodate more complex geology, using
Horizon rules.
To define Surfaces for Grid layers, first you need to Create Surfaces (import then interpolate
XYZ points) or Import Surfaces (from Surfer .GRD, ESRI .ASC, etc.). Once the surfaces are
available in the Data tree, select each surface for the appropriate layer elevation, being sure
to work your way downwards (define top of layer 1 first, then work downwards).
Using Surfaces
Once you are finished defining the horizontal and vertical grid, click on the [Create Grid]
button at the top (middle) of the window.
Once the grid is created, there are several options to customize the grid to your project
needs.
The Refine/Coarsen button will load a window where you can refine/coarsen the grid. For
more details on this option, please see the Edit Grid 354 section.
The Define Child Grid button will load a window where you can create child (local) grids for a
MODFLOW-LGR run. For more details, please see the .Define Child Grid (for LGR) 356
section.
When you are finished with the grid edits, click on the (Next Step) to proceed. This will
generate the model tree structure (in the lower left corner of the window), with Inputs and
Outputs.
After you have created a grid or imported a grid (and associated model), you will be taken to
the View/Edit Grid step. There are several options available.
Under Views, select the various views you want to see in the Flex viewer; VMOD Flex
allows you to simultaneously show a layer, row, column and 3D Views.
Adjust a specific layer, row, or column using the up/down arrows or enter a specific row,
column, or layer integer. Alternatively, click on the button then click on any specific row,
column, or layer in any of the 2D views, and the selected row, column, or layer will be set
automatically.
The standard navigation tools allow you to zoom, pan, and in the case of 3D view, rotate.
The numerical grid will appear as a node in the model tree, as highlighted in red.
You can right-click on this item in the tree, and select Settings. In addition, the Numerical Grid
can be added to a stand-alone 3D view; to do this, right click and select 3D-Viewer.
The numerical grid can be exported to shapefile; see Export 515 for more details.
At this step, you can digitize a polyline or polygon, and set the selected cells as inactive (or
vice versa, change inactive cells back to active cells)
Select the desired flag from the combo box under "Inactive Cells" (make Active cells
Inactive, or make Inactive cells Active)
Select the Assign button.
Choose the desired shape for drawing (Single, Polyline, or Polygon)
Use the left mouse button to start drawing in the grid view, and add highlight the desired
cells; for single cell selection, a point will appear on top of the selected cell.
Once you have finished digitizing, right click with the mouse and select "Define
Attributes" (or click on the "Finish" button under the toolbox); the following window will
appear.
Choose which layers you wish to include in the cell assignments; by default, just the
current layer is selected, however you can select other (or all) layers from this window
Click OK
The selected cells will be set as Inactive or Active, depending on the option you have
selected. Inactive cells will be colored turquoise.
When you are finished with viewing the grid, click (Next Step) to proceed to the Define
Properties step.
Under the Toolbox, use the combo box to select from the various Property Groups:
For flow models, the groups include: Conductivity, Initial Heads, and Storage.
When transport is included with your model, the additional groups include: Bulk
Density, Initial Concentration (for each Species), Longitudinal Dispersion, and Species
Parameters (for each Species); the required parameters depend on what Sorption and
Reaction options you have defined in the modeling objectives.
For more details on the required flow and transport parameters for each category,
please see section: Background on Flow and Transport Properties 411
For each parameter group, you can choose to render by Zones or by a selected
attribute. Based on your selection, the color rendering in the views will change.
Click [Database] button to see the conductivity zones that exist in your model.
Use the same tools as described in the previous step to manipulate the views.
The display tools will allow you to switch from discrete cells rendering to color shading/
contours (note, this is available only when you do attribute rendering, and not when you
are rendering by ZoneID)
The different property zones are assigned and modified in VMOD Flex using an assortment of
graphical tools appearing on the side menu bar of each Properties screen.
For more details on the required flow and transport parameters for each category, please see
section: Background on Flow and Transport Properties 411
Database
The [Database] button loads the property database window as shown in the following figure.
The database window is used for viewing and editing the parameter values and settings for all
property zones in the model. The functionality and settings for the property zones are
described below
Each row of the property database table contains information about each of the model
property zones including:
The zone parameter values can be modified by simply entering a new value in the desired
field.
If you are using distributed (range of values) for a parameter zone, you will see "Distributed
Values" in the field. An example is below. (When you define property zones using Surfaces or
3D Gridded Data sets, this will result in a "Distributed Property Zone")
Each group of flow properties exists as a separate item in the model tree, as shown below.
Right click on each node, and select Settings. This will allow you to modify some of the
appearance of each parameter group.
In addition, each property group can be added to a stand-alone 3D view; to do this, right click
and select 3D-Viewer
Assign
Property zone values can be assigned directly to selected numerical cells using the Assign
options from the toolbox.
Single: Select one or more cells with the left mouse button; a small red point will appear
over the selected cell
Polyline: Draw one or more polylines to select the desired cells
Polygon: Draw one or more polygons to select the desired cells
Entire Layer: Selects the currently selected layer (all active cells)
When you use either the Assign/Polygon or Assign/Entire Layer option, the property zone will
be assigned to the numerical grid and a corresponding conceptual property zone
representation will be created; this is useful when you re-run the Conceptual to Numerical
Conversion option for the current (or new) numerical grid.
However, when you use the Assign/Single or Assign/Polyline options, no conceptual property
zone is created; please be aware of this limitation should you choose to create a new
numerical model from the conceptual model; the property values in this new model run may
need to be adjusted.
After you have done the desired cell selections, right click with the mouse to close the shape
and select "Define Attributes" as shown below:
The Define Property Zone attributes window will appear as shown below.
In the top left, select which zone the selected cells should be assigned to (from the combo
box). If you choose an existing zone, the parameter values cannot be adjusted from within
this GUI (instead, select the Database option described above, to adjust parameter values for
existing zones.)
Or, click the [New] button to create a new property zone. After doing this, a new zone number
will be incremented. Next, select in which layers the new property zone should be generated,
by default, your current layer will be selected, however you can include other layers or select
all layers.
Lastly, define the "Zone Attributes" for this new property zone in the main grid. There are
several "Methods" for defining the attributes, and these include Constant Value and Use
Surface (Use 3DGridded Data and Use Shape Data are not applicable for this scenario).
Constant Value
The Constant Value method is selected by default for each parameter in the data input grid
and allows you to specify a spatially constant value for the parameter. Replace the default
value with a new value.
Use Surface
The Use Surface method allows you use an existing surface data object to define spatially-
variable attribute values. This is ideal if you have a Surfer .GRD or ESRI ASCII GRD file
containing parameter values. Follow the steps below:
Select "Surface" as the method from the combo box. You should then see the
button become beside the "Value" column
From the Data Explorer, select the desired surface data object
Click the button to insert this data object into the Object field.
Once you are finished, click OK and the new property zone will be created. (note, when you
view the Database values for this new property zone, it will show "Distributed Values" since it
contains a range of values for this zone, not just a single value)
You may want to define initial concentrations from a .UCN file from a previous transport run.
In order to use this option, you must need to import the .UCN file to the project, as a "3D
Gridded Data" set. Follow these steps in the section "Import 3D Gridded Data" 194 . Once the
file is imported, you select this object when defining the properties.
Use assign polygon or entire layer, to select the desired group of cells
Click the [New] button to create a new zone.
Select "Use 3D Gridded Data" as the method from the combo box.
You should then see the button become activated beside the "Value" column
From the Data Explorer, select the desired 3D Gridded Data (which contains the
imported .UCN file)
Click the button to insert this data object into the Object field.
By default, Concentration should be selected in the "Mapping" column (you may need to
re-select this from the combo box).
Once you are finished, click OK and the new property zone will be created.
You can view the Initial Concentration rendering for the full 3D grid, by changing the
rendering type from "Zone" to "Initial Concentration"
(note, when you view the Database values for this new property zone, it will show "Distributed
Values" since it contains a range of values for this zone, not just a single value)
The 2D Colors and Contour line settings can be adjusted. For more details, see Color and
Contour settings 266
Export Properties
Any of the model properties can be exported to shapefile; see Export 515 for more details.
10.4.1 Edit Attributes in CSV Format
For a selected parameter group, you can edit the parameter values in a .CSV file; this
provides the ability to edit individual cells or an entire group of cells (or do cell editing
functions that are not currently available with the graphical tools in VMOD Flex).
To load the list of parameter values for all cells, right-click on the desired Property parameter
group (data object) from the model tree, and select "Edit Property Zone". The .CSV file will
load using the default editor on your computer (for most cases, this will be Excel, but it may
also include text editors). A .CSV file will load as shown below.
The format of this file is pretty simple: each row corresponds to a specific cell, and for each
cell you will see the property zone that it belongs to and the corresponding parameter values.
When making edits to this file, do not rename the column headers, or change any of the cell
geometries (layer, row, column values in the first 3 columns). You can change the zone to
which a cell belongs, and also adjust parameter values. If you create new zones, be sure to
increment the ZoneID in sequence (eg. if you have 4 Conductivity zones, the next ZoneID you
add should be 5.).
Other guidelines
ZoneID must be an integer
Parameter values should follow the MODFLOW requirements (eg. Kx must be greater than
0, Porosity must be 0 < 1, etc.
Do not add or remove any rows to this file; each cell will have a Zone assigned to it (either
one you created or the default zone values).
For a give zone, if you define different parameter values, then when you view this zone in
the Database window, it will appear as "Distributed". If you want these cells to be treated
as a new zone, then define a new ZoneID.
If you adjust the sorting or order of the rows (or apply filters in Excel), you need to undo these
style changes and restore the file back to its original appearance once you are finished with
the edits.
When you are done with the .CSV file, save the changes and close the file (Save with the
same filename!). If you are using Excel as your .CSV editor, you may encounter the following
warning when saving. Click Yes to continue.
The file will then be saved. Upon exiting MS Excel, you may get prompted again to Save the
file; since the file was already saved, it is not necessary to save again, so just click "Don't
Save"
Once you are finished editing the file, you need to reload the modified CSV file to the selected
parameter group. Right click on the same property group (from the Model Explorer), and
select "Reload Attributes" from the menu that appears as shown below.
To confirm that your edits have made it back to the numerical model, you may want to click
on Database to see the new property zone values, and/or mouse over the modified cells to
see that they have the correct Zone and parameter values.
10.4.2 Theory
The following sections present an overview of the property zone parameters required for flow
and transport models in VMOD Flex.
A flow model requires Conductivity, Storage, and Initial Heads property values for each active
grid cell in order to run a flow simulation. Similarly, a transport model requires transport
parameter values for each active grid cell in order to run a transport simulation. Upon creating
a Visual MODFLOW project, the default flow and transport parameter values are assigned to
every grid cell in the model domain. This will ensure the model has the minimum data
required to run a simulation. However, in most situations, the flow and transport properties
will not be uniform throughout the entire model domain, and it will be necessary to assign
different property values to different areas of the model.
Heterogeneous model property values are supported by Visual MODFLOW using either
Constant Value Property Zones, or Distributed Value Property Zones. These two different
approaches are described below.
The Constant Value Property Zones approach requires the development of a conceptual
model, whereby each hydrostratigraphic unit of the model is assigned a uniform set of
property values. For example, consider an aquifer where there is pumping test data and slug
test data indicating a range of horizontal conductivity values from 1x10-4 cm/s to 5x10-4 cm/s
at different locations within the aquifer. The conceptual approach would assign a uniform Kx
and Ky value of 2.5x10-4 cm/s to the entire aquifer. This value would be adjusted up or down
for calibration purposes within the range of values reported. If a reasonable calibration cannot
be achieved using this conceptual model, it may be necessary to sub-divide this region into
several zones to accommodate local irregularities in the flow pattern. However, almost all
modeling textbooks strongly recommend to start out simple first and get as close a solution
as possible, and then make the model more complex if necessary.
The Distributed Value Property Zones approach is currently only available for Conductivity,
Storage, Initial Heads, Initial Concentrations, and Dispersivity properties. This approach is a
little more complicated because it involves linking a property zone to one or more parameter
distribution arrays containing data interpolated from scattered observation points. When a
property zone is linked to distribution array, the property values assigned to each grid cell
within that zone are calculated by multiplying the zone parameter value with the
corresponding value from the parameter distribution array. If the grid spacing from the model
does not match the grid spacing from the distribution array, a bivariate interpolation scheme
is used to calculate the appropriate parameter value at the center of the model grid cell using
the four nearest data nodes in the parameter distribution array.
Conductivity
Anisotropy
The reason Visual MODFLOW prompts for both Kx and Ky is because there are two options
for defining the horizontal anisotropy of the Conductivity property zones:
Anisotropy by layer
Anisotropy as specified
Note: The anisotropy option is set in Translation settings. (see Anisotropy 482 for more
details).
If the Anisotropy by layer option is used, the Kx value will determine the conductivity in the X-
direction, and the specified anisotropy ratio (Ky/Kx) for each layer will be used to calculate the
Ky value for each grid cell.
If the Anisotropy as specified option is used, the model will use the Kx and Ky values defined
for each property zone.
Storage
Ss - specific storage
Sy - specific yield
Eff. Por - effective porosity
Tot. Por - total porosity
Specific Storage (Ss) is defined as the volume of water that a unit volume of aquifer releases
from storage under a unit decline in hydraulic head due to aquifer compaction and water
expansion. Using Specific Storage, Visual MODFLOW determines the primary storage
coefficient (sf1) for MODFLOW. The primary storage coefficient is calculated by Visual
MODFLOW to be equal to the specific storage multiplied by the layer thickness (Specific
Storage x thickness = Storage coefficient). Please NOTE that Specific Storage is not used in
Steady State simulations.
Specific Yield (Sy) is known as the storage term for an unconfined aquifer. It is defined as the
volume of water that an unconfined aquifer releases from storage per unit surface area per
unit decline in the water table. For sand and gravel aquifers, specific yield is generally equal to
the porosity. MODFLOW uses Ss or Sy depending on the layer type assigned by the user
(please refer to "Layer Type Settings 477 "). For an unconfined layer, MODFLOW uses Sy to
determine storage volumes. For a confined layer, Ss is used. For a variable layer,
MODFLOW will check the head value of the cell to determine if it is confined or not. It is
recommended that if you do not have measured parameter values for Ss and Sy, that you
refer to literature values as a default.
Effective Porosity (Eff. Por) is the pore space through which flow actually occurs, and is used
by MODPATH to determine the average linear groundwater velocities for use in time-
dependent capture zones and time markers along pathlines. This term is not used for
MODFLOW simulations.
Total Porosity (Tot. Por) is the percentage of the rock or soil that is void of material, and is
used by MT3D to determine the chemical reaction coefficients, and for calculating the
average linear groundwater flow velocity in the particle tracking solution schemes. A different
porosity is used for MT3D than for MODPATH because MT3D accounts for additional
transport and reactive processes, such as dispersion. The total porosity term is not used for
MODFLOW simulations.
These Storage parameters may be defined on a cell-by-cell basis using constant property
values and/or distributed property values. When importing or assigning the Storage property
zones, Visual MODFLOW will require valid data for each of the above parameters.
Initial Heads
In order to start solving the flow simulation, MODFLOW requires an initial “guess” for the
head values in the model. A good initial guess for the starting heads of the simulation can
reduce the required run time significantly. The Initial Head values are also used to calculate
the drawdown values, as measured by the difference between the starting head and the
calculated head.
Transport Properties
Initial Concentration
In many cases, the historical conditions of the site are unknown, and the contaminant source
has been removed or remediated. However, the groundwater contamination is still present
and the mass transport simulation must be run forward in time, starting from the existing
conditions, to predict the potential downstream impacts. The Initial Concentration properties
define the existing conditions (background groundwater concentrations) of each chemical
species being simulated.
Initial Concentrations must be defined for each chemical species that you have defined in the
Define Modeling Objectives; the default value is 0.
Bulk Density
The Soil Bulk Density is used to calculate the Retardation Coefficient for each chemical
species according to the following formula:
where
The Retardation Coefficient is used to calculate the ‘retarded’ flow velocity (VR(i)) of each
chemical species according to the following formula:
where
The retarded flow velocity is used to calculate the advective transport of each species.
Unless otherwise specified during the setup of the Transport model, the default soil Bulk
Density value for any new model created is 1700 kg/m3.
If no sorption method is selected in the current Transport Variant, then no Bulk Density values
are required for the simulation, and all of the options in the left-hand toolbar will be disabled.
Longitudinal Dispersion
Dispersion is a physical process that tends to ‘disperse’, or spread, the contaminant mass in
the X, Y and Z directions along the advective path of the plume, and acts to reduce the solute
concentration. Dispersion is caused by the tortuosity of the flowpaths of the groundwater as it
travels through the interconnected pores of the soil.
where
D is the Dispersion Coefficient (L2/T)
VL is the longitudinal velocity of flow along the plume migration pathway (L/T)
VH is the horizontal velocity of flow along the plume migration pathway (L/T)
MT3D calculates the Dispersion tensor for the mass transport model using the following
parameters:
Longitudinal Dispersivity for each transport grid cell
Ratio of Horizontal to Longitudinal Dispersivity for each layer
Ratio of Vertical to Longitudinal Dispersivity for each layer
Molecular Diffusion Coefficient for each layer
At the Define Properties, the Longitudinal Dispersion can be defined on a cell-by-cell level.
Species Parameters
The Species Parameters include the Sorption and Reaction parameters used by the selected
transport settings. The available parameters will depend on what sorption and reaction
settings you selected in the modeling objectives. The parameters presented in the Species
Parameters Database window are from the parameters listed in the Species Parameters Tab
in the Modeling Objectives.
If no sorption or reactions are selected in the current Transport Variant, then no sorption or
reaction parameters are required for the simulation, and there will not be an option for
"Species Parameters" at the Define Properties step.
First order reaction coefficients can be derived from a Half Life value as follows:
Where:
Under the Toolbox, use the combo box to select from the various Boundary condition
types.
Use the same tools as described in the previous step to manipulate the views.
Each boundary condition group of cells will appear as its own node in the model tree. You can
right click on this to adjust style settings. In addition you can load any group of boundary
condition cells into a stand-alone 3D Viewer.
In general, each boundary conditions has the same set of graphical tools on the left-hand
toolbar for editing the model boundary conditions. The following is a description of how to use
these options. For specific descriptions of the data requirements and data entry options, refer
to the sections describing each boundary condition type.
Edit
[Edit >]
[Edit >] Single is used to edit one or more grid cells belonging to the same group of
boundary condition cells.
[Edit >] Group is used to edit all of the grid cells belonging to the selected group of
boundary condition cells.
The following window will appear.
The attributes for each boundary condition are listed in the upper part of the grid. Each
attribute can be steady-state or Transient. Transient attributes will have a corresponding time
schedule shown in the lower part of the window (example below).
If the selected group of cells has values that change along a linear gradient, then for each
attribute you will see a range of values, with the min value and max value separated by ~.
(eg. 18 ~ 20)
A Copy and Paste feature is available in the transient attributes grid, through selecting the
desired cells and right clicking. The values can be copied to an Excel worksheet, modified,
then pasted back into this grid. This option is shown below.
For Constant Head, River, Drain, General-Head, and Specified Flux, you can disable the
selected Time Periods by removing the check marks from the Active column (see below),
which “turns off” the boundary condition for that particular Time Period. The corresponding
package will have no attributes defined for those cells covered by that boundary condition, for
that specific stress period. For Recharge and Evapotranspiration zones, you can define a
zero rate for those cells in those time periods.
Assign
[Assign >]
[Polygon or Polyline]: Use this option to digitize one or more shapes and assign
Boundary Condition attributes to the respective shapes. Use the left mouse button to
start drawing and add attributes at the desired locations. Once you have finished
digitizing, right click with the mouse to close the shape and select "Define Attributes" as
shown below.
[Using Data Object]: Use this option when you have a polyline or polygon data object
already imported into the projects, and you would like to use this shape to define the
geometry.
The Define Boundary Condition attributes window will appear as shown below.
Define the attributes using the various methods; click Finish when you are done. For
more details on the options for defining attributes, see Define Boundary Conditions
(Attributes) 316 .
NOTE: When digitizing boundary conditions, VMOD Flex will automatically assign these
to the appropriate layer, based on the attributes you define.
For more details on creating a Wall (HFB) Boundary Condition, please see Define Wall
(HFB) 331
For more details on creating Wells Boundary Condition object, please see Define
Pumping Wells 327
To delete a specific boundary condition cell group, right click on this node in the tree, and
select Delete.
If you are working in a project where you created new wells using VMOD Flex 2015.1or
later, then you will see a window similar to the one below:
Note: if you make edits to the well pumping rates in this screen, these changes are not
propagated back to the raw (original) wells data object in the Data Explorer.
[Copy >] Layer is used to copy all of the boundary data from a selected boundary group to
one or more selected model layers. This option is available for: Constant Head, River,
General Head, Drain, Specified Flux and Constant Concentration. When this option is
launched, you will see only those boundary condition groups that are in the currently selected
layer. Please use caution when copying boundary conditions for an LGR model, as you
cannot copy boundary conditions from layers in a parent grid to layers in a child grid; you can
only copy boundary conditions with the grid that it lies (within parent grid layers or within child
grid layers)
Database
The [Database] button becomes active when you select either Recharge or
Evapotranspiration for the Boundary Condition type. This will load the zone database window
as shown in the following figure.
In this grid, you can modify the values for existing zones.
Display
By default, VMOD Flex uses the following color scheme for Boundary Condition Cells
Recharge and Evapotranspiration have additional settings for rendering the cells by either
ZoneID or Rate (either Recharge or Evapotranspiration). To access these settings, right-click
on the Recharge (or Evapotranspiration) node in the model tree and select Settings. The
following dialog will appear:
From the tree on the left side of this window, select Colors under Style/Recharge. In the main
window, under "Attribute" you can then change this between Zone or Rate; as you change
this, the color range in the grid will refresh. Upon clicking Apply or OK, the 2D/3D views will
be refreshed.
The Settings dialog will appear; the settings are similar to described in Points 252 .
For a selected boundary condition parameter group, you can edit the parameter values in a .
CSV file; this provides the ability to edit individual cells or an entire group of cells.
To load the list of parameter values for all cells, right-click on the desired Boundary Condition
cell group from the model tree, and select "Edit Attributes...". The .CSV file will load using the
default editor on your computer (for most cases, this will be Excel, but it may also include text
editors). A .CSV file will load as shown below.
In the example above, there are 3 stress periods (indicated by t3); for a specific river cell (let's
pick the first cell), there are 4 rows in the .CSV file, since you can edit the _Stage, _Rbot,
_Cond, and _Active field for each stress period.
The number of fields in the file will change based on the selected boundary condition type.
The following "edits" are possible when adjusting the .CSV file:
Add or Remove stress periods; simply add/remove the desired columns, then be sure to
define an end time, and valid parameter values for all cells. When adding new stresses, be
sure to increment the "t" row above the time value (eg. t1, t2, t3, ...)
Edit the end time for existing stress periods (when doing so, be sure that the time values
increase as you go from left to right)
Add or remove cells from the selected BC Cell zone. (add/remove the desired rows, then
enter field values accordingly)
When you are done with the .CSV file, save the changes and close the file (Save with the
same filename!). If you are using Excel as your .CSV editor, you may encounter the following
warning when saving. Click Yes to continue.
The file will then be saved. Upon exiting MS Excel, you may get prompted again to Save the
file; since the file was already saved, it is not necessary to save again, so just click "Don't
Save"
Once you are finished editing the file, you need to reload the modified CSV file to the selected
parameter group. Right click on the same property group (from the Model Explorer), and
select "Reload Attributes" from the menu that appears as shown below.
To confirm that your edits have made it back to the numerical model, you may want to click
check the location of the boundary condition cells in the Flex viewer, and also edit the group
(or single) cells that you modified, using Edit Group or Edit Single. In the case of edits for
Recharge or Evapotranspiration, you can click on the Database to see the new zone values.
10.5.2 Transport
10.5.3 Wells
Pumping Wells
In previous versions of VMOD Flex (v.2014.2 and older), well rates and pumping schedule
were defined in the numerical model on a cell-by-cell basis and there was no link between the
conceptual and numerical wells. This approach provided limited editing and visualization
capabilities in the conceptual model, and posed a challenge when editing well rates at
screens defined over multi-layers or multiple wells in the same cell. In addition, point source
concentrations for these wells were defined on a per-cell basis, resulting in possible
conflicting concentration values along the same screen interval (and non-realistic inputs).
Visual MODFLOW Flex v.2015.1 provides an improved approach and interface for working
with pumping wells in the conceptual and numerical model. Similar to VMOD Classic, VMOD
Flex follows a logical approach of defining the well rate over the entire well, and independent
of the numerical grid. With this “conceptual” approach, a single well can contain multiple
screens, fully penetrating screens, or partially penetrating screen intervals over the depth of
the wellbore. Pumping wells are defined at X,Y co-ordinates, and not assigned to specific grid
cells. This provides flexibility in changing the numerical grid and the ability to readily use well
locations (points) as grid node generators for MODFLOW-USG.
Pumping well data are shared between the conceptual and numerical models so that
modifications to the conceptual model will translate into the numerical model. Pumping wells
are presented in an easy-to-use view showing the well location, screen geometry, and
pumping rates. Since the rate is assigned to the entire well, you don’t need to worry about
figuring out how much discharge is proportioned to each model layer; Visual MODFLOW Flex
does this calculation for you automatically. For details on how well rates are calculated for
the .WEL package, see the section Calculation of Well Rates 329
In addition, if you are running a transport simulation, point source concentrations for an
injection well are defined/edited on a per well level, an approach that more closely represents
actual field conditions.
Enhanced visualization of the well screen in cross-section view (by row/column), and in 3D
view
Flexible labeling and rendering options in 2D and 3D.
Display the well name in the .WEL package, to correlate the conceptual well to a specific
MODFLOW grid cell.
Visual MODFLOW Flex is backwards compatible with projects made in v.2014.2 and older.
When you open such a project that contains pumping wells in the numerical model, and try to
edit a well cell, you will see the following window:
You may proceed with editing the well rates/schedule for wells in the numerical model.
However, you are strongly encouraged to convert wells in this old (cell-based) format into the
new wells (conceptual object) format. The benefits of working with the new (conceptual) wells
are the following:
-more logical editing of the well rates/schedule defined over the screen interval (as opposed
to defining rates for individual cells)
-improved display of the wells (in the conceptual model and numerical model, in 3D, layer and
cross-section view)
-robust translation: accommodate multiple wells in the same cell, with individual entries in the
.WEL package
-option to set individual wells as active or inactive for the simulation.
-simple option to point-and-click to create a well in the numerical model
Converting From A Cell-Based (Old) Wells Object To Conceptual (New) Wells Object
Before proceeding:
Select the Numerical Model workflow tab (from the list of active viewers/workflows across
the top of the main window)
Go to the Define Boundary Conditions step
Under Toolbox, choose "Wells" from the list of available boundary condition types
Select Assign / Using Data Object; as shown below.
Note: This step is only necessary if you have just a conceptual model with no numerical
models.
Select the Conceptual Workflow tab (from the list of active viewers/workflows across the
Select Define Pumping Wells. A Create Well Boundary Condition window will appear; the
layout is identical to what is shown in the section above for creating wells in the Numerical
Model.
Enter a name for the wells
On the Data tree, locate the "raw" pumping wells object that you imported into the project
Click once on the caption for this wells object to select it.
Drag the wells into the empty text box under "Select Raw Wells Object".
Release the mouse button
The list of wells will appear in the window
Verify that the new wells object contains the correct values, and if necessary make the
appropriate corrections. If your previous wells object contained species concentrations for
a transport run, then re-assign these now.
Click OK to complete the process.
A new item will appear on the Model Explorer under Simulation Domain / Model Domain /
Boundary Conditions / Wells
Once the new wells object is created, you can edit the attributes by right-clicking on the
Wells object from the Model explorer under Simulation Domain / Model Domain / Boundary
Conditions and selecting Edit Boundary Condition from the menu as shown below.
When you are working in the numerical model, there are two options for adding wells to your
model
Assign / Wells
Allows you to point and click at locations in the grid (in the current layer) to define one or more
well locations. This option is useful if you want to add just a few wells with a simple
schedule, and do not have this data already in an Excel file.
Select the desired model layer where you want to add a well
Choose Assign/Wells
Using the left mouse button, point and click at the desired location.
When you are finished, click on the "Finish" button on the Toolbox (this can be found under
the "Assign" option), or right-click anywhere in the layer view of the grid and select "Define
Attributes".
In the case where a wells object already exists, the following window will appear: (if there
are no wells in the project, then the "Edit Wells" window will appear as explained below.
The newly created wells can be added to an existing wells object (new conceptual wells
only!) or you can add these wells to a new wells group. This scenario is useful if you want
to categorize and distinguish wells in your model (for example separate injection or
pumping wells, private vs. public supply wells, etc.)
Click OK
The "Edit Wells" window will appear; in this window you can define the screen geometry
and pumping schedule. When you add a well with the click of a mouse, the default screen
that is created will be fully over the layer thickness; the well Z max will be top of layer 1 and
the well Z min will be the bottom of the bottommost layer.
Click OK to finish creating the wells.
Allows you to create a pumping wells object by using an imported wells object as the data
source.
Select the Numerical Model workflow tab (from the list of active viewers/workflows across
the top of the main window)
Go to the Define Boundary Conditions step
Under Toolbox, choose "Wells" from the list of available boundary condition types
Select Assign / Using Data Object; as shown below.
If you choose a wells data object that contains wells that start at different times, then you will
receive a warning when attempting to use this object to create pumping wells; an example is
shown below:
1. The pumping well start date must occur on or after the model start date; any wells with a
pumping schedule before the start date will be truncated (cut-off)
2. All wells must start at the same start date, and this must be the model start date; in
practice, this may not always occur, so VMOD Flex will automatically insert pumping rate
of 0 for all wells that do not start at the model start date.
Edit Wells
Browse to a layer that contains a well; it will appear as a point (colored pink)
Select Edit/Single
Click on a Well in the layer view
The Edit Wells window will appear as explained above.
Make the desired edits then click OK to apply the changes.
Wells can be set as active/inactive for the simulation; use the "Active" column in the Wells
grid to set the appropriate option; wells that are set as Inactive will not be translated to the .
WEL package.
Export
The pumping wells can be exported to CSV file; right click on the Model Explorer and select
"Export"; a CSV file will be generated which can be loaded into a Text Editor or Excel.
10.5.4 Theory
Steady-State vs. Transient Flow Boundary Conditions
For transient simulations, MODFLOW requires the time element of the boundary conditions
to be defined using Stress Period “counters” as opposed to using “real” times. As a result,
each time interval for a transient model must be determined in terms of Stress Periods
before any boundary condition data is defined. Unfortunately, accommodating this format is
quite tedious because the data collected for rainfall and groundwater recharge doesn’t always
follow the same time schedules as data collected for other boundary conditions like well
pumping rates and surface water levels. This approach also makes it difficult to utilize raw
field data collected and recorded in terms of real times.
In Visual MODFLOW, a Time Period is similar to a Stress Period, but with two important
exceptions:
A Time Period is defined using real times and real time units, and
Each boundary condition grid cell may contain different Time Periods
The advantage of this approach is the ability to clearly see the magnitude of time for each
Time Period (as opposed to interpreting data such as “from Stress Period 1 to Stress Period
2”), and it facilitates more convenient methods for importing raw data from different boundary
condition types.
Each group of boundary condition grid cells requires a minimum of one Time Period of data
containing a Start Time, a Stop Time, and a complete set of data for the selected boundary
condition type (the required data for each boundary condition type are described later in this
section). For steady-state simulations, Visual MODFLOW requires data for only a single
Time Period, while for transient simulations, Visual MODFLOW can accommodate an
unlimited number of Time Periods.
For steady-state simulations the Stop Time value is irrelevant because the term “steady-
state” indicates that the model results are not changing with time. Therefore, a Stop Time
value of 1 time unit is commonly used. However, if the model is going to be used to evaluate
a transient simulation in the future, it is probably a better idea to give it a more realistic value
corresponding to the potential time frame of interest.
If a steady-state simulation is run using a model containing transient boundary condition data,
only the data from the first Time Period of each grid cell will be used for the steady-state
conditions.
If a transient model is run for 10 years, and a boundary condition is defined only for a period
up to 7 years, Visual MODFLOW will assume this boundary condition does not exist for the
remaining 3 years of the simulation. The exception to this rule are the Constant Head and
Constant Concentration Boundaries, which must be defined for the entire simulation.
Note: For a steady-state simulation, a minimum of one active grid cell in the model MUST
contain a head-dependent boundary condition type. Otherwise, the model is indeterminate
and the solution will not converge. This head-dependent boundary condition acts as a
reference head for all calculations. The head-dependent boundary condition type can be one
of the following:
For a transient simulation, the specified initial heads are sufficient for a determinant solution.
First, import the observation well data as described in the Import Wells 192 section. The raw
observation well data can be viewed/edited in the Data Table 241 section.
Once you have the head observation data object imported, navigate to the Define
Observations step in the numerical model workflow.
Below the toolbox, you will see the insert blue arrow; select your Observation Wells data
object from the data explorer and click on the button. The observation wells should then
appear in the 2D view and will also appear as a new node on the numerical model tree on the
Model Explorer.
If you add Observations that are defined in Absolute times, and those times are before the
model start date defined in the modeling objectives, then you will receive a warning message
during creation. These head/concentration observations cannot be included in the numerical
model.
The head and concentration observation data can be viewed/modified in a CSV format (once
it has been created)
Right-click on the Head (or Concentration) Observations node from the Model explorer
Select "Edit Attributes..." as shown below.
The data contained inside the Observations data object will be displayed in a .CSV file; this
should appear in either Notepad or Excel depending on your system configuration; an
example is below:
(Note that the Layer number for the observation point is calculated based on the Obs. Elev;
changing the layer number will not change the vertical location of the observation point).
When you are finished with the edits in the .CSV file, you need to save and close this file.
Then re-import back the changes into VMOD Flex using the steps below:
Right-click on the Head (or Concentration) Observations node from the Model explorer
Select "Reload Attributes..."
The modified data will now appear and will be utilized for any charts the next time you
complete a translate and run of the model.
At the Define Zone Budget Zones step, you can create new zone budget zones using 2D/3D
point, polyline, or polygon shape objects from the Data tree, and digitize new zones using
Assign Polyline, Polygon, or Point (Single Cell)
[Assign >] Polyline. Use the left mouse button to start digitizing a polyline over the desired
cells. Once you have finished digitizing, click on the Finish button from the toolbox, or right
click with the mouse and select "Define Attributes". The following window will appear
Click the New button to assign the selected cells to a New zone; otherwise, you can select
to assign cells to an existing zone by selecting the zone from the dropdown list at the top.
The selected cells can be assigned to the current layer or multiple layers using the check
boxes at the bottom of the window. Once you are finished, click OK.
.
[Assign >] Polygon: Digitize one or more polygons, and repeat the steps as described
above for Assign > Polyline.
[Assign >] Single: Left-click on one or more cells and a point will appear. Once finished,
right-click and select "Define Attributes", and follow the steps as described above for
Assign > Polyline.
[Assign >] Using Data Object.... and the the following window will appear.
Choose the desired point, polyline, or polygon data object from the tree.
Click on the button (under Select Data Object)
Select the desired model layers where the zone should be applied.
Note: if you choose a 2D shape object (where elevation value is 0), then the zone budget
will be created only in the selected layer(s); if you select a 3D shape, then the elevation
value from the shape object will be used to calculate intersecting cells from the appropriate
layer, and create a zone in this appropriate layer(s)
A simple example is shown below for a polygon data object (shown in red).
After the zones are generated, they will appear in layer view.
When the selected shape contains multiple polyline or polygon features, then a new zone will
be created for each feature.
Zone Budget values can also be adjusted on a cell-by-cell basis by editing the values in a
CSV file. For more details, see Define Properties 401
Documentation of the theoretical and numerical implementation of MODPATH are given in the
USGS Open File Report 89-381, "Documentation of Computer Programs to Compute and
Display Pathlines Using Results from the U.S. Geological Survey Modular Three-Dimensional
Finite-Difference Ground-Water Model, by David W. Pollock.”, available from the USGS.
At the Define Particles step, you can create new Forward and Backward Particles and view
Forward or Backward particles that have been imported from a Visual MODFLOW model.
Assign
[Assign >] Point. Using the mouse, left-click on the Layer view at the desired locations for
the particles. Once finished, right-click and select "Define Attributes", or click on the Finish
button from the toolbox, and the following window will appear.
[Assign >] Using Data Object.... and the the following window will appear.
From the Data Explorer, select a Points data object that represents the particle locations. If
you do not have a file containing points, then you can create and digitize new points using
the drawing tools. Refer to Creating New Data Objects 219 for more details
Click the button to insert the data object into the input field.
If you selected 2D points, then the particles will be assigned to the current layer, and you
can also include additional layers. If you selected 3D points, then the Elevation value for
each point will be read and this will determine which model layer the particles will be
inserted into.
Using Circle
A circle of backward tracking particles is typically assigned around a pumping well in order to
determine the capture zone for that well.
First, select the model layer where you want the circle to be assigned.
Select the option [Assign > Circle] from the toolbox
Move your mouse cursor to the location where you want the center of the circle to be
located (typically on top of a well cell, at the center of the cell)
Left-click once to create the circle
The "Define Particles Window" will appear
Delete Particles
[Delete >] By Drawing a Box, allows you to delete just a set of particles. Note that this
option will only delete the particle type that is active at that time (either Forward or
Backward). Before proceeding with the Delete, be sure you have the desired particle type
layer as active (and visible in the 2D Viewer). To do this, click on , and move the
desired layer type (Forward or Backward particles) to the top of the layer list. Once
complete, select Delete > Draw in a Box, and left click with your mouse to anchor the
corner of a box around the selected particles you wish to delete, then draw the outline of the
box, and release the mouse button to complete the box. The particles that lie within that box
will be deleted, though only for the current model layer.
[Delete >] Current Layer deletes all particles (Forward and Backward) in the current layer
[Delete >] All Layers, deletes all particles in all layers
MODPATH Options
There are several settings for the MODPATH run, which can be define at the "Translate" step.
For more details, see MODPATH 485
MODFLOW-LGR should only be run when you have defined a child grid and ran Conceptual
to Numerical Conversion from the Conceptual Modeling workflow.
Note: MT3DMS and MODPATH are not supported by MODFLOW-LGR. VMOD Flex uses
MODFLOW-LGR v.1.0
The available translation settings will depend on what engines you chose to include, in the
previous step (Select Run Type / Single Run).
General 461
Time Steps 462
Solvers 463
Recharge and Evapotranspiration 475
Layer Types 477
Cell Rewetting 478
Initial Heads 481
Anisotropy 482
Output Control 483
10.10.1 MODFLOW
This chapter describes the features, functionality, and options in the Translation section of the
VMOD Flex interface. The Translation section is where the MODFLOW packages are
generated.
* Depending on the numeric engine selected for running the flow simulation, the MODFLOW
tree item may appear as MODFLOW-2000, MODFLOW-2005, MODFLOW-NWT, or
MODFLOW-LGR.
10.10.1.1 General
Here you can see the output directory where the translated files will be generated.
You can also see the start date. The start date will be the same as that which you specified
in the "Define Modeling Objectives" step
Specify the property package (LPF or BCF). If you are using MODFLOW-NWT, the property
package must be UPW.
If the Steady-State Flow option is selected, VMOD Flex will prepare the data set for a steady-
state flow simulation, and will automatically use the data from the first time period (only) of
each boundary condition and pumping well defined in VMOD Flex to run the model to achieve
flow equilibrium (i.e. a time-independent solution since all inputs are constant).
If the Transient Flow option is selected, VMOD Flex will prepare the data set for a transient
flow simulation. During this process, VMOD Flex will automatically merge all of the different
time period data defined for each pumping well and boundary condition into the stress period
format required by the different versions of MODFLOW. This creates a time-dependent flow
solution, as the model is being run with different inputs at different times
The Time Steps option is only available when you are running a transient model (i.e. when
Transient Flow run type is selected). For transient flow simulations, VMOD Flex will
automatically merge all of the different time periods defined for all of the different pumping
wells and boundary conditions into the uniform stress period format required by MODFLOW.
A stress period is defined as a time period in which all the stresses (boundary conditions,
pumping rates, etc.) on the system are constant. Unfortunately, the data collected for each
modeling site is rarely synchronized in terms of stress periods, so VMOD Flex merges the
time schedules for all pumping wells and boundary conditions to determine the length of each
stress period for a transient simulation. As a result, the user cannot directly modify the
number of stress periods or the length of each stress period.
The Time step options window (as shown in the following figure) is used to define the number
of Time steps in each stress period and the time step Multiplier is used to increment each
time step size.
The Period # column indicates the stress period number while the Start and Stop columns
indicate the start time and stop time, respectively, for each stress period.
Each stress period is divided into a user-defined number of Time steps whereby the model
will calculate the head solution at each time step. The default value for Time steps is 10.
The time step Multiplier is the factor used to increment the time step size within each stress
period (i.e. it is the ratio of the value of each time step to that of the preceding time step). The
default value is 1.2. A time step Multiplier value greater than 1 will produce smaller time steps
at the beginning of a stress period resulting in a better representation of the changes of the
transient flow field. Thus increasing the number of time steps in a simulation may result in
smoother head or drawdown versus time curves.
The Steady-state column indicates if the stress period is transient or steady-state. This
option is available if MODFLOW-2000, MODFLOW-2005 and MODFLOW-SURFACT is
selected as the numeric engine for the flow model. These engines allow individual stress
periods in a single simulation to be either transient or steady state instead of requiring the
entire simulation to be either steady state or transient. Steady-state and transient stress
periods can occur in any order. Commonly the first stress period may be run as steady state,
to produce a solution that is used as the initial condition for subsequent transient stress
periods.
VMOD Flex comes with a choice of different solvers to use in solving the numerical equations
for the flow simulation:
These solvers and their individual settings can be accessed by selecting MODFLOW/Solver
from the Run section of VMOD Flex. A Solver Setting window will appear, similar to the image
shown in the following figure, with a list for choosing the desired Solver and a listing of the
settings for the selected Solver. Each new model using MODFLOW-96 or MODFLOW-2000
will be set to use the WHS Solver by default.
10.10.1.4.1 PCG
The PCG2 solver works on a two-tier approach to a solution at one time step, inner and the
outer iterations. Outer iterations are used to vary the preconditioned parameter matrix in an
approach toward the solution. An outer iteration is where the hydrogeologic parameters of the
flow system are updated (i.e., transmissivity, saturated thickness, storativity) in the
preconditioned set of matrices. The inner iterations continue until the user-defined maximum
number of inner iterations are executed, or the final convergence criteria are met. The Outer
iterations continue until the final convergence criteria are met on the first inner iteration after
an update.
The following is a description of the solver parameters for the PCG method:
Maximum Number of Outer Iterations: [Default = 25] This parameter provides an upper
limit on the number of outer iterations to be performed. The maximum number of
iterations will only be used if a convergent solution is not reached beforehand. Twenty-
five iterations should be adequate for most problems. However, if the maximum
number of outer iterations is reached and an appropriate mass balance error is not
achieved, this value should be increased.
Maximum Number of Inner Iterations: [Default = 10] This parameter provides an upper
limit on the number of inner iterations to be performed. This number of iterations will
only be used if a convergent solution for the current set of matrices in the "outer"
iteration is not reached beforehand. Ten inner iterations should be adequate for most
problems. More than ten iterations will not usually improve the solution, as the solution
is updated again when it returns to the outer iterations.
Head Change Criterion for Convergence: [Default = 0.01] After each outer iteration has
completed, the solver checks for the maximum change in the solution at every cell. If
the maximum change in the solution is below a set convergence tolerance (set here in
the working units feet or metres) then the solution has converged and the solver stops,
otherwise a new outer iteration starts.
A solution accurate to 0.01 [ft. or m] will normally be sufficient for most problems,
unless the maximum head difference across the modeled domain is less than one foot
or metre. If an appropriate mass balance is not achieved and the number of inner and
outer iterations are within the maximums declared above, this value can be decreased
by an order of magnitude, e.g. 0.001.
Residual Criterion for Convergence: [Default = 0.01] While the head change criterion is
used to judge the overall solver convergence, the residual criterion is used to judge the
convergence of the inner iterations of the solver. If the maximum absolute value of the
residual at all nodes is less than the tolerance specified here (units of length3/time)
then the solver will proceed to the next outer iteration.
If you notice that only a few inner iterations are being performed for all outer iterations, and an
appropriate mass balance is not achieved, the Residual Criterion value can be decreased by
one or more orders of magnitude.
Note: The residual criterion is unit dependent. The default value of 0.01 is sufficient if your
length units are feet or metres and your time units are seconds. If your time units are not
second, you should multiply the default value by the number of seconds in your time unit (e.g.
use a residual criterion of 0.01 * 86400, if your time unit is days).
Damping Factor: [Default = 1] This factor allows the user to reduce (dampen) the head
change calculated during each successive outer iteration. For most "well posed" and
physically realistic groundwater flow problems, the damping factor of one will be
appropriate. This parameter can be used to make a non-convergent (oscillating or
divergent) solution process more stable such that a solution will be achieved. This is
done by decreasing the damping factor to a value between 0 and 1 (only rarely < 0.6).
This parameter is similar to the "acceleration parameters" used in other solvers.
Printout Interval: [Default =10] The printout interval is the number of iterations after
which the maximum head change (and residual) of the solution is written to the listing (.
LST) file.
If the Preconditioning Method is set to Cholesky, the Relaxation parameter can be set.
Although the default is 1, in some cases a value of 0.97-0.99 may reduce the number of
iterations required for convergence.
10.10.1.4.2 GMG
The GMG solver, based on the preconditioned conjugate gradient algorithm, has been
developed by the USGS for solving finite-difference based flow models. As opposed to AMG,
the preconditioning in GMG is based on a solver method known as geometric multigrid. The
GMG solver has been demonstrated to greatly reduce model run times relative to other
solvers using a comparable amount of memory. Detailed information about the GMG solver,
including comparisons with the AMG solver, can be found in the GMG Linear Equation Solver
Package PDF documentation (located in the Manual folder of your VMOD Flex installation
media).
The solver parameters for the Geometric Multigrid Solver are described below using excerpts
from the GMG Linear Equation Solver Package PDF documentation (located in the Manual
folder of your VMOD Flex installation media):
Max. outer iterations (MXITER): The maximum number of outer iterations. For linear
problems, MXITER can be set to 1. For nonlinear problems, MXITER needs to be
larger, but rarely more than 100. The maximum number of iterations will only be used if
a convergent solution is not reached beforehand.
Max. inner iterations (IITER): The maximum number of PCG iterations for each linear
solution. A value of 100 is typically sufficient. It is frequently useful to specify a smaller
number for nonlinear problems so as to prevent an excessive number of inner
iterations. This number of iterations will only be used if a convergent solution for the
current set of matrices in the "outer" iteration is not reached beforehand.
Adaptive Damping Control (IADAMP): IADAMP is a flag that controls adaptive damping.
If IADAMP = 0, then the value assigned to DAMP is used as a constant damping
parameter. If IADAMP ? 0, then the value of DAMP is used for the first nonlinear
iteration. The damping parameter is adaptively varied on the basis of the head change,
using Cooley’s method for subsequent iterations.
Head change criterion (HCLOSE): After every outer iteration is completed, the solver
checks for the maximum change in the solution at every cell. If the maximum change in
the solution is below a set convergence tolerance (set here in the working units of feet
or metres) then the solution has converged and the solver stops, otherwise a new outer
iteration is started. A solution accurate to 0.01 [ft. or m] will normally be sufficient for
most problems unless the maximum head change throughout the modeled domain is
less than 1 foot or metre. If an appropriate mass balance is not achieved and the
number of inner and outer iterations is within the maximums, this value can be
decreased by an order of magnitude.
Residual criterion (RCLOSE): RCLOSE is the residual convergence criterion for the
inner iteration. The PCG algorithm computes the l2-norm of the residual and compares
it against RCLOSE Typically, RCLOSE is set to the same value as HCLOSE (see
below). If RCLOSE is set too high, then additional outer iterations may be required due
to the linear equation not being solved with sufficient accuracy. On the other hand, a too
restrictive setting for RCLOSE for nonlinear problems may force an unnecessarily
accurate linear solution. This may be alleviated with the IITER parameter or with
damping.
Relaxation parameter (RELAX): The RELAX parameter can be used to improve the
spectral condition number of the ILU preconditioned system. The value of RELAX
should be approximately one. However, the relaxation parameter can cause the
factorization to break down. If this happens, then the GMG solver will report an
assembly error and a value smaller than one for RELAX should be tried. This item is
read only if ISC = 4.
Upper bound of estimate (NPBOL): IOUTGMG is a flag that controls the output of the
GMG solver. The possible values of IOUTGMG and their meanings are as follows: If
IOUTGMG = 0, then only the solver inputs are printed. If IOUTGMG = 1, then for each
linear solve, the number of PCG iterations, the value of the damping parameter, the l2-
norm of the residual, and the max-norm of the head change and its location (column,
row, layer) are printed. At the end of a time/stress period, the total number of GMG
calls, PCG iterations, and a running total of PCG iterations for all time/stress periods
are printed. If IOUTGMG = 2, then the convergence history of the PCG iteration is
printed, showing the l2-norm of the residual and the convergence factor for each
iteration. IOUTGMG = 3 is the same as IOUTGMG = 1 except output is sent to the
terminal instead of the MF2K LIST output file. IOUTGMG = 4 is the same as IOUTGMG
= 2 except output is sent to the terminal instead of the MF2K LIST output file.
Multigrid Preconditioner (ISM): ISM is a flag that controls the type of smoother used in
the multigrid preconditioner. The possible values for ISM and their meanings are as
follows: If ISM = 0, then ILU(0) smoothing is implemented in the multigrid
preconditioner. This smoothing requires an additional vector on each multigrid level to
store the pivots in the ILU factorization. If ISM = 1, then Symmetric Gauss Seidel (SGS)
smoothing is implemented in the multigrid preconditioner. No additional storage is
required for this smoother; users may want to use this option if available memory is
exceeded or nearly exceeded when using ISM = 0. Using SGS smoothing is not as
robust as ILU smoothing; additional iterations are likely to be required in reducing the
residuals. In extreme cases, the solver may fail to converge as the residuals cannot be
reduced sufficiently.
Semicoarsening Control in the Multigrid Preconditioner (ISC): A flag that controls
semicoarsening in the multigrid preconditioner. The possible values of ISC and their
meanings are given as follows: If ISC = 0, then the rows, columns and layers are all
coarsened. If ISC = 1, then the rows and columns are coarsened, but the layers are
not. If ISC = 2, then the columns and layers are coarsened, but the rows are not. If ISC
= 3, then the rows and layers are coarsened, but the columns are not. If ISC = 4, then
there is no coarsening. Typically, the value of ISC should be 0 or 1. In the case that
there are large vertical variations in the hydraulic conductivities, then a value of 1 should
be used. If no coarsening is implemented (ISC = 4), then the GMG solver is
comparable to the PCG2 ILU(0) solver described in Hill (1990) and uses the least
amount of memory.
Damping factor (DAMP): This factor allows the user to reduce (dampen) the head
change calculated during each successive outer iteration. For most "well posed" and
physically realistic groundwater flow problems, the dampening factor of one will be
appropriate. This parameter can be used to make a non-convergent (oscillating or
divergent) solution process more stable such that a solution will be achieved. This is
done by decreasing the damping factor to a value between 0 and 1 (only rarely < 0.6).
This parameter is similar to "acceleration parameters" used in other solvers
10.10.1.4.3 WHS
The WHS Solver uses a Bi-Conjugate Gradient Stabilized (Bi-CGSTAB) acceleration routine
implemented with Stone incomplete decomposition for preconditioning of the groundwater
flow partial differential equations. This solver, as all iterative solvers, approaches the solution
of a large set of partial differential equations iteratively through an approximate solution.
Because the matrix equation for groundwater flow is initially "ill-conditioned", effective pre-
conditioning of these matrices is necessary for an efficient solution.
The WHS solver works on a two-tier approach to a solution at one time step. Outer iterations
are used to vary the factorized parameter matrix in an approach toward the solution. An outer
iteration is where the hydrogeologic parameters of the flow system are updated (i.e.,
transmissivity, saturated thickness, storativity) in the factorized set of matrices. Different
levels of factorization allow these matrices to be initialized differently to increase the
efficiency of solution and model stability. Inner iterations are used to iteratively solve the
matrices created in the outer iterations.
The solver parameters for the WHS method are described below:
solution will be achieved. This is done by decreasing the damping factor to a value
between 0 and 1 (only rarely < 0.6). This parameter is similar to "acceleration
parameters" used in other solvers.
Relative Residual Criterion: [Default = 0] This parameter provides another method of
checking for convergence of the inner iteration. This method compares the residual
from the most recent inner iteration to the residual from the initial inner iteration. Once
the most recent inner iteration residual is below the initial inner iteration residual times
the relative residual criterion, the current outer iteration is completed and a new outer
iteration will be started.
Factorization Level: [Default = 0] There are two “levels” of factorization available with
the WHS solver, 0 and 1. Level 0 requires more outer iterations but less memory. Level
1 requires fewer outer iterations but more memory. While convergence of the solver
requires fewer iterations with a factorization level of 1, the memory required to run the
solver increases with this factorization level. Also, the work per iteration increases with
the level 1 factorization such that the total solution time may not be less than the
solution time using level 0 factorization.
10.10.1.4.4 SIP
The Strongly Implicit Procedure, also known as SIP, is a method for solving a large system of
simultaneous linear equations by iterations. The advantage of the SIP solver is that it is very
stable and generally converges to a solution, but often very slowly. It is not as fast as the
PCG method, but it requires less memory to compute the final solution. Because each
equation involves up to seven unknown values of head, and because the set of unknown
values changes from one equation to the next throughout the grid, the equations for the entire
grid must be solved simultaneously at each time step. This package is described in Chapter
12 of the MODFLOW manual included with your VMOD Flex media, in the Manual folder.
The solver parameters for the SIP method are described below:
Maximum Number of Iterations: [Default = 200] This is the upper limit on the number of
iterations to be performed. The maximum number of iterations will only be considered if
a convergent solution is not reached beforehand. Two hundred iterations should be
adequate for most problems. However, if the maximum number of iterations is reached
and an appropriate mass balance error is not achieved, this value should be increased.
Number of Iteration Parameters: [Default = 5] The finite difference equations describing
the groundwater flow system can be put into matrix form as [A] {h}={q}. Where [A] is
the coefficient matrix, {h} is the heads array and {q} is the flux array. The number of
iteration parameters indicates the number of parameters that will be used to transform
the initial coefficient matrix [A] to a similar matrix that can be decomposed into two
lower and upper triangular matrices [L] and [U], respectively. The default value of 5 is
generally sufficient.
Acceleration Factor: [Default = 1] The acceleration factor controls the magnitude of
head change between iterations. The acceleration factor must be positive. Values
larger than one will result in larger head changes between iterations; the solution may
be approached faster but it may also overshoot the solution more easily. Values less
than one will result in smaller head changes, requiring more iterations to reach a
solution.
Head Change Criterion for Convergence: [Default = 0.01] After each iteration is
completed, the solver checks for the maximum change in the solution at every cell. If
the maximum change in the solution is below a set convergence tolerance (set here in
the working units of feet or metres) then the solution has converged and the solver
stops, otherwise a new iteration is started. A solution accurate to 0.01 [ft. or m] will
normally be sufficient for most problems unless the maximum head change throughout
the modeled domain is smaller than one foot or metre. If an appropriate mass balance
is not achieved and the maximum number of iterations is not reached, this value can be
decreased by an order of magnitude.
Printout Interval: [Default =10] The printout interval is the number of iterations after
which the maximum head change (and residual) of the solution is written to the listing (.
LST) file.
User Seed Value: [Default = 0.01] There are two options: either the user can enter the
seed, or the seed will be calculated at the start of the simulation from problem
parameters. The iteration parameter ‘seed’ is used as a basis for determining the
sequence of w values. The w multiplies each term on the right side of the equation; and
must be cycled through a series of values in successive iterations to achieve
satisfactory rates of convergence. The more strongly diagonal the coefficient matrix,
the less important the choice of seed will be.
10.10.1.4.5 SOR
The solver parameters for the SOR method are described below:
Maximum Number of Iterations: [Default = 50] This parameter provides an upper limit
on the number of iterations to be performed. The maximum number of iterations will
only be used if a convergent solution is not reached beforehand. 50 iterations should be
adequate for most problems. However, if the maximum number of outer iterations is
reached and an appropriate mass balance error is not achieved, this value should be
increased.
Acceleration Factor: [Default = 1] The acceleration factor controls the magnitude of
head changes between iterations. The acceleration factor must be positive. Values
larger than one will result in larger head changes between iterations; the solution may
be approached faster but it may also overshoot the solution more easily. Values less
than one will result in smaller head changes, thus, requiring more iterations to reach a
solution.
Head Change Criterion for Convergence: [Default = 0.01] After each iteration is
completed, the solver checks for the maximum change in the solution at every cell. If
the maximum change in the solution is below a set convergence tolerance (set here in
the working units of feet or metres), then the solution has converged and the solver
stops, otherwise a new iteration is started. A solution accurate to 0.01 [ft. or m] will
normally be sufficient for most problems unless the maximum head change throughout
the model domain is less than 1 foot or metre. If an appropriate mass balance is not
achieved and the number of iterations is less than the maximum, this value can be
decreased by an order of magnitude.
Printout Interval: [Default =10] The printout interval is the number of iterations after
which the maximum head change (and residual) of the solution is written to the listing (.
LST) file.
10.10.1.4.6 SAMG
Visual MODFLOW supports the Algebraic Multigrid Methods for Systems Solver (SAMG)
Package developed by the Fraunhofer Institute for Algorithms and Scientific Computing (FhG-
SCAI). Please note that the SAMG solver is only available with the MODFLOW-2000,2005
and LGR flow engine.
The Algebraic Multigrid (AMG) Package solver may be obtained from the Fraunhofer Institute
for Algorithms and Scientific Computing (FhG-SCAI) for research purposes only.
The SAMG solver package is a complete multi-level framework, designed to overcome the
high memory requirements of previous AMG-based solvers, while maintaining the scalability
and rapid execution times. Testing of the SAMG solver vs. the PCG2 solver using several
models generated using Visual MODFLOW demonstrated solution times to be faster by a
factor of between 2.4 and 11.3. The SAMG Package has some distinct advantages over other
solvers available with MODFLOW for problems with large grids (more than about 40,000
cells) and/or a highly variable hydraulic-conductivity field. The advantages of multigrid
methods over the other iterative solvers mentioned are (1) the effectiveness of the multigrid
solver is not dependent on the initial head distribution, and (2) for many problems of interest,
the rate of convergence scales approximately linearly with the size of the domain, unlike the
other solvers where the rate of convergence increases nonlinearly (Demmel, 1997).
The Solver settings window contains a number of user-defined solver settings which can
influence the speed and effectiveness of the AMG solver.
Max. Iterations (MXITER): [Default = 50] MXITER is the maximum number of times that
the AMG routines will be called to obtain a solution. MXITER is never less than 2, and
rarely more than 50. MXITER often equals 2 when the problem is linear (all layers are
confined, and no boundary conditions are nonlinear; the Evapotranspiration, Drain, and
River Packages, for example, produce nonlinear boundary conditions). For nonlinear
problems, MXITER generally is 50 or less; however values near 50 and sometimes
even larger are needed for more severely nonlinear problems.
Max. Cycles (MXCYC): [Default = 50] For each call to the solver, AMG cycles through
one or more sequences of coarsening and refinement. The solver is limited to a
maximum of MXCYC cycles per call to the solver. For most problems, convergence for
each iteration is achieved in less than 50 cycles, so that generally MXCYC can be less
than 50. For highly nonlinear problems, however, better performance may be achieved
by limiting the solver to a small number of cycles, and increasing the maximum number
of iterations (MXITER). This prevents the solver from needlessly finding very accurate
solutions at early iterations of these highly nonlinear problems.
Residual Convergence Criterion (RCLOSE) for the inner iteration. Typically RCLOSE is
set to the same value as HCLOSE. If RCLOSE is set too high, then additional outer
iterations may be required due to the linear equation not being solved with sufficient
accuracy. Likewise, a too restrictive setting for RCLOSE for nonlinear problems may
force an unnecessarily accurate linear solution. This may be alleviated with the MXCYC
parameter or with damping.
Note: In the new SAMG package, RCLOSE and HCLOSE replace BCLOSE
Damping Factor (DAMP): [Default = 1] The damping factor can be used to restrict the
head change from one iteration to the next, which commonly is useful in very nonlinear
problems. DAMP makes the solution change slowly, thus avoiding spurious deviations
prompted by nonlinear effects at intermediate solutions. Values of DAMP less than 1.0
restrict the head change (under-relaxation), while values greater than 1.0 accelerate the
head change (over-relaxation). For linear problems, no damping is necessary, and
DAMP should be set equal to 1.0. For non-linear problems, restricting the head change
(DAMP < 1.0) may be necessary to achieve convergence, and values of DAMP
between 0.5 and 1.0 are generally sufficient.
For some nonlinear problems, imposing a fixed value of DAMP for every iteration can hinder
convergence. One remedy for this condition is to adjust the amount of damping depending on
how the head solution progresses. The AMG Package provides two adaptive damping
strategies; (1) Cooley’s method with Huyakorn’s modification, and (2) the relative reduced
residual method. These methods are described in detail in the U.S. Geological Open-File
Report 01-177. A DAMP value of -1 will utilize the first method, and a DAMP value of -2 will
utilize the second method.
Max. Damping Factor (DUP): [Default = 1] The upper limit for DAMP when an adaptive
damping strategy is used.
Min. Damping Factor (DLOW): [Default = 0.2] The lower limit for DAMP when an
adaptive damping strategy is used
10.10.1.4.7 NWT
The NWT Solver parameters are shown in the image below. Detailed information about
MODFLOW-NWT can be found:
http://water.usgs.gov/ogw/modflow-nwt/
VMOD Flex provides options for the most-commonly used parameters (head change
criterion, flux change criterion, number of iterations, etc.) and to choose the solver OPTIONS
(Automate Solver Options). MODFLOW-NWT provides flexibility to specify the values for
each of the parameters, or to choose from one of the pre-defined solver “schemes”. When
you select one of the pre-defined schemes, then the solver parameters are fixed and cannot
be modified (all fields will be non-visible). If choose the "SPECIFIED" option, then the full set
of solver parameters will be defined in the .NWT file (using defaults) and you will have the
ability to change these parameters in the .NWT file after Translation. When you choose one
of the pre-defined schemes (Simple, Moderate, or Complex) then you will see only an
abbreviated set of parameters.
SPECIFIED indicates that the optional solver input values listed for items 1 and 2 will be
specified in the NWT input file by the user.
SIMPLE indicates that default solver input values will be defined that work well for nearly
linear models. This would be used for models that do not include nonlinear stress
packages, and models that are either confined or consist of a single unconfined layer that is
thick enough to contain the water table within a single layer. (See Table 2 of package
documentation for the solver input values that will be used for this option.)
MODERATE indicates that default solver input values will be defined that work well for
moderately nonlinear models. This would be used for models that include nonlinear stress
packages, and models that consist of one or more unconfined layers. The “MODERATE”
option should be used when the “SIMPLE” option does not result in successful
convergence. (See Table 2 of package documentation for the solver input values that will
be used for this option.)
COMPLEX indicates that default solver input values will be defined that work well for highly
nonlinear models. This would be used for models that include nonlinear stress packages,
and models that consist of one or more unconfined layers representing complex geology
and surface water/groundwater interaction. The “COMPLEX” option should be used when
the “MODERATE” option does not result in successful convergence. (See Table 2 of
package documentation for the solver input values that will be used for this option.)
HEADTOL (units of length)—is the maximum head change between outer iterations for
FLUXTOL (units of length cubed per time)—is the maximum root-mean-squared flux
difference between outer iterations for solution of the nonlinear problem.
MAXITEROUT is the maximum number of iterations to be allowed for solution of the outer
(nonlinear) problem.
THICKFACT is the portion of the cell thickness (length) used for smoothly adjusting storage
and conductance coefficients to zero.
IBOTAV is a flag that indicates whether corrections will be made to groundwater head relative
to the cell-bottom altitude if the cell is surrounded by dewatered cells. Checked = a correction
will be made; Not-checked = no correction will be made. This input variable is problem
specific and both options (IBOTAV selected/not-selected) should be tested.
NOTE: The modification to the .WEL package for variable PHIRAMP is currently not
supported in Visual MODFLOW
10.10.1.5 Recharge and Evapotranspiration
Recharge
The Recharge zone distribution can be applied to any of the user-specified model Layers. If
the recharge is assigned to the top grid layer, and some cells in the top layer become dry
during the course of the simulation, or if some cells in the top layer are designated as no-flow
cells, the MODFLOW program allows the recharge to be applied to the grid cells in the upper
most active (wet) layer in the model. The Recharge settings are shown in the following
Recharge options window and these are described below.
Recharge is only applied to the top grid layer: If any grid cells in Layer 1 are dry, or if
they are designated as no-flow cells, the recharge values assigned to these grid cells
will NOT be carried down to the underlying active (wet) grid cells. In this case, the
inactive or dry cells act like an impermeable barrier to the recharge.
Recharge is applied to the specified layer: It allows the user to assign the recharge
values to any of the specified model layer
Recharge is applied to the uppermost active layer: If any grid cells in Layer 1 are dry, or
if they are designated as no-flow cells, the recharge values assigned to these grid cells
will be carried down to the upper most active (wet) grid cell in the same vertical column
of grid cells.
Note: A constant head boundary condition always intercepts recharge and prevents deeper
infiltration.
Evapotranspiration
The Evapotranspiration distribution can be applied to any of the user-specified model Layers.
If assigned to the top grid layer, and some cells in the top layer become dry during the course
of the simulation, or if some cells in the top layer are designated as no-flow cells, the
MODFLOW program allows the Evapotranspiration to be applied to the grid cells in the upper
most active (wet) layer in the model. The Evapotranspiration settings are shown in the
following Evapotranspiration Options window and these are described below.
Evapotranspiration is only applied to the top grid layer: If any grid cells in Layer 1 are
dry, or if they are designated as no-flow cells, the Evapotranspiration values assigned
to these grid cells will NOT be carried down to the underlying active (wet) grid cells. In
this case, the inactive or dry cells act like an impermeable barrier to the
Evapotranspiration.
Evapotranspiration is applied to the specified layer: It allows the user to assign the
Evapotranspiration values to any of the specified model layers.
Evapotranspiration is applied to the uppermost active layer: If any grid cells in Layer 1
are dry, or if they are designated as no-flow cells, the evapotranspiration values
assigned to these grid cells will be carried down to the upper most active (wet) grid cell
in the same vertical column of grid cells.
10.10.1.6 Lakes
The Layer Type Settings window is used to set the LAYCON value and the LAYAVG variables
required by the MODFLOW numeric engine.
The LAYCON value is the layer-type index array recognized by MODFLOW. MODFLOW has
four different Layer Types to choose for LAYCON values as described below:
Type 0 - Confined: Transmissivity and storage coefficients of the layer are constant for
the entire simulation.
Type 1 - Unconfined: Transmissivity of the layer varies and is calculated from the
saturated thickness and hydraulic conductivity. The storage coefficient is constant;
valid only for Layer 1.
Type 2 - Confined/Unconfined: Transmissivity of the layer is constant. The storage
coefficient may alternate between confined and unconfined values.
Type 3 - Confined/Unconfined: [Default setting] Transmissivity of the layer varies. It is
calculated from the saturated thickness and hydraulic conductivity. The storage
coefficient may alternate between confined and unconfined values. Vertical leakage
from above is limited if the aquifer becomes desaturated.
The LAYAVG value determines the method of computing interblock transmissivity.
Following are the five methods used in assigning the LAYAVG value.
The Layer column in the Layer Settings window (see following figure) is the layer number
which is automatically numbered as one row for each layer of the model grid.
The LAYCON column is the Input LAYCON value, which includes the first digit (tens) stored
as the LAYAVG value (Interblock transmissivity), and the second digit (ones) stored as the
LAYCON value (Layer type). Thus the one Input LAYCON value holds the identification for
each layer of the model grid.
The Interblock transmissivity column displays the LAYAVG value and descriptive name
associated with each layer of the model. The available LAYAVG settings can be chosen from
a picklist by clicking the down arrow key, or you can scroll through the options by clicking the
spin buttons on the left (as shown in the following figure).
The Layer type column displays the Layer Type associated with each layer of the model. The
available layer types can be chosen from a picklist by clicking the down arrow on the right, or
you can scroll through the options by clicking the spin buttons on the left.
10.10.1.8 Cell Rewetting
The original USGS MODFLOW did not allow cells in unconfined layers to become re-
saturated if the head dropped below the bottom elevation of the grid cell during the course of
the simulation or during the solution iterations. Instead, these cells were simply made inactive
for the remainder of the simulation. However, the USGS later extended the Block-Centered-
Flow package (BCF2) to allow for the rewetting of these “dry” cells during a transient
simulation. While this represented a major advancement for more accurate representations
of water table aquifers, it also causes the solution to be much more unstable in some
situations. More detailed information on the cell wetting and the BCF package can be found in
the MODFLOW Packages Reference Manual included with your Visual MODFLOW media, in
the Manual folder.
The Re-wetting settings may be accessed by selecting MODFLOW/Re-wetting from the top
menu bar of the Run section. A Dry Cell Wetting Options window will appear as shown in the
following figure, and described below.
Activate cell wetting (IWDFLG) is used to indicate if the wetting capability is active
(IWDFLG = 1) or inactive (IWDFLG = 0).
Wetting threshold is used to determine if the dry cell needs to be wetted. For a dry cell
to become wet, the head in the adjacent grid cell(s) must be greater than the elevation
of the bottom of the dry cell plus the Wetting threshold value.
Wetting interval (IWETIT) indicates how often MODFLOW attempts to wet the dry cells
detected during the course of the solution iterations. For example, if IWETIT = 2, cell
wetting would be attempted at every second iteration. If a model with dry cells is having
problems converging to a solution, it may be a result of oscillations due to drying and
re-wetting of grid cells in sensitive regions of the model. Setting a larger cell wetting
interval value may help the solution to converge, by allowing the heads in neighboring
cells to get closer to a better solution before wetting the dry cells.
Wetting Methods
The wetting of a dry cell is triggered by the head values in adjacent grid cells (see Wetting
threshold above). The Wetting method frame has two options for determining the adjacent
grid cells to use for determining whether the dry cell should be wetted.
From below (WETDRY < 0) will use only the head in the grid cell directly below the dry
cell to determine if the dry cell should be wetted. This option is generally more stable,
and is particularly good when the adjacent horizontal cells are poor indicators of
whether a cell should become wet (e.g. areas with steep vertical gradients and variable
bottom elevations).
Wet cells from side and below (WETDRY > 0) will used the head in all four adjacent
grid cells and the grid cell directly below the dry cell to determine if the dry cell should
be wetted. This option is useful in situations where a dry cell is located above a no-flow
cell, such that it cannot be re-wet from below. It is also applicable for one-layer models
where there are no cells below. However, this method can cause some problems in
multi-layer models where inactive cells occur beneath wet cells.
Wetting Head
When a dry cell is wetted, the new head may be calculated using one of two methods:
Generally, the first equation is thought to be more reasonable, since the cell’s new head is
varied according to the head in the neighboring cell, which caused it to become wet.
However, in situations where MODFLOW is over-estimating head changes during iterations,
this equation may cause non-convergence. The second equation can then be used to
attempt a more stable solution.
Each dry cell is assigned a default head value as a flag to indicate it is dry. This value is
typically a very large negative number (e.g. -1.0e30). However, the presence of large negative
head values in dry cells may cause problems for parameter estimation simulations because
this large negative value may be used to calculate the calibration residual (calculated head -
observed head) at a grid cell that has become dry during one of the PEST iterations. In this
case, it is more appropriate to assign the head value in dry cells equal to the cell bottom
elevation to avoid this problem.
When PEST runs with varied model parameters, some of these runs may produce dry cells,
and as a result MODFLOW assigns head values equal to -1.0e30 to all the dry cells. This can
cause the objective function to be skewed, and the subsequent model runs to fail to
converge. If the “Keep minimum saturated thickness for the bottom layer” option is activated
by assigning an appropriate head value to the bottom cell, MODFLOW will keep the bottom
cell saturated. It prevents the column from drying out, ensures that PEST will continue
running even though the calculated head is actually below the bottom layer of the model, and
helps with model convergence. It is recommended to not activate this option in the first run of
a model because it is important to know if the dry cells exist or not, and by preventing the
column from drying out, the model results could be misleading.
Cell re-wetting often promotes a non-converging or unstable solution, which may be indicated
by cells cycling between wet and dry. If this happens, we recommend you try the following:
Make inactive any cells that you know should never become wet.
Increase the Wetting threshold value. This makes it more difficult for a cell to be wetted,
and therefore helps stop MODFLOW from repeatedly turning a cell on and then off
again. However, the solution may become less accurate since cells that should
become wet might stay dry.
Modify the Wetting factor value. This will increase or decrease the new head in cells
which are wetted.
Change the Wetting method that controls cell wetting.
Change the Wetting head option that calculates the new head in the wetted cell.
Try using the SIP or PCG solver, and modifying the solver parameters.
For steady-state solutions, start with good initial head estimates. This will provide good
indications of which cells should be wet and dry, and therefore conversions of cells
between wet and dry will be minimized.
In VMOD Flex, the Initial Heads are defined at the stage of Defining the Properties. For more
details, please see the section Define Property Zones - Initial Heads 411
Use Specified Heads will use the values that are defined for “Initial Heads” at the Define
Properties step.
Use Ground Elevation will use the elevation values for the of layer 1.
Use Previous MODFLOW Run requires you to select a .HDS file from a previous
MODFLOW Run.
10.10.1.10Anisotropy
Anisotropy by layer
Anisotropy as specified
The Anisotropy by layer option uses the anisotropy ratio (Ky/Kx Ratio) specified for each layer
of the model (as shown in the figure), and the Kx values specified in each grid cell, to
calculate the Kx or Ky values for each grid cell. Selecting Anisotropy by layer will not replace
the original modeled values for Ky, but will instead calculate values during the translation of
Visual MODFLOW file formats to MODFLOW input data file formats to be used for the run.
By default each new simulation will be set to use the Anisotropy by layer option.
The Anisotropy as specified option will use the Kx and Ky values defined for each property
zone. This feature allows spatially variable anisotropy within a layer, as opposed to the
Anisotropy by layer option which applies a single anisotropy ratio (Ky/Kx Factor) for the entire
layer. A more in depth discussion of spatially variable anisotropy can be found in Kladias,
1997.
Note: MODFLOW 2000 does not support running the BCF package with Anisotropy as
Specified.
10.10.1.11Output Control
The Output Control run options set the information and frequency of information written and
saved to the various MODFLOW output files (see following figure).
Each MODFLOW simulation can produce three binary output files and one ASCII output file:
The binary files contain head, drawdown, and flow exchange values for each grid cell, while
the ASCII listing file contains all relevant information on the operation of MODFLOW, and the
simulation results. The listing (.LST) file is useful if errors occur during a simulation and you
want to know how far MODFLOW progressed, or if you want to examine head or drawdown
values at given intervals.
For a steady-state simulation, only one set of values for each grid cell are written to these
files. However, for transient simulations, each grid cell may contain simulation results for
each time step, resulting in file that can become unnecessarily large. By default, the
information is saved in the binary files at the end of each stress period, and at the end of the
simulation in the listing (.LST) file.
The first two columns list the available stress periods and associated time steps for the entire
simulation (only one stress period and time step will be listed for steady-state simulations).
The remaining columns indicate the information which can be written and saved to the
various MODFLOW output files. To select an output option, click in the appropriate checkbox
and a checkmark (¸) will appear to indicate that the selected information will be written for the
selected time step.
The columns labeled Save to Binary will save the output information to the binary files as
described below.
The columns labeled Print to .LST will save the output information to the listing file as
described below.
The checkbox labeled Save.FLO file will save the cell-by-cell flow terms required by MT3D,
when MT3D is not being run at the same time as MODFLOW.
For simulations with many stress periods and time steps, it can be very tedious to manually
select the desired output time step intervals. The row of fields underneath the Output Control
table are used to specify regular time step intervals for saving files during Each N-th step in
each stress period. The first text box is where the N value is entered. To apply this value to
the column, click the underlying checkbox.
If MODPATH is run with the MODFLOW simulation, Visual MODFLOW will save the flow
10.10.2 MODPATH
The MODPATH program is used for calculating the advective flow pathlines for forward
tracking and backward tracking particles. MODPATH has the following run-time settings:
Discharge Options 485 : Select the option to control the discharge of the particles at sinks.
Reference Time 486 : Set the reference time options for particle releases.
10.10.2.1 Discharge Options
The Discharge Options are used to tell MODPATH what to do with particles when they enter
a grid cell where water is leaving the system. Any grid cell where water is leaving the system
is classified as a “sink”. For example, an extraction well is a sink, or all cells in layer 1 with
evapotranspiration are sinks.
The desired Weak Sink Option may be selected from the Discharge Options window shown
in the following figure.
Recharge/EVT Options
The Recharge Options are used to define how MODPATH treats the Recharge flow entering
the system. The Recharge Options are:
Recharge flux is treated as internal sources and sinks for all cells
Recharge flux is assigned to the top face of all cells
The first option treats recharge as a distributed source entering the cell from all sides, while
the second option treats recharge as though it is entering only through the top face of the
cell.
According to the MODPATH reference manual, the distributed source approximation for areal
recharge is usually only appropriate for two-dimensional areal flow models.
The Evapotranspiration Options are the same as described for Recharge above.
10.10.2.2 Reference Time
The Reference Time is used by MODPATH as the time datum for the simulation of both
forward and backward tracking particles. This option is only applicable for transient flow
simulations.
The Release Time(s) specified for the particles, (see "Particle Release Time") will be added
to the Reference Time to determine the actual time of release for each particle.
There are two Time format options for setting the Reference time:
Prd/Stp/Rel.Tm.: Specify the Reference Time by entering the Stress Period (Prd), Time
Step (Stp), and Relative time inside step (Rel.Tm).
Absolute value: Specify the reference time as an Absolute time from the beginning of
the simulation.
Note: For backward particle tracking in transient simulations, the Reference Time cannot not
be the beginning of the simulation, because there are no simulation results before Time = 0 (i.
e., you cannot go backwards from zero). Therefore, when simulating backward particle
tracking, the Reference Time should be a time somewhere between the start and the end
times of the transient simulation.
10.10.3 MT3DMS
Visual MODFLOW Flex supports MT3DMS v.5.1. The following sections describes the
settings for adjusting the solver, advection method, output times, and miscellaneous settings.
Settings (General)
Solution Method
Output Control
10.10.3.1 MT3DMS_settings
Visual MODFLOW Flex supports MT3DMS v.5.1. The following sections describes the
settings for adjusting the solver, advection method, output times, and miscellaneous settings.
Porosity Options
The Porosity options are used to select which porosity measurement to use for the transport
solution. For advection dominated transport, the best choice is to apply the "Effective"
porosity option, then the diffusion into and out of dead-end pore spaces can be considered
negligible. For diffusion dominated transport, the best choice is to select the "Total" porosity
option to account for mass transfer to and from dead-end pore spaces.
Courant Number
The Courant number represents the number of cells a particle will be allowed to move
through in any direction, in one transport step, when the MOC, MMOC and HMOC methods
are used. Generally, the Courant Number is between 0.5 and 1.0, however, values in excess
of 1.0 can be used with caution. If the upstream finite-difference method is used, the Courant
Number must not exceed 1.0. Since the flow terms in all cells in the entire grid are checked
when determining the maximum allowable step size for particle tracking, there may be some
cells outside the area of interest with high flow rates. The high flow rates in these cells will
control the time step calculation in MT3D. In this situation, setting the Courant Number
greater than 1 will not affect the accuracy of the simulation.
10.10.3.2 MT3DMS_solution_method
Select the solution method used to solve the advection-dispersion transport equation.
For numerical solution of the advection-dispersion transport equation, MT3D based transport
engines provide the following Solution Methods:
NOTE: The Particle-tracking based Eulerian-Lagrangian methods (MOC, MMOC, and HMOC)
are currently not available in Visual MODFLOW Flex.
No single solution method has been shown to be effective for all transport conditions. The
combination of these solution methods, each having its own strengths and limitations, is
believed to offer the best approach for solving the most wide-ranging transport problems with
desired efficiency and accuracy. A brief description of all the above solution methods, and
their advantages and disadvantages, is available below. Further, Zheng and Bennett (1995)
provides an introduction to all these solution methods, and a discussion and comparison of
their relative strengths and limitations with emphasis on their implications in solving practical
problems.
MT3DMS is a transport model for simulating advection, dispersion, and chemical reactions of
contaminants in groundwater flow systems. It solves the transport equation after the flow
solution has been obtained from groundwater flow model (MODFLOW). The general
advective-dispersive equation describing the fate and transport of contaminant of species k in
three-dimensional transient groundwater flow systems is:
where
Ck is
the dissolved concentration of species k
is
the porosity of the subsurface medium
t is
time
xi is
the distance along the respective Cartesian co-ordinate axis
Dij is
the hydrodynamic dispersion coefficient tensor
vi is the seepage or linear pore water velocity. It is related to the specific
discharge or Darcy flux through the relationship,
qs is the volumetric flow rate per unit volume of aquifer representing fluid sources
(positive) and sinks (negative)
is the concentration of the source or sink flux for species k
is the chemical reaction term.
All the solution methods listed above treat the dispersion, sink/source, and reaction terms in
exactly the same fashion, using the block-centered finite-difference method, either explicit or
implicit in time-weighting. They differ, however, in the way the advection term is solved. For
instance:
When the particle-based methods (MOC, MMOC, and HMOC) or the TVD method are
selected to simulate solute transport, the transport equation is split into two parts. On the
left-hand side are the mass accumulation term and the advection term (in fluid mechanics
literature, the sum of these two has been referred to as the total derivative of the
concentration with respect to time, Dc/Dt). On the right-hand side, the dispersion, reaction,
and sink/source terms are represented with finite-difference approximation.
When the finite-difference methods (UFD, CFD) are used, all terms in the governing
equation are treated simultaneously, with all advection, dispersion, reactions, and sink/
source terms represented with finite-difference approximations. The finite-difference
solution is explicit or implicit-in-time weighting, depending on whether the Generalized
Conjugate Gradient Solver (GCG) package is selected or not.
Solution Method
Upstream Finite Difference Method (UFD): The Upstream Finite Difference method is
available in all MT3D versions. Since, the finite-difference method does not involve particle
tracking or concentration interpolations, it is normally more computationally efficient than the
Method of Characteristics (MOC). In addition, the finite difference method normally has very
small mass balance errors because it is based on the principle of mass conservation.
However, the Upstream Finite-Difference method can lead to significant numerical dispersion
for problems having sharp concentration fronts.
Central Finite Difference Method (CFD): The Central Finite Difference method is only
available in MT3DMS, MT3D99, and RT3Dv.2.5. The central finite difference method does not
exhibit the numerical dispersion problems like the Upstream Finite Difference method, but is
susceptible to excessive artificial oscillations in advection dominated problems.
Note: Modifying the default parameter settings for each Solution method requires some
understanding of the techniques used to solve the advection-dispersion component of the
transport equation. For more details, refer to the MT3DMS User’s manual.
If the GCG solver is not included, then all terms are represented with explicit-in-time weighted
finite-difference approximations.
When the GCG Solver is included, during translation the GCG package file (projectname.
GCG) will be created in the model run directory.
Maximum number of outer iterations (MXITER) [Default = 1]: The outer loop in the iteration
process updates all the coefficients that are concentration-dependent. The default number of
outer iterations is one. It should be set to an integer greater than one only when a non-linear
sorption isotherm is included in simulation. For further detail please refer to page 4-19 in the
MT3DMS Documentation and User’s Guide.
Maximum number of inner iterations (ITER1) [Default = 50]: The inner loop in the iteration
process continues to iterate toward the solution until the convergence criterion is obtained or
the maximum number of inner iterations is reached. During these iterations, the coefficient
matrix and the right hand side vector matrix remain unchanged. The default number of inner
iterations is fifty. A maximum value of thirty to fifty inner iterations should be sufficient for most
problems. For further details please refer to page 4-19 in the MT3DMS Documentation and
User’s Guide.
The Relative convergence criterion (CCLOSE) [Default = 10-4]: is used to judge the
convergence, in terms of relative concentration, of the inner iterations of the solver. The
default value is 10-4. A value between 10-4 and 10-6 is generally adequate.
The Concentration change printing interval (IPRGCG) [Default = 0]: is the interval for printing
the maximum concentration changes of each iteration. The default is 0 for printing at the end
of each stress period.
Preconditioners
The GCG Solver implicitly solves the non-advective terms in the transport equation using a
two-iteration loop process and the choice between three pre-conditioning options:
Jacobi (ISOLVE=1)
SSOR (ISOLVE=2)
Modified Incomplete Cholesky (ISOLVE=3)
The Modified Incomplete Cholesky method usually converges faster than the other two
method options, but it requires significantly more memory. If SSOR is chosen, you must
specify a relaxation factor.
NOTE: If the implicit solver is not selected, then this value will be ignored and the value for
DT0 will be taken from the Output Control settings.
Multiplier (TTSMULT)
[Default = 1]: This is the multiplier used to calculate the size of the next transport time step
when the finite difference method is used with the implicit GCG solver. A value between 1 and
2 is generally adequate. Using a time step multiplier will degrade the solution at later times
when the timestep becomes large, but can significantly decrease the amount of time needed
for the solution. If one of the particle-based methods or the TVD method is used, this value
will be ignored.
10.10.3.2.1 Technical Review
1. When the "pure" finite difference methods are used (FD), all terms in the governing
equation are treated simultaneously, with advection, dispersion, reactions, and source-sink
mixing terms represented with finite-difference approximations.
2. When the operator-splitting methods are used to simulate solute transport, the governing
equation is split into two parts. On the left-hand side are the mass accumulation term and
the advection term (in the fluid mechanics literature, the sum of these two is referred to as
the total derivative of the concentration with respect to time, Dc/Dt). On the right-hand side,
the dispersion, reactions, and source-sink mixing terms are represented with finite-
difference approximations. The operator-splitting techniques implemented in MT3D are the
particle-based methods (MOC, MMOC and HMOC) and a 3rd-order TVD method.
limited to 1.0. As a simulation proceeds and the concentration gradients diminish, this
requirement may be relaxed.
A potential source of confusion to MT3D users is the apparent absence of a switch for
specifying explicit or implicit time weighting. It turns out that this switch is 'implied'. When the
user specifies that the GCG Solver Package is to be included in a simulation, the user is
telling MT3D to do the following:
1. When the "pure" finite difference methods are used (FD), all terms in the governing
equation are represented with implicit-in-time weighted finite-difference approximations.
2. When the particle-based methods (MOC, MMOC and HMOC) and the TVD method are
used to simulate solute transport, the terms on the right-hand side are represented with
implicit-in-time weighted finite-difference approximations. At the risk of confusing the issue,
I should add at this point that the TVD algorithm implemented in MT3D is explicit-in-time.
This means that even if the GCG Package is used, the times steps in TVD run will be still
be subject to a time constraint - but only the advection term.
If the user does not specify the use of the GCG package, then all terms are represented with
explicit-in-time weighted finite-difference.
10.10.3.3 MT3DMS_Output_Control
The Output Settings and Output Times settings are used to define the length of the transport
simulation and the times at which the results will be saved to the binary concentration file (.
UCN).
Simulation time is the total length of the transport simulation in the specified time units. This
must be greater than zero.
Max # of transport steps is the maximum number of transport steps for the simulation. Once
the simulation has run through the specified Max # of transport steps the model will stop. This
parameter is primarily used to limit the size of the output files generated.
Specify max stepsize sets the maximum step size to use for each transport time step. MT3D
will use the smaller of: the internally calculated maximum timestep size based on the courant
number, or the maximum timestep size specified here. If the implicit GCG solver is used, this
value is ignored and the value found in the GCG Solver options is used instead.
Save concentration at observation point for every Nth time step allows to filter the amount of
observation data that is saved to the .OBS file; ideal for transient runs with large output files
Save one-line summary of mass budget for every Nth time step allows to filter the amount of
mass budget data that is saved to the .MAS file; ideal for transient runs with large output files
The Save .CBM/.CCM file option must be checked if you want Mass Balance output to be
saved (for example, to generate Zone Budget-Transport data).
Output Times
In the grid shown below, you can enter the output times for which you want MT3DMS to save
during the run. The simulation results are saved in the MT3D output *.OT file.
The toolbar above this grid provides the following options (from left to right)
Add row to the grid
Delete selected row(s)
Copy selected rows to clipboard
Paste from clipboard: ideal if you have times defined in a column in an Excel spreadsheet,
One of the benefits of Visual MODFLOW is the integration of all of the numeric engines
including:
To run a simulation with any or all of the above numeric engines, be sure to select Run from
the top menu bar of the Run section and the Engines to Run window will appear as shown in
the following figure.
The Engine column lists the available numeric engines, and the Run column indicates which
numeric engines will be run during the simulation. Any or all of the available numeric engines
can be run for the simulation provided the required data files are present in the model project
folder.
The MODFLOW engine can be run by itself without any requirements from any of the other
engines.
The MODPATH engine requires a valid .BGT file to be present in the project folder. This file
will be automatically created if MODFLOW and MODPATH are mutually selected.
The Zone Budget engine requires a valid .BGT file to be present in the project folder. This file
will be automatically created if MODFLOW and Zone Budget are mutually selected.
The button will run the selected numeric engines using the required (translated)
data files already present in the project folder. If the required files are not present in the
project folder, the numeric engines will not run. A warning message will appear indicating that
the Visual MODFLOW files will not be translated prior to running the model.
When the run completes, the Heads and Drawdown nodes will be added to the Output folder
on the model tree.
Maps contains contours and color shading of heads and drawdown, and also contains
MODPATH results if MODPATH was included with the model run.
At the View Maps step, you can view contours and color shading of the flow and transport
results.
By default, you will see color shading and contours of the calculated heads, in layer view. You
can display heads along a row, and along a column, and in 3D, using the same tools as you
used earlier.
If your model is transient, use the time controls above the Flex Viewer to change the output
time; as you do this, all active viewers (layer, row, column, 3D), will refresh to show the
heads for the new output time.
The display settings (color classes, contour line intervals, etc.) for the Layer, Cross-section,
or 3D views can be adjusted in the Style settings. To load these settings, right click on Heads
from the Model Explorer, and select "Settings". For more details on these settings, see
Settings: 3D Gridded Data 269
Flux
Cell-by-cell flows read from the MODFLOW .BGT file can be viewed in a stand-alone 3D
viewer. Once displayed in the viewer, load the Style settings for Flux, and choose the desired
display type (Cells is turned on by default). Under the Colors panel (shown below), you can
select from various Flux attributes:
XFlux: lateral flux into the cell from the right and left face (adjacent columns)
YFlux: lateral flux into the cell from the front and rear face (adjacent rows)
ZFlux: vertical flux into the cell from cells in the upper and lower layer face (adjacent layers)
ModuleFlux: absolute value of the flux for that cell
InFlowRate (Flow In): total amount of flux into that cell. Calculated as follows:
OutFlowRate (Flow Out): total amount of flux out of that cell. Is calculated as follows:
Where H(x) is a known Heaviside Step Function; for more details on this function, see:
http://mathworld.wolfram.com/HeavisideStepFunction.html
Water Table
This is the elevation where the calculated head value is equal to the Water table elevation
(pressure head equals zero). In 2D (Layer) and 3D views, the Water table is displayed as a
surface object, and as such has style settings similar to Surfaces (for more details on these
options, see Style Settings: Surfaces 266 . In 2D cross-sectional view (by row or column), the
water table is drawn as a solid line. On the toolbar above the view, you have an option to
control how the line is calculated and displayed.
Smooth WTL (Water Table Line): the line is smoothed (interpolated) between each grid cell.
Since the line is interpolated, this is an approximation.
Discrete WTL (Water Table Line): the line is drawn as piecewise constant, with a flat line
drawn across each grid cell at the elevation corresponding to the water table. This option
better reflects the actual output data and the MODFLOW grid cell geometry.
If your model is Transient, you can adjust the output time as explained above, and the Water
table display will update to reflect the new values for that output time.
Export
The water table data can also be exported to .CSV file for further post-processing. Right-click
on Water Table from the Model Explorer and select "Export..."
Pathlines
If you ran MODPATH, you will see Pathlines appear as a new node in the tree under
Output (circled below); add a check box beside the Pathlines to display these in the
active 2D/3D Viewers
Concentrations
If you ran MT3DMS, you will also see output nodes for Concentration (one for each
species). Only one 3D Gridded results can be shown in a 2D viewer at a given time,
so in order to view Concentrations, you need to first turn off Heads or Drawdown from
the model tree. (Note: the 3D viewer supports displaying multiple 3D Gridded results
simultaneously; just create a new 3D viewer (Window / 3D Window from the main
menu bar).
The style settings of either the 2D or 3D views can be adjusted (note, each one must be
defined independently)
First make the desired property group selected and visible in the Flex Viewer.
The 2D Colors and Contour line settings can be adjusted. For more details, see Color and
Contour settings 266
The pathlines delineate the flow path and travel time of groundwater particles due to advective
groundwater flow (as calculated by MODPATH). The Pathlines Map is a little different from
the other map types because it does not simply represent a “snap-shot” in time. Pathlines
represent a historical travel log of the groundwater particles. Forward tracking pathlines are
used to predict where groundwater is flowing, and how long it will take to reach a given
location if it starts from a known location at a known time. Backward tracking pathlines are
used to predict where groundwater at a given location and time is coming from, and how long
it took to get there.
The "Pathlines Options" can be launched by right-clicking on Pathlines from the model
explorer, and selecting "Pathline Options". The following window will appear (note that
forward and backward pathlines can each have their own settings defined in the Options
window.
The Tracking time frame is used to select either Steady state pathlines (for all times), or to
specify a maximum Travel time for all pathlines.
The Time markers frame is used to hide/show the pathline time markers (using the Visible
checkbox), and to select the time intervals for each time marker. The Time markers can be
plotted at Regular time intervals, or at Custom intervals selected by the user.
The pathline color and thickness can be adjusted in the Settings window; right click on the
Pathlines object from the model explorer and select Settings.
Export
Pathline and time markers can be exported to shapefiles for further analysis; right click on the
Forward or Backward Pathlines on the model explorer, and choose Export. A points
shapefile will be created for the time markers, and a polyline shapefile will be created for the
pathlines. The exported files will utilize the pathline options you have currently defined in the
view for the tracking time and time marker frequency.
10.12.3 Charts
In VMOD Flex, you can view time series and calibration (observed vs. calculated) charts.
Click on View Charts from the workflow tree, and the following window will appear:
Flow
To the left of the chart window, you can choose what observation data to view; select
individual wells, or see wells that belong to a specific group. After making a change to
the well(s) selection, click on the [Apply] button to update the chart.
Time Series
In the Charts toolbox, under Chart Type, select Time Series, and the following window will
appear:
Mass Balance
Click on the Mass Balance button to launch Mass Balance charts
The features of the Mass Balance graphs are described in the VMOD Classic Interface
documentation. Please see section 9.3.3 (Mass Balance Graphs)
Zone Budget
Click on the Zone Budget button to launch Zone Budget charts; this option is only available if
you have run Zone Budget (see Select Engines 459 for more details)
The features of the Zone Budget graphs are described in the VMOD Classic Interface
documentation. Please see section 9.3.4 (Zone Budget Graphs)
Transport
If your model included a transport run, you need to choose what chart types to view; at the top
of the View Charts window, select "Transport" from the Parameter combo box.
To the left of the chart window, you can choose what observation data to view; select
individual wells, or see wells that belong to a specific group. After making a change to the
well(s) selection, click on the [Apply] button to update the chart.
Time Series
To the left of the chart window, you can choose what observation data to view; select
individual wells, or see wells that belong to a specific group. After making a change to the
well(s) selection, click on the [Apply] button to update the chart.
Export
Chart data can be exported to .CSV file, for further analysis (with Excel or other charting
programs)
Just select the Export button from the toolbar when you are viewing either Calc. vs.
Observed, or Time Series charts, for either Flow or Transport runs. All calibration data will be
exported to the CSV file (not just the selections you have defined in the Chart toolbox).
10.12.4 Compare Heads and Drawdown
VMOD Flex allows you to compare Heads or Drawdown between several model runs. This is
useful to determining differences in pre and post pumping heads or comparing impacts to
heads or drawdown when adjusting property or boundary condition parameters.
Right-click on the Heads node of any model run, and select the "Compare" option. The
following dialog will appear
The same option is available for Drawdown. Just launch `Compare` from the Drawdown
node on the Output model tree, and choose the Drawdown from another model run, or a .
DDN file from the hard disk.
Limitations:
The comparison calculation has the following assumptions: Both models must have:
The same start date (as defined in the Conceptual Model settings)
The same stress periods
Spatial coverage: (XY extents)
Angle of rotation
In VMOD Flex, a numerical model run can be duplicated or `cloned` and managed and
modified in a single project. This facilitates an iterative approach to modeling by allowing you
to adjust a few input parameters, translate and run, and interpret the results. You can also
After this the model tree will be duplicated and added under the selected numerical grid; a
new Numerical Model workflow will then load where you can work with this model run clone.
The Workflow and Model Explorer are closely associated; as you progress through a specific
numerical model workflow, the items you see in the Flex Viewer originate from the
corresponding Run folder on the Model Explorer. For example, if you are working a clone of a
model run, eg. Run2, and you are viewing boundary condition cells, you will see these
originate from the After this the model tree will be duplicated and added under the selected
numerical grid; a new Numerical Model workflow will then load where you can work with this
model run clone.
10.14 Export
VMOD Flex allows you to export some raw data and most of the numerical model inputs and
outputs to shapefiles for external analysis.
From the Data Explorer, right-click on the desired data object, and select Export from
the pop-up menu.
A Save As dialog box will display on your screen
Specify a file Name and Folder location, and the File Type for the exported file, and then
click the [Save] button.
Click the [OK] button from the Export dialog box.
Export to points or polygon shapefile is currently available for the following:
Numerical Grid
Properties: Conductivity, Storativity, Initial Heads
Boundaries: All types including wells
Heads
Drawdown
To export, right click on the desired item on the model explorer (eg. Conductivity), and select
Export.... as shown below.
The following dialog will appear; note at the bottom you have the option to choose Points
Shapefile or Polygon Shapefile format.
Click OK. Depending on the type of data, you may have additional settings. The following
options are available for Properties:
Choose which attributes you want to be generated and what layers should be included.
Choose which attributes you want to be generated and what layers should be included.
If your model has transient heads, you have an option to include Heads from multiple times
as separate attributes in the shapefile .DBF file. Choose specific times or `Select Heads at All
Times` to include all heads.
Notations
There are some restrictions on attribute names in DBF files; the length is restricted to 10
characters, and certain characters cannot be used, including decimal (.), hyphens (-), and
plus sign (+). As such, VMOD Flex uses the following notation:
For transient heads, the attribute name notation is HT (head at time) followed by the time
value.
An underscore is used in place of a decimal
For example,
The numerical modeling workflow provides the tools for viewing and editing the numerical
model (properties and boundaries assigned to grid cells), creating the input files for
MODFLOW-USG, running the MODFLOW-USG engine, and analyzing the results. The
following sections are covered:
4. Translate 529
For more details on how MODFLOW-USG differs from traditional versions of MODFLOW,
please see our website
For more details on MODFLOW-USG, and the formats for the packages, please see the
USGS website
For a saturated groundwater flow model, there are three parameter groups: Conductivity,
Storage, and Initial Heads. By default, hydraulic conductivity will be displayed, and rendered
by the ZoneID. In order to see another parameter group, you need to turn off (remove the
check box beside) Conductivity from the tree, and turn on (place a check box beside) the new
desired parameter group (eg. Initial Heads).
Conductivity, Storage, and InitialHeads are their own data object on the model tree. You can
right click on each one to load the Settings (adjust appearance) and Edit parameter values for
individual cells, or a group of cells. This is explained in the following sections.
Display Settings
Most of the display settings for a 3D UnStructured grid for properties are the same as what
you have for a 3D Structured (Finite Difference) grid; these are explained in the settings
section, see 3D Gridded Data 269
For Slice, the slice position for cross-sectional slices is based on a virtual grid; the
UnStructured grid is divided into 100 equally spaced rows and columns. You can display
cross-sections through the USG, as "rows" or "columns", at positions from 1 - 100. Row 1
corresponds to the Y minimum in your model domain, whereas Row 100 corresponds to
the Y maximum in your model domain. Column 1 corresponds to the X minimum in your
model domain, whereas Column 100 corresponds to the X maximum in your model
domain. The layer convention follows the MODFLOW notation, where Layer 1 is at the
top.
For Colormap, the positions are similar as to what you have for Slice described above. The
option to display colormap along an arbitrary Cross-section line is currently not supported.
For Colormap, there is an additional Slice Type, "Horizontal", which allows for rendering on
a flat horizontal plane. In this case, you define the vertical position (shift) of this Horizontal
plane, on a location from 1 - 100. Vertical Shift of 1 corresponds to the Z minimum in your
model domain, whereas a shift of 100 corresponds to the Z maximum in your model
domain. Only active cells in the model domain will be drawn.
For Isolines (contour lines), the settings for selecting the plane for drawing the isolines are
similar to described for Colormap above.
Edit Attributes
For a selected parameter group, you can edit the parameter values in a .CSV file; this
provides the ability to edit individual cells or an entire group of cells.
To load the list of parameter values for all cells, right-click on the desired Property parameter
group (data object) from the model tree, and select "Edit Property Zone". The .CSV file will
load using the default editor on your computer (for most cases, this will be Excel, but it may
also include text editors). A .CSV file will load as shown below.
The format of this file is pretty simple: each row corresponds to a specific CellID, and for
each you will see the property zone that it belongs to, and the corresponding parameter
values. When making edits to this file, do not rename the column headers, or change any of
the CellIDs in the first column. You can change the zone to which a cell belongs, and also
adjust parameter values.
Other guidelines
ZoneID must be an integer
Parameter values should follow the MODFLOW requirements (eg. Kx must be greater than
0, Porosity must be 0 < 1, etc.
Do not add or remove any rows to this file; each cell will have a Zone assigned to it (either
one you created or the default zone values).
If you adjust the sorting or order of the rows (or apply filters in Excel), you need to undo these
style changes and restore the file back to its original appearance once you are finished with
the edits.
When you are done with the .CSV file, save the changes and close the file. If you are using
Excel as your .CSV editor, you may encounter the following warning when saving. Click Yes
to continue.
The file will then be saved. Upon exiting MS Excel, you may get prompted again to Save the
file; since the file was already saved, it is not necessary to save again, so just click "Don't
Save"
Export
Any of the model properties can be exported to shapefile for further post-processing; see
Export 515 for more details.
The other major differences lie in the way boundary condition cells are identified. With
Structured MODFLOW (-2005, etc.), boundary condition cells are identified by row, column,
layer, in their respective packages (.RIV, .WEL, .GHB, etc.). With MODFLOW-USG, cells are
identified by a CellID; after that, the parameters remain the same as what you see for
Structured MODFLOW.
The CellD label for boundary condition cells can be turned on as described below.
Display Settings
The display settings can be launched by right-clicking on the desired object in the model tree,
Boundary Condition cells can be drawn as Points (vertices) or following the cell geometry
(Cells)
When selecting the Cells option, you will see the option "Show Cell ID labels"; turning this on
will draw the Cell ID on top of the selected boundary condition cell type. This is useful if you
wish to make edits to specific boundary condition attributes, as explained in the following
section.
Edit Attributes
For a selected boundary condition parameter group, you can edit the parameter values in a .
CSV file; this provides the ability to edit individual cells or an entire group of cells.
To load the list of parameter values for all cells, right-click on the desired Boundary Condition
cell group from the model tree, and select "Edit Attributes...". The .CSV file will load using the
default editor on your computer (for most cases, this will be Excel, but it may also include text
editors). A .CSV file will load as shown below.
In the example above, there are 4 stress periods (indicated by t4); for a specific well cell (let's
pick the first one, 5641), there are two rows in the .CSV file, since you can edit the _RATE
field and _ACTIVE field for each stress period.
The number of fields in the file will change based on the selected boundary condition type. An
example for River boundaries, with the fields _Stage, _Rbot, _Cond, is shown below:
While you are editing the attribute values, you can use the "Show CellID labels" option for the
selected group of boundary condition cells (as described in the Display Settings above), to
help you identify the spatial location of a cell that you are editing. An example is shown
below, for river cell ID = 133, and the corresponding field values in the .CSV.
The following "edits" are possible when adjusting the .CSV file:
Add or Remove stress periods; simply add/remove the desired columns, then be sure to
define an end time, and valid parameter values for all cells.
Edit the end time for existing stress periods
Add or remove cells from the selected BC Cell zone. (add/remove the desired rows, then
enter field values accordingly)
When you are done with the .CSV file, save the changes and close the file. If you are using
Excel as your .CSV editor, you may encounter the following warning when saving. Click Yes
to continue.
The file will then be saved. Upon exiting MS Excel, you may get prompted again to Save the
file; since the file was already saved, it is not necessary to save again, so just click "Don't
Save"
First, import the observation well data as described in the Import Wells 192 section.
The observation well data can be viewed/edited in the Data Table 241 section.
Once you have the head observation data defined, navigate to the Define Observations step
in the USG numerical model workflow.
Above the 3D Viewer, you will see the insert blue arrow; select your Head Observation Wells
data object from the data explorer and click on the button. The observation wells should
then appear in the 3D view as green points, and will also appear as a new node on the
numerical model tree.
The vertical position of the head observation will be determined by the Elevation value of the
Head Observation point defined in the Wells Data Table 241 .
If you need to make changes to the head observation data (including add/removing wells, or
editing existing values), you will need to Delete the Head Observations object from the Model
Explorer, then re-add in the updated Head Observations object as explained above. After
this, you need to re-translate and run MODFLOW-USG, in order to see the updated values on
the charts.
The settings for some of the other packages can be adjusted as per the following sections.
For any specific package
For more details, please refer to "MODFLOW-USG Version 1.1: Description of Model Input
and Output"
This is available from the USGS website: http://water.usgs.gov/ogw/mfusg/
Layer Types
By default, the layer type is set as 4, for both the .BCF and .LPF packages. The layer types
can be adjusted at the top of each respective package.
Time Steps
The number of time steps for each stress period is defined at the end of the .DISU package;
simply open this tab, change the desired value, save the package, then proceed with the run.
Output Control
The OC package for MODFLOW-USG uses text keywords, make it simpler to understand the
file format. By default, heads and drawdown will be saved for every time step, up to 10 time
steps per stress period. If you change the number of time steps, then you may need to
update the Output control, to save heads/drawdowns at the desired time steps
SMS Package
The parameters for the .SMS package are described in the MODFLOW-USG manual, and in
the "MODFLOW-USG Version 1.1: Description of Model Input and Output"
Simply adjust the desired parameter values, then right-click in the window to save and update
the package file, then proceed to the run.
Initial Heads
Initial Head values are saved in the .BAS package; if you want to use a Heads file from a
previous MODFLOW-USG run, you can update the .BAS file with the link as shown below.
6. Delete this line, and all rows after this line (containing the default initial head arrays).
7. Insert the following line:
OPEN/CLOSE 'D:\project_directory\project.data\MODFLOW\UnstructuredGrid2\Run1\MODFLOW-
USG\initial-heads.HDS' 1 (BINARY) -1
Where the path is the precise location of the .HDS file from the previous MODFLOW-USG
run, that you wish to use.
The order in which cells are numbered for UnStructured grids is as follow.
1. CellID 1 starts on the model boundary (polygon), in the upper-left corner. Cells are then
numbered for all vertices on this model boundary polygon, going in a counter-clockwise
direction
2. After this, the add-ins are numbered, starting with polylines, polygons. Vertices are the
shapes are numbered based on their order, then points are included.
3. After this, the remaining cells are numbered, filling in the gaps, starting with layer 1, and
working downwards.
Heads and Drawdown display settings are identical to those that you have for Property zone
objects, as described in USG: View and Edit Properties 520
For transient model runs, in order to display Heads or Drawdown at different output times,
you need to adjust the Time in the Settings.
The main window will contain a list of output times, as specified in the MODFLOW Output
Control file.
Select the desired time from this window, then click Apply, and the 3D display will update to
show the calculated heads (or drawdown) from that time step.
VMOD Flex will now calculate the water table following a MODFLOW-USG run; simply turn
on this data object from the Model Explorer under the Output node, and this will appear as a
Surface in the 3D viewer; this Water Table has style settings similar to surface for controlling
the color classes and contour lines.
Export
Heads and Drawdown can also be exported to point or polygon shapefile, along with the
attributes. The options are similar to what is described for Structured MODFLOW models;
see Export 515 for more details.
The Water Table data can also be exported to .CSV file for further post-processing. Right-
click on Water Table from the Model Explorer and select "Export..."
Note
You must have a license of Pro or Premium in
order to use the PEST module in VMOD Flex.
Visual MODFLOW supports both the Calibration and Predictive Analysis capabilities of the
PEST program, and it allows you to run parameter estimation using results from both
groundwater flow and contaminant transport simulations (i.e. observations can consist of
heads, concentrations, and groundwater flux). (support for transport, MT3D, will be added in
future releases)
Acknowledgements:
Excerpts from the following publications are used throughout this documentation:
Using Pilot Points to Calibrate a MODFLOW/MT3D Model", by John Doherty Watermark
Numerical Computing
PEST: Model-Independent Parameter Estimation, User Manual: 5th Edition
Addendum to the PEST Manual, June 2012
www.PESTHomepage.org
Suggested References:
Approaches to Highly Parameterized Inversion: a Guide to Using PEST for Model Parameter
and Predictive Uncertainty Analysis"
http://pubs.usgs.gov/sir/2010/5211//
Approaches to Highly Parameterized Inversion: Pilot Point Theory, Guidelines and Research
Directions
http://pubs.usgs.gov/sir/2010/5168/
Before attempting to run a parameter estimation simulation, make sure your model meets the
following requirements:
The model runs successfully (converges) and produces meaningful results. The model
should provide a solution under a variety of input parameter conditions. Parameter
estimation is as much an art as it is a science, and therefore, it should only be used to
complement your own efforts in understanding the system.
The model has one or more (preferably many more) observations against which to
compare the calculated results. Observations can be in the form of measured or estimated
values of head or concentration at discrete points in the model, or in the form of measured
or estimated groundwater fluxes into (or out of) one or more grid cells.
It is also recommended that you do a sensitivity analysis prior to a full-fledged PEST run. In
a sensitivity analysis, parameter values are individually changed to determine the effect on
model calibration and prediction. The results give an indication of which parameter changes
can have significant impact on the model results (these are sensitive parameters) and
which parameter changes have little or no impact on the model results (these are non-
sensitive or insensitive parameters). This should help you to property select parameters to
include in a PEST run, as you should focus more on the sensitive parameters, and less on
the non-sensitive parameters.
The observation times (for heads) lie within the start/stop time of the numerical simulation.
If you have imported a model from Visual MODFLOW Classic, ensure that an appropriate
start date was defined in Visual MODFLOW Classic before loading the project into VMOD
Flex. If you have generated the numerical model from a conceptual model workflow, ensure
that the start date at the modeling objectives is appropriate based on the head observation
times you have defined.
PEST requires several inputs and a number of steps that must be completed in a specific
order. Fortunately, VMOD Flex provides the PEST GUI in a workflow, that guides you
through the sequential steps and necessary inputs, running PEST, and analyzing the results.
ri = (Xcalc-Xobs)
In the case of a groundwater model, these system responses are typically head at a point in
space, concentration at a point in space, or groundwater flow to a specified zone.
At the Define Observations step, you will see a list of all your available head observations as
shown in the following figure:
The observation values are assigned a default weight of 1.0, which means the residual will
not be modified.
The weight factor is commonly used to normalize observations of different types. For
example, when you have head and flux observations included in the same PEST run, the flux
residuals are typically much higher than a head residual. For example:
a flux residual for a set of cells could be +/- 1000 m3/day
a head residual at a single cell is +/- 1m.
PEST calculates the objective function by summing the squares of these residuals, which
results in flux observation residuals being several orders of magnitude greater than the head
residuals. As a result, PEST will focus more on minimizing the flux residuals, and less so on
the head residuals, which is most likely undesired from the modeler's view point.
We use a weight less than 1.0 to reduce the magnitude of flux errors so they are comparable
to head errors. A similar problem is often seen with concentration targets, for the same
reason. The ability to use weights to address a variety of common calibration issues makes
the objective more useful.
Settings
If you click on the [Setting] button above the Observations grid, you can adjust the Time
Extrapolation Limit; this value is used by PEST to search for the nearest observation time for
comparing to calculated MODFLOW output times. The higher the value, the more likelihood
that an observation time can be found to match the MODFLOW output times. The default is
100 (in the project time units).
Parameter Settings
In the table at the top of the window, select which parameter(s) you want to include; VMOD
Flex currently supports the following parameters:
Conductivity (Kx and Kz)
Storage (Ss and Sy) (Note: Ss and Sy should only be included in a transient MODFLOW
run)
This list of available parameters will be extended in future versions to include more
parameters from both the flow and transport models.
Select the check-box in the Use column in order to include this parameter zone.
Tied To
Tied: The parameter value is tied (linked) to the value of another parameter, in which case
this parameter takes only a limited role in the parameter estimation process. If you select the
tied to option, then you can select the parent parameter from the dropdown list. (Note, you
can only tie to other parameters that have been selected/included in the PEST run). PEST
does not allow a parameter to be tied to a fixed parameter, or a parameter that is already tied
to another parameter.
Transformation
In many cases, the linearity assumption on which PEST is based is more valid when certain
parameters are log-transformed. This means that the log-transformation of some parameters
can often make the difference between success and failure of the estimation process.
However, a parameter that can become zero or negative during the estimation process must
not be log-transformed.
The parameter Transformation field controls how the parameter value will be transformed
during the optimization process. There are three transformation options:
Fixed: The parameter value is fixed and takes no part in the parameter estimation process.
Log: The parameter will be log-transformed (i.e. the log value of the parameter is optimized
rather than the ‘real’ value of the parameter).
None: No transformation takes place (i.e. the ‘real’ parameter value is adjusted)
In the table at the bottom of the window, select which parameter zones you wish to include;
by default, all zones from a selected parameter type will be included. The Value column
indicates the value for each zone; in the case where you have distributed parameter values in
a zone, you will see "Distributed" in this column. The Minimum and Maximum are the lower
and upper bounds of the parameter zone.
The lower and upper bounds should be chosen wisely; for example, if you know that a zone
represents an sandy-gravel aquifer, then define practical limits for the upper and lower
bounds for conductivity for sandy-gravel. The default values are 1E-15 and 1E+30
respectively. The lower and upper bounds are ignored for fixed and tied parameters. If an
updated parameter value is outside of its bounds, PEST temporarily holds the parameter at
its boundary value.
If you have completed a PEST run and return to the Define Parameters step to make a
change (such as add/remove zones or adjust the Minimum or Maximum values), you need to
click the [Apply] button on the workflow toolbar, and also proceed through the Define Pilot
Points step, and re-generate the Define Kriging Variograms step in order to update the
appropriate input files
Pilot points are simple XY points with an initial value for each parameter that you want PEST
to estimate. Pilot points can be imported from .TXT file, XLS, .SHP file, or assigned manually
by digitizing in the 2D environment. An example of the pilot points on top of conductivity zones
is shown below.
In the table in the lower half of the window, specify which pilot points are "Fixed". Fixed pilot
points are those that have initial values that are well known, and will not be adjusted during
the PEST run. Examples of these include points where you have pumping/slug test data. For
all
other points, their initial value is taken from the property zone in which the specific point lies.
VMOD Flex handles these "Fixed" pilot points the following way: In the PEST Control file,
these pilot points parameters use "Fixed" Transformation, and the initial value defined in
the table above will appear beside each point; and
the regularization information for these fixed parameters is not included under the *prior
information section. (this is only applicable when one of the regularization options are
used in the PEST run)
Once you are finished, be sure to repeat these steps for the other parameter zones you have
included.
Note:
You must create a set of pilot points for each of
the parameter-zones you selected in the
previous step.
Theory
Using conventional model calibration technology, the calibration process would use one
parameter associated with a property zone, and adjusting these parameters until the fit
between model outcomes and field observations is as good as possible. If the goodness of fit
obtained on the basis of these zones was not acceptable, then extra zones would be
introduced into the model domain at locations where the modeler felt that they would “do the
most good”; the parameterization process would then be repeated with the new parameters
included. If a good fit was still not obtained, more zones would then be introduced. The
process would continue until the fit between model outcomes and field observations was
acceptable.
There are a number of shortcomings associated with this approach. These include the
following:
To overcome these problems, the distribution of transmissivity within the model domain will
be described by a set of pilot points. A number of these pilot points will be introduced to the
model domain and PEST will be asked to estimate the transmissivity of the aquifer at each
such point. These “point-transmissivities” will then be spatially interpolated to all of the active
cells within the model domain using Kriging. Hence in estimating transmissivity values at pilot
points, PEST will effectively be assigning parameter values to the whole of the model domain.
Individual pilot points can be assigned to different zones within the model domain. Only those
points assigned to a particular zone can be used in calculating transmissivity values
throughout that zone using the Kriging interpolation procedure. Furthermore, the variogram
upon which Kriging is based can be different in each zone, reflecting differences in the
geology, or in the level of heterogeneity, expected within each geological unit. Note that if only
one pilot point is assigned to a particular zone, then that zone is characterised as being
uniform.
General Tips
There is no need to be parsimonious; use as many pilot points as you can. Let PEST do
the regularization (use SVD, Tikhonov, SVD-assist or all of these together).
Use more pilot points in those parts of the model domain where information has a high
spatial density (for example where there are more observation wells).
Try to place pilot points between head measurement wells in the direction of groundwater
flow where they represent hydraulic conductivity. Place them on measurement wells where
they represent specific yield or storage coefficient.
Make sure you place hydraulic conductivity pilot points between measurement wells and
any downstream boundary, for it is the hydraulic conductivity of the material between these
wells and the boundary that determines the heads in those wells.
Don’t leave any large gaps in the final pilot points pattern.
If you use preferred value regularization (for example if you have used the ADDREG1 utility
to add Tikhonov constraints to the PEST input dataset) consider using a covariance matrix
instead of weights for the prior information equations. See the PPCOV utility from the
Groundwater Data Utilities suite.
If you are absolutely sure that no heterogeneity can arise over a distance of less than x,
then don’t place any pilot points closer together than a distance of x.
VMOD Flex will create one default variogram for each parameter zone "structure".
VMOD Flex uses Ordinary Kriging to interpolate between pilot points. This method has the
following advantages:
numerically efficient
respects values assigned to the points
regularization and interpolation can be based on same variogram
In VMOD Flex, a default variogram is provided for each parameter+zone. Suggested defaults
are:
Select the desired Parameter zone from the tree, and provide the necessary variogram
parameters.
Note: Gaussian variograms are not recommended for use with PEST because they can lead
to spurious interpolated property fields greater than or less than the highest/lowest property
value assigned to any pilot point (Doherty, 2008a).
Theory
The use of pilot points in characterizing the spatial distribution of a hydraulic property must be
accompanied by a mechanism whereby hydraulic property values assigned to pilot points are
spatially interpolated to the cells of the finite difference grid. Spatial interpolation is
accomplished using the Kriging algorithm. Kriging is a method of spatial interpolation based
on geostatistics. The cornerstone of geostatistics is the variogram; a variogram describes
the extent to which hydraulic property values (or any other type of data) pertaining to any two
points are likely to be different from each other as a function of the distance between those
points.
One of the benefits of using Kriging as a basis for spatial interpolation is that the factors by
which hydraulic properties at pilot points are multiplied before summation to obtain the
hydraulic property value at a particular grid cell are independent of the actual hydraulic
property values at the pilot points. Hence a set of “Kriging factors” pertaining to each of the
cells of the finite difference grid can be calculated in advance of the actual interpolation
process. As the latter is undertaken again and again as the model is run repeatedly by PEST,
the fact that it is not necessary to repeat calculation of the Kriging factors on each occasion
that the model is run can result in large savings in the time required to complete the overall
parameter estimation process.
Note also that for all of the structures appearing in file struct.dat, the TRANSFORM variable is
set to “log”. Thus any variogram cited in each of these structures must pertain to the spatial
distribution of the logarithm of the pertinent hydraulic property. This is in accord with the fact
that most studies cited in the groundwater literature which treat transmissivity and/or
hydraulic conductivity as a regionalised variable indicate that its distribution is better
described by a log variogram than by a variogram based on native property values.
Run Parameter Estimation 556 (for finding the optimal set of parameters, based on your
observations)
Run Sensitivity Analysis 547 (calculate parameter sensitivities, which will help you to
determine which parameters are influential or not-influential on the model results)
In a sensitivity analysis, parameter values are individually changed to determine the effect on
model calibration and prediction. The results give an indication of which parameter changes
can have significant impact on the model results (these are sensitive parameters) and which
parameter changes have little or no impact on the model results (these are non-sensitive or
insensitive parameters). This should help you to properly select parameters to include in a
PEST run, as you should focus more on the sensitive parameters, and less on the non-
sensitive parameters.
When you go to Run Sensitivity Analysis, the following window will appear:
Under the "PEST Control file" tab, you can see the PEST control file has been automatically
generated for you with the appropriate settings for a Sensitivity Run.
Click on to start the PEST Run; you should see the PEST progress in a DOS
window.
When the run completes, you will see several new tabs added to the workflow window.
Select the appropriate tab and you will see the sensitivities for the parameters and
observations, along with other useful PEST run results.
No Regularization
Tikhonov Regularization 552
SVD Assist 553
Theory
One of the great advantages of using pilot points is that we can distribute a superfluity of
those points throughout the model domain and then ask PEST to find for itself those regions
within the study area where transmissivity must be greater or less than average in order to
ensure that there is good agreement between model outputs and field measurements. If we
had based our parameterisation of the model domain solely on zones, we might not have
placed those zones in the correct position for the calibration process to properly infer the
existence or extent of such heterogeneity.
The introduction of regularisation into the calibration process serves two purposes. Firstly it
brings a high degree of numerical stability to a parameter estimation problem which would
otherwise be highly susceptible to the deleterious effects of a singular normal matrix (you
might have noticed when inspecting hcal.rec that PEST was not able to calculate any
parameter statistics due to singularity of the normal matrix.) Secondly, if regularisation
constraints are appropriately defined, model calibration can proceed with a “homogeneous
unless proven otherwise” philosophy; that is, in spite of the number of parameters at its
disposal, PEST will make each zone within the model domain as uniform as it can in terms of
the distribution of the estimated hydraulic property, introducing heterogeneity into a zone only
where this is necessary in order to allow a good of fit between model outputs and field data to
be achieved. Hence any heterogeneity which is introduced as an outcome of the calibration
process is “there because it has to be there”. In many modelling contexts this philosophy of
model calibration has a large intuitive appeal, allowing a modeller to use zones to
characterise the distribution of some hydraulic property within a model domain while, at the
same time, removing the inflexibility that accompanies the characterisation of a model
domain by areas of piecewise parameter constancy.
Relationships between pairs of parameter values can be introduced into the calibration
process as prior information equations. The weight assigned to each of these prior
information equations can be the same. Alternatively, if the weight is proportional to the
inverse of the square root of the variogram calculated for the distance between the respective
pilot points, then it can be shown that this is in harmony with the geostatistical
characterisation of the area as encapsulated in the variogram. What this characterisation
says, in short, is that “the closer are two points together, the more likely are the hydraulic
properties at those points to be the same”. By calculating weights on the basis of the inverse
of the variogram, we are enforcing the “zero difference” condition more strongly for points
which are closer together than for those which are farther apart.
When run in this mode, a number of control variables are required in the PEST control file, in
addition to those required when PEST is run in “parameter estimation” mode. One of these
variables is PHIMLIM. This specifies the degree of model-to-measurement misfit that is
allowed to occur in the present optimisation process. Because the attainment of a good
model-to-measurement fit, and the simultaneous enforcement of homogeneity constraints,
may place conflicting requirements on parameter values, a compromise between the two
must be reached. The user determines the “compromise level” by setting a maximum model-
to-measurement misfit that he/she will tolerate, this misfit being expressed in terms of the
“measurement objective function”. The maximum permissible value of the measurement
objective function (ie. PHIMLIM) should be set a little higher than the objective function that it is
possible to achieve without any regularisation constraints being enforced.
Each prior information equation included in the parameter estimation process must be
assigned a weight. As was discussed above, weights are calculated on the basis of
geostatistical information available (or assumed) for the model area. If an observation or prior
information equation is used for regularisation purposes, then it is assigned to the observation
group “regul”. As part of its regularisation functionality, PEST adjusts the weights assigned to
all members of this group during each iteration of the optimisation process; however the
relative weight values within this group remain the same. The “regularisation weight factor” by
which the initial weights of all members of the group “regul” are multiplied during each
optimisation iteration is calculated in such a way as to respect the PHIMLIM value provided by
the user as the maximum tolerable model-to-measurement misfit for the current case. An
initial regularisation weight factor needs to be supplied by the user.
12.7.1 No Regularization
If you choose the No Regularization option, then no further settings need to be adjusted prior
to the PEST run. You will be presented with the PEST Control file, whereby you can edit/
adjust values such as the PEST objective function goal, number of iterations, etc. Please
consult the PEST users manual for an explanation of these parameters.
Select the [Generate Tikhonov Regularization] button to select the type of regularization.
Preferred Homogenous (Smoothness): Prior information equations relate the pilot points to
one another. Pilot points that are near one another should have close values; only enough
heterogeneity will be introduced to the system as necessary, the level of the heterogeneity
being controlled by the pertaining semi-variogram.
Preferred Value: Prior information equations relate the pilot points to their initial value. PEST
will try to find a value that is as close to the initial pilot point value as possible.
When you are finished, proceed to the [Run PEST] step to begin the PEST run.
12.7.3 Truncated SVD Regularization
Coming soon.
12.7.4 SVD Assist
Theory
Click on the [Create SVD Assist Run] button on the toolbar, as shown below.
The following Settings dialog will appear. For SVD Assist, you must provide the number of
Super Parameters to use. Please consult the PEST manual for a recommended set of
parameter values.
After clicking OK in the settings window, the PEST Control file, customized for an SVD Assist
run, will be populated as shown below.
When you are finished, proceed to the [Run PEST] step to begin the PEST run
Before launching the PEST run, it is a good idea to run PEST Check. This PEST utility will
check all the input files to ensure they meet a minimum set of criteria.
Click on the button on the toolbar. If there are errors, you will receive a
notification. (if there are just warnings, you will not receive a notification)
Click the Run PEST button to start the pest.exe. The progress should appear in a DOS
window.
Once PEST finishes, you should see a confirmation message appear under the PEST Run
Log tab, indicating if the PEST run was successful or not.
The PEST output files can be exported to Excel spreadsheets for further processing and
charting. Click on the button to specify an output name/location for the Excel
file; the results will be separated into individual worksheets for facilitate analysis.
VMOD Flex will save the adjusted model parameters in a new model run within the same
project. This new model run will appear in the Model Explorer below the most recent model
run. You must Translate and Run this new model run in order to see the updated
MODFLOW results.
In the past, you would need to do a "Save Project As...", if you wanted to keep the original
model separate from the PEST updated model. With VMOD Flex, you can have all these
model scenarios/runs accessible within a single project, allowing you to efficiently compare
the original model to the "PEST-adjusted" model run, where you can make comparisons
between calculated heads, property zone parameters, etc.
Numerical Model
If you change the model engine, you must go back to the start of the PEST workflow, and
click Apply and Next at each step right up to the Run PEST step
If you change the Translation settings (eg. Solver, Package settings) and or the property
package (LPF vs BCF), just go back to the Define Kriging parameters step, click [Apply]
button, then you can go directly to Run PEST.
If you need to change the parameter zonation (eg. add or remove Conductivity zones), this is
something that is not yet updated in the PEST workflow. Please make a clone of the model
run, change the parameter zonation in this clone, then launch a PEST run from this model
clone.
PEST Inputs
Return to this step in the PEST workflow and make the necessary changes
Click [Apply] button at the top of the workflow toolbar
Go to the Run PEST step
If you change the pilot point values, or add new pilot points
There are a number of ways in which a new numerical model workflow window will be
created:
Each new workflow will load as a separate window inside the VMODFlex main application
window.
The windows can be accessed from the window toolbar at the top of the screen, as
highlighted in red below.
The tree structure for multiple model runs is shown below. Each numerical grid (which is
derived from a conceptual model) can have one or more model Runs; each model run
contains the inputs and output for a single numerical model.
You can close a workflow window at anytime by selecting the X button in the top right;
however, this is only recommended if you do not need the workflow window until a later time
(for example a specific model run).
You can reload a workflow window at any time from the Workflow menu, by selecting
Workflow/Open, and the following dialog will appear:
To reload a Conceptual Model workflow, right click on the Conceptual Model node in the
model tree, and select Open Related Workflows...
To reload a Numerical Model workflow, right click on the desired Run node in the model
explorer, and select Open Related Workflow
14 References
Online Guides to USGS MODFLOW and associated packages:
MODFLOW-2005: http://water.usgs.gov/nrp/gwsoftware/modflow2005/Guide/index.html
MODFLOW-LGR: http://water.usgs.gov/nrp/gwsoftware/modflow2005_lgr/Guide/index.html
MODFLOW-2000: http://water.usgs.gov/nrp/gwsoftware/modflow2000/Guide/index.html
ASTM. 1996: ASTM Standards on Analysis of Hydrologic Parameters and Ground Water
Modeling. Publication Code Number (PCN): 03-418096-38. West Conshohocken, PA. Ph:
610/8329585. 146 pp.
Bard, J., 1974: Nonlinear parameter estimation. Academic Press. NY. 341 pp.
Bear, J., 1979: Hydraulics of Groundwater. McGraw-Hill. New York, NY. 567 pp.
Brooks, R. H. and Corey, A. T., 1966: Properties of porous media affecting fluid flow. ASCE J.
Irrig. Drain. Div., 92 (IR2): p. 61-88
Carsel, R. F., and Parrish, R. S., 1988: Developing joint probability distribution of soil water
retention characteristics. Water Resour. Res.http://water.usgs.gov/nrp/gwsoftware/
modflow2005/Guide/index.html 24, p. 755-769.
Cleary, A.J., Falgout, R.D., Henson, V.E., Jones, J.E., Manteuffel, T.A., McCormick, S.F.,
Miranda, G.N., and Ruge, J.W., 2000: Robustness and scalability of algebraic multigrid: SIAM
Journal on Scientific Computing, v. 21, no. 5, p. 1886-1908.
Clement, T. P.,: RT3D v1.0 (1997), RT3D v2.5 (2001), A Modular Computer code for
Simulating Reactive Multi-species Transport in 3-Dimensional groundwater systems. Pacific
Northwest National Laboratory, Rihland, WA 99352, USA, PNNL-SA-11720, Found on-line at
http://bioprocess.pnl.gov/rt3d.htm.
Cooley, R. L., 1983: Some new procedures for numerical solution of variably saturated flow
problems. Water Resources Research, v19, no. 5. p. 1271-1285.
Demmel, J.W., 1997: Applied Numerical linear algebra: Philadelphia, Society for Industrial and
Applied Mathematics, 419 p.
Domenico, P.A., and Schwartz, F. W., 1990: Physical and Chemical Hydrogeology. John
Wiley and Sons Inc. New York, NY. 824 pp.
Driscoll, F.G., 1986: Groundwater and Wells, 2nd Edition. Johnson Division. St. Paul,
Minnesota. 1089 pp.
Deutsch, C.V. and Journel, A.G., 1998: GSLIB Geostatistical Software Library and User’s
Guide. Oxford University Press. N.Y. 369 pp.
Fetter, C.W., 1993: Contaminant Hydrogeology. Macmillan Publishing Co. New York, NY. 458
pp.
Fetter, C.W., 1994: Applied Hydrogeology, 3rd Edition. Macmillan Publishing Co. New York,
NY. 691 pp.
Fetter, C.W., 1999: Contaminant Hydrogeology. 2nd Edition. Prentice-Hall Inc., New Jersey
500 pp.
Freeze, R.A., and Cherry, J.A., 1979: Groundwater. Prentice-Hall Inc. Englewood Cliffs, New
Jersey. 604 pp.
Glover, F., 1986: Future paths for integer programming and links to artificial intelligence.
Comp. and Operations Res., 5, p. 533-549.
Glover, F., 1989: Tabu Search - Part I, ORSA. J. Comp. 1(3), 190-206.
Graham, D.N., Chmakov, S., Sapozhnikov, A., Gregersen, J.B. OpenMI Coupling of
MODFLOW and MIKE 11. “MODFLOW and More 2006. Managing round Water Systems.
Conference Proceedings” May 21-24, v2, p727-731.
Harbaugh, A.W. 1990. A computer program for calculating subregional water budgets using
results from the USGS Modular Three-Dimensional finite-difference groundwater flow model.
U.S. Geological Survey Open-File Report 90-392.
Henry, R.M., 1995: A Critical Comparison of Some Commonly Used Groundwater Modeling
Codes, M.Sc. Thesis. University of Waterloo, Department of Earth Sciences. Waterloo,
Ontario. 115 pp.
Huyakorn, P.S. and Pinder, G.F., 1983: Computational Methods in Subsurface Flow.
Academic Press. New York, NY. 473 pp.
Doherty, J., 1998: Visual PEST: Graphical Model Independent Parameter Estimation.
Watermark Computing and Waterloo Hydrogeologic Inc.
Kladias, M. P., and Ruskauff, G. J., 1997: Implementing Spatially Variable Anisotropy in
MODFLOW. Ground Water, v35, no.2. p. 368-370
Koch, K., 1988: Parameter Estimation and Hypothesis Testing in Linear Models. Springer-
Verlag, Berlin. 377 pp.
Levenberg, K., 1944: A method for the solution of certain non-linear problems in least
squares. Q. Appl. Math., v2. 164-168 pp.
Journal of the Society of Industrial and Applied Mathematics, v11, no. 2. 431-441 pp.
Mehl, S.W., and Hill, M.C., 2001: MODFLOW-2000, The U.S. Geological Survey Modular
Ground-Water Model - User Guide To The Link-AMG (LMG) Package For Solving Matrix
Equations Using An Algebraic Multigrid Solver. U.S. Geological Survey Open-File Report 01-
177.
Mikhail, E. M., 1976: Observations and Least Squares. IEP. NY. 497 pp.
National Ground Water Association, 1985, 1987, 1989, 1992... Practical Applications of
Groundwater Models. Proceedings published by NGWA. Dublin, OH.
Nielsen, D.M. (editor). 1991: Practical Handbook of Ground Water Monitoring. Lewis
Publishers. Chelsea, MI. 717 pp.
Ozbilgin, M.M. and Dickerman, D.C., 1984: A Modification of the Finite Difference Model for
Simulation of a Two-Dimensional Ground-
Water Flow to Include Surface-Ground Water Relationships: U.S. Geological Survey Water-
Resources Investigations Report 83-4251, 98 pp.
Poeter, E., Zheng, C., and Hill, M., (editors) 1998: MODFLOW’98. Colorado School of Mines.
Golden, Colorado.
Pollock, David W., 1998: MODPATH, Documentation of Computer Programs to compute and
display pathlines using results from U.S. Geological Survey modular three-dimensional finite
difference groundwater flow model, U. S. Geological Survey Open Report 89-381, 188 pp.
Prommer, H., Barry, D.A., and C. Zheng, C., 2003. PHT3D - A MODFLOW/MT3DMS based
reactive multi-component transport model. GroundWater, 42(2), 247-257.
van Genuchten, M. Th., and Wierenga, P. J., 1977: Mass transfer studies in sorbing porous
media: II. Experimental evaluation with Tritium (3H2O). Soil Sci. Soc. Am. J. 41 p. 272-278.
Zheng, C., 1993: Extension of the Method of Characteristics for Simulation of Solute
Transport in Three Dimensions. Ground Water, vol 31(3). 456-465 pp.
Zheng, C., and Bennett, G. D., 1995: Applied Contaminant Transport Modeling: Theory and
Practice, Van Nostrand Reinhold, New York.
Zheng, C., and Wang, P., 1999: MT3DMS, A Modular Three-Dimensional Multi- species
Transport Model for Simulation of Advection, Dispersion, and Chemical Reactions of
Contaminants in Groundwater Systems: Documentation and User’s Guide. U. S. Army Corps
of Engineers, U. S. Army Engineer Research and Development Center, Vicksburg,
Mississippi, SERDP-99-1.
Zheng, C. and Wang, P., 2003: MGO Modular Groundwater Optimizer Incorporating
MODFLOW/MT3DMS: Documentation and User’s Guide. The University of Alabama, in
cooperation with Groundwater Systems Research Ltd.
Zheng, C., 1999: User’s Guide. MT3D99 A modular 3D Multi-species transport simulator. S.S.
Papadopulos & Associates.
Maps 200
Index Points
Surfaces
173
185
Wells 187
Inactive Cells 398
-3-
3D Record to AVI File 231
3D Viewer Performance Preferences 16
-N-
Numerical Grid
Edit 61
-A- View 61
Numerical Properties
About the Import Process 172
Edit 46
View 46
-C-
Constant Head 335 -O-
Cross Sections
OpenGL Driver Settings 17
Plot on Color Map 273
-D- -P-
Project Color Palette 19
Define Observation Wells 447
Pumping Wells 334
Define Particles 454
Using Circle 451, 455, 457
Using Points Data Object 451, 455
Display Settings MODFLOW-USG Properties 520
-V-
Virtual Grid 17
-E-
Export Charts 511
-W-
Export views to image 233 Wall (HFB) Boundary Condition 331
-F-
Flow Properties
Edit Colors 408
Edit Contours 408
-H-
How to buy 8
-I-
Import Data 172