MODFLOW is the U.S. Geological Survey modular finite-difference flow model, which is a computer code that solves the groundwater flow equation. The program is used by hydrogeologists to simulate the flow of groundwater through aquifers. The code is free software, written primarily in Fortran, and can compile and run on DOS, Windows or Unix-like operating systems.
Since its original development in the early 1980s,[1] the USGS have released four major releases, and is now considered to be the de facto standard code for aquifer simulation. Currently, there are at least five actively developed commercial and non-commercial graphical user interfaces for MODFLOW.
Contents |
The governing partial differential equation used in MODFLOW is:
where
The finite difference form of the partial differential in a discretized aquifer domain (represented using rows, columns and layers) is:
where
This equation is formulated into a system of equations to be solved as:
where
or in matrix form as:
where
The USGS throughout the 1970s had developed several hundred models, written in different dialects of FORTRAN. At the time, it was common practice to rewrite a new model to fit the need of a new groundwater scenario. The concept for MODFLOW was originally designed in 1981 to provide a common modular groundwater model, which could be compiled on multiple platforms without major (or any) modification, and can read and write common formats. Different aspects of the groundwater system would be handled using the modules, similar to the idea of a "component stereo system". The original name of the code was "The USGS Modular Three-Dimensional Finite-Difference Ground-Water Flow Model", or informally as "The Modular Model." The name MODFLOW was coined several years after the initial code development, which started in 1981.[1]
The first version of MODFLOW[2] was published on December 28, 1983, and was coded entirely in FORTRAN 66. The source code for this version is listed in USGS Open File Report 83-875 referred to above.
This version of MODFLOW[3] was rewritten in FORTRAN 77, and was originally released on July 24, 1987. The current version of MODFLOW-88 is 2.6, released on September 20, 1996.
MODPATH, was initially developed in 1989 to post-process the steady-state MODFLOW-88 data to determine three-dimensional pathlines of particles. This innovation has been indispensable for the fields of contaminant hydrogeology. It is still used as a post-processor in recent versions of MODFLOW.
A separate program, MODFLOWP, was developed in 1992 to estimate various parameters used in MODFLOW. This program was eventually built into MODFLOW-2000.
MODFLOW-96 (version 3.0) was originally released on December 3, 1996, and is a cleaned-up and revised continuation of MODFLOW-88.[4][5] There are three final releases of MODFLOW-96:
Several graphical interfaces were first developed using the MODFLOW-96 code.
MODFLOW-2000 (version 1.0; version numbering was reset) was released on July 20, 2000, which merged MODFLOWP and HYDMOD codes into the main program.[6] Many new packages and enhancements were also included, including new solvers, stream and saturated flow packages. The internal design concepts also changed from previous versions, such that packages, processes and modules are distinct. This version is coded in a mixture of FORTRAN 77, Fortran 90, and C. MODFLOW-2000 can also be compiled for parallel computing, which can allow multiple processors to be used to increase model complexity and/or reduce simulation time.
The current version of MODFLOW-2000 (or MF2K) is version 1.19.01, released on March 25, 2010. There are four related or branched codes based on MODFLOW-2000:
This is the present development version of MODFLOW.[7] It is written primarily in Fortran 90 and C.
The current version of MODFLOW-2005 is version 1.8.00, released on December 18, 2009. Related or branched codes include:
Name | Long name | Version introduced |
---|---|---|
Required packages | ||
BAS | Basic | original |
OC | Output Control | original |
Groundwater flow packages | ||
BCF | Block-Centered Flow | original |
LPF | Layer-Property Flow | MODFLOW-2000 (1.0) |
HUF | Hydrogeologic Unit Flow | MODFLOW-2000 (1.1) |
HFB | Horizontal Flow Barrier | MODFLOW-88 |
UZF | Unsaturated-Zone Flow | MODFLOW-2005 (1.2) |
Solvers | ||
DE4 | Direct Solver | MODFLOW-88 (2.5) |
GMG | Geometric Multigrid Solver | MODFLOW-2000 (1.15.00) |
LMG | Link-AMG | MODFLOW-2000 (1.4) [Note 1] |
PCG | Preconditioned Conjugate-Gradient | MODFLOW-88 |
SIP | Strongly Implicit Procedure | original |
SOR | Slice Successive Over-Relaxation | original |
Head-dependent flux boundary packages | ||
DAF | DAFLOW | MODFLOW-2000 (1.11) |
DRN | Drain | original |
DRT | Drain Return | MODFLOW-2000 (1.1) |
ETS | Evapotranspiration Segments | MODFLOW-2000 (1.1) |
EVT | Evapotranspiration | original |
GHB | General-Head Boundary | original |
LAK | Lake | MODFLOW-2000 (1.1) |
MNW | Multi-Node, Drawdown-Limited Well | MODFLOW-2000 (1.11) |
RES | Reservoir | MODFLOW-88 (2.6) |
RIV | River | original |
SFR | Streamflow-Routing | MODFLOW-2000 (1.14.00) |
STR | Stream | MODFLOW-88 |
Other stress packages | ||
WEL | Well | original |
CHD | Constant-Head Boundary | MODFLOW-88 |
FHB | Flow and Head Boundary | MODFLOW-96 (3.2) |
RCH | Recharge | original |
Miscellaneous packages | ||
DIS | Discretization | MODFLOW-2000 (1.0) |
GAG | Gage | MODFLOW-2000 |
HYD | HYDMOD | MODFLOW-2000 (1.1) |
IBS | Interbed-Storage | MODFLOW-88 |
KDEP | Hydraulic-Conductivity Depth-Dependence Capability | MODFLOW-2000 (1.12) |
LMT | Link-MT3DMS | MODFLOW-2000 (1.5) |
LVDA | Model-Layer Variable-Direction Horizontal Anisotropy Capability | MODFLOW-2000 (1.12) |
SUB | Subsidence and Aquifer-System Compaction | MODFLOW-2000 (1.12) |
SWT | Subsidence and Aquifer-System Compaction Package for Water-Table Aquifers | MODFLOW-2000 (1.18) |
UTL | Utility | original |
Observation process input files | ||
OBS | Input File For All Observations | MODFLOW-2000 |
HOB | Head-Observation | MODFLOW-2000 |
DROB | Drain Observation | MODFLOW-2000 |
DTOB | Drain Return Observation | MODFLOW-2000 |
RVOB | River Observation | MODFLOW-2000 |
GBOB | General-Head-Boundary Observation | MODFLOW-2000 |
CHOB | Constant-Head Flow Observation | MODFLOW-2000 |
ADV | Advective-Transport Observation | MODFLOW-2000 (1.0) |
STOB | Stream Observation | MODFLOW-2000 |
Obsolete packages | ||
GFD | General Finite-Difference | MODFLOW-88 to 96 |
TLK | Transient Leakage | MODFLOW-88 to 96 |
There are several graphical interfaces to MODFLOW, which often include the compiled MODFLOW code with modifications. These programs aid the input of data for creating MODFLOW models.
Non-commercial MODFLOW versions are free, however, their licensing usually limit the use to non-profit educational or research purposes.
Commercial MODFLOW programs are typically used by governments and consultants for practical applications of MODFLOW to real-world groundwater problems. Professional versions of MODFLOW are generally priced at a minimum of around $1000 and typically range upward to $7000 USD. This is a list of commercial programs for MODFLOW:
All current versions of these programs run only on Microsoft Windows, however previous versions of GMS (up to Version 3.1) were compiled for several Unix platforms.