Quick Start Tutorials > Conceptual Modeling Tutorial

Navigation:  Quick Start Tutorials >

Conceptual Modeling Tutorial


The following example is a quick walk-through of the basics of building a conceptual model and converting this to a numerical model.



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 Visual MODFLOW Flex installation.  


These files are available in your public "My Documents" folder, typically:

C:\Users\Public\Documents\VMODFlex\Tutorials\Conceptual Model\supp files


If you cannot find these files, please download them from our website.


Creating the Project

Launch Visual MODFLOW Flex .

Select [File] then [New Project...]. The Create Project dialog will appear.

Type in project name 'Conceptual Modeling Tutorial'.

Click the [] button in Data Repository field, navigate to a folder where you wish your projects to be saved, and click [OK].

Define your coordinate system and datum (or leave the default value - Local Cartesian).

For this project, the default units will be fine.

The Create Project dialog should now look like this (units may be different):


Click [OK].  The workflow selection screen will appear.



Select [Conceptual Modeling] and the Conceptual Modeling workflow will load.

In the Define Modeling Objectives 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. For this scenario, the default objectives will be fine.


Start Date

The start date will be used to retrieve pumping well and head/concentration observation data for the model run.  When you define well data with absolute (calendar) dates, it is important that your start date reflects the actual start time for the model run. The well data must fall on or after that start date. Otherwise, these data will not be included in the simulation.


Also the start date cannot be changed once it has been set. If you inadvertently set the wrong start date, you can import your pumping well data and observation data in relative times (eg. starting at 0), and you will see no difference in the numerical model inputs/outputs.


Setting the Start Date

The model start date for this exercise should be set to 1/1/2000. Visual MODFLOW 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.




The standard Windows calendar will appear. Click on the month in the header (as shown below):



All months for the current year will appear as shown below. Click on the year in the header:



A range of years will then appear as shown below. Click on the range of years in the header:



A list of years for the previous decade will appear. You can then use the < or > buttons to change the year.

Once you have reached the desired year (2000 for this example), select this on the calendar as shown below:



A list of months will then appear for that year.  Select January for this example, as shown below:



Finally, select "1" from the calendar as shown below:



The selected date (January 1, 2000) will then appear for the Start Date.

For this scenario, the remainder of the default objectives and values will be fine.

Click [] (Next Step) to proceed.

Collect Data Objects

The next step is to import or create the data objects you will use for building the conceptual model.



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:



Select Polygon in Data Type combo box.

In the Source File field click the […] button and navigate to your 'My Documents' folder, then 'VMODFlex\Tutorials\ConceptualModel\supp files', and select boundary.shp.

               Note: The files may be located in the public documents folder: "C:\Users\Public\Documents\VMODFlex\Tutorials\Conceptual                        Model", if you selected to make the program available to all users on install.

Click [Next>>].

Click [Next>>].

Click [Next>>] then Click [Finish].

The next step is to import a surface that represents ground surface.

Click the [Import Data] button.

Select Surface for the Data type.

In the Source File field click the […] button and navigate to the 'My Documents' folder, then 'VMODFlex\Tutorials\ConceptualModel\supp files' folder, and select ground.grd.

Click [Next>>] through all the screens to accept the defaults, then click [Finish].

Repeat these steps to import the remaining Surfaces: layer2-top.grd, layer2-bottom.grd.

Next, import polyline data objects, and from the same source directory ,select chd-east.shp; use all the defaults and finish the import.

Repeat these steps, for polylines, importing first chd-west.shp, then river.shp.

Once the data objects are imported, they will appear in the tree on the left side of the program window.



You can view these data objects in 2D or 3D; simply create a new viewer:

Click on [Window] then [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.

Increase the vertical exaggeration and reorient the screen so that you can see all your data objects, as in the image below.


On the Conceptual Model tab click [] (Next Step) to proceed, where you will arrive at the Define Conceptual Model step.

Define Conceptual Model

Provide a name for the conceptual model (e.g. Conceptual Model 1), and model area.

From the Data Explorer, select the polygon data object called boundary. This represents the conceptual model horizontal boundary, and then click the [] button to insert it as the reference object in the Define Conceptual Model workflow 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.

Click [Save]. Notice that the conceptual model elements have been added to the Model Explorer tree in the lower left section of the application window.



Click [] (Next Step) to proceed to the Define Model Structure step.

Define Structure

Defining the geological model consists of providing geological surfaces as inputs for horizons. Then three-dimensional solids are created between these horizons.To create new horizons, follow the steps below.

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".

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.



Click the [Create] button to generate the model horizons, you should see them populate into the Model Explorer.

Finally, click the [] button to proceed to the next step (clicking the [] will also automatically generate the model horizons, if you didn't already click the [Create] button).

Define Property Zones

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 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.



Using Structural Zone(s)

This method allows you to create a property zone from existing structural zones in your conceptual model, i.e., zones generated from horizons.


Click on the [Use Structural Zone] button as shown below



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

Click [] (Next Step) to proceed to the Selection screen.

In this screen, you can choose to proceed to Defining Boundary Conditions or proceed to Defining a grid or mesh.

Click the [Define Boundary Conditions] button to proceed.


In this window, you can choose the type of Boundary Conditions: Standard MODFLOW Boundary Conditions (CHD, DRN, RCH, etc.), Pumping Wells, or Walls.


Click on the [Define Boundary Conditions] button:



The Define Boundary Condition dialog box will appear on your screen as explained in the following section.

Define Boundary Conditions

At this step, you can define flow boundaries for the model.

From the Select Boundary Condition Type combo box, select the desired boundary condition type.

Select '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.



Click the [Next] button.



The next dialog allows us to define the constant head value. Visual MODFLOW 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 fields located below the 'Starting Head (m)' and 'Ending Head (m)' fields type '347'.

[Finish] button


Repeat these steps to define the other constant head boundary condition:


Click on "Define Boundary Conditions" in the tree

Select the [Define Boundary Conditions] button.

Choose Constant Head, select the chd-west polyline, and define a value of 325 for both the Starting Head and Ending Head

Click [Finish].


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, as shown below: Stage = 335 (m), Bottom = 333 (m), Riverbed Thickness = 1 (m), Width = 10 (m), 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.  



Next you can choose what kind of grid to create: [Define Finite Difference Grid] (for a MODFLOW-2000, -2005, or MODFLOW-LGR) model run; [Define Finite Element Mesh] (for preparing inputs for a FEFLOW .FEM file); [Define UnStructured Grid] (for a MODFLOW-USG run).


Click the [Define Finite Difference Grid] button and define the inputs as explained in the following section.

Define Finite Difference Grid



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

Row and Column height/width will be automatically resized based on the grid extents and number of rows/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 section.

Leave the defaults as is; click the [Finish] button.

The Grid will then appear as shown in the following screen.



Click [] (Next Step) to proceed.

Convert to Numerical Model

Now you are ready to populate the numerical grid/mesh with the conceptual elements.


Click on the [Convert to Numerical Model] button to proceed

This conversion could take several minutes, depending on the size and type of grid you used, and the complexity of the conceptual model inputs.

A new window displaying the conversion progress will open. You should see a message indicating that the model conversion has completed. Click [Close] to dismiss this window.



A new workflow tab (Numerical Modeling) will open in your project with these steps:



Keep the default modeling objectives and 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 [Edit...] button located below the Initial Heads combo box.

Type '350' in the top 'InitialHeads (m)' cell.

Then press [F2] (or the [] button) to propagate this value to all other cells in this column; 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 located above the grid viewer window 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)


Show/hide grid lines

Show as cells

Show as Surface


In the Toolbox, you can select a different parameter group and see the corresponding zonation in the Flex Viewers. For example, try turning on the column view and switching to Conductivity to see the two zones you defined earlier.

Click [] (Next Step) to proceed to the Define Boundary Conditions step.

Define Boundary Conditions

At this step, you can view/edit the flow boundaries for the model.



From the Objects in view window, select the Desired Boundary condition group (Constant Head, Rivers, etc..).

Then select [Edit...].  

Click on a cell that belongs to this group; a dialog will appear where you can see the values for the boundary you selected.

Click [OK] to close the view.

Click [] (Next Step) to proceed. You will arrive at the 'Selection' step.

Proceed to Run or Define Optional Model Elements


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-defined as the default step.



Click the [Single Run] 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



MODFLOW-2005 should be selected by default.

Click [] (Next Step) to proceed.

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.

Click the [] button near the [] button 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 near the [] button on the main workflow toolbar to start running the engines.  You will see the Engine progress in the scrolling window.


                       Note: after a successful run, the Heads and Pathlines items will be added the tree in the Model Explorer tree in the lower                        left of the application window.

Once finished, Click the [] (Next step) button to proceed.

View Results

You can then choose to view results in the form of Maps (Contours and Color shading) or Charts



Click the [View Maps] button.

Hit F4 to hide the Workflow tree and make more viewing area for the maps.

                       Note: you can turn the workflow tree back on by hitting F4 at any time.

Make sure in views you only have Layer checked "on". By default, the maps always show heads first. You can change this by checking one of the other output options in the Model Explorer:



You can 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 section).

If your model is transient (this exercise does not apply), you can 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.

Evaluating Different Grids

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 explain how you can generate multiple grids from the conceptual model and run the corresponding numerical models.


At the top of the grid view you will see a list of active tabs:



Click on the first tab, which should be your Conceptual Model workflow to make this the active window, and it should now appear on your display.

Click [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 Explorer 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 just created should be selected.

Click on the [Convert to Numerical Model] button to proceed.



After clicking on the conversion button, a new workflow window will appear which includes the steps for the numerical model for this new grid.

                 Note:  the new tab is titled with the name of the new grid you provided and this new tab will appear in the list of active tabs                        at the top of the grid view.


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.


*****This concludes the 'Conceptual Modeling' tutorial.*****


Page url:http://www.waterloohydrogeologic.com/help/vmod-flex/index.html?conceptual_modeling_tutorial.htm