Software Spotlight/

Chunmiao Zheng, Software Editor

HYDRUS: Software for Flow and Transport
Modeling in Variably Saturated Media
reviewed by Cheng Yu1 and Chunmiao Zheng2

Introduction
HYDRUS is a software program for solving Richards
equation for water flow and the advection-dispersion
equation for heat and solute transport in variably saturated subsurface media. Variably saturated zones are fundamental to understanding many aspects of hydrology,
including infiltration, soil moisture storage, evaporation,
plant water uptake, groundwater recharge, runoff, and erosion. More and more studies are now focusing on theintegrated water cycle, and the consideration of water,heat, and solute exchanges between groundwater and surface water must include both saturated and unsaturatedzones.
HYDRUS uses the finite-element (FE) method tosimulate one-, two- or three-dimensional movement ofwater, heat, and multiple solutes in unsaturated, partiallysaturated, or fully saturated porous media. There are twomain variants of HYDRUS: (1) HYDRUS-1D that has
existed as a Windows-based code since 1998 (the latestversion 4.0 was released in 2007); and (2) HYDRUS2D/3D that is a combination of HYDRUS-2D (1999to 2007) and HYDRUS-3D (2006 to 2007). The mostrecent version of HYDRUS-2D/3D is 1.11 released inFebruary 2010. HYDRUS-1D is free and its sourcecode is open. It was first developed by Šimůnek et al.
(1998) for academic purposes. But HYDRUS-2D/3D is acommercial product developed by PC-Progress Company(http://www.pc-progress.com). Both HYDRUS-1D andHYDRUS-2D/3D can be downloaded directly online.
However, HYDRUS-2D/3D only runs in demo mode until
it is activated following a license purchase from thesoftware vendor.

1 PKU Center for Water Research, College of Engineering,
Peking University, Beijing, China; beimingyu@pku.edu.cn
2 Corresponding author: Department of Geological Sciences,
University of Alabama, PO Box 870338, Tuscaloosa, AL 35487;(205) 348-0579; fax: (205) 348-0818; czheng@ua.edu
Copyright © 2010 The Author(s)Journal compilation © 2010 National Ground Water Association.
doi: 10.1111/j.1745-6584.2010.00751.x

NGWA.org

HYDRUS comes with a graphical user interface(GUI) that runs under the Microsoft Windows operating
system. It can be used in either the 32-bit or 64-bit versionof Windows XP or higher. The minimum requirement torun the HYDRUS software with the GUI includes an ×86
CPU (Intel or AMD) at 1 GHz or faster, 512 MB RAM,a graphics card with a resolution of 1024 × 768 pixels,
and 10 GB total hard disk capacity with about 500 MB
reserved for installation. The software vendor’s website,
http://www.pc-progress.com, provides a comprehensive
coverage of HYDRUS, including download and purchase
information, version history, application examples, andinstructional materials.

How We Tested
The latest version 1.11 of HYDRUS-2D/3D (referredto as HYDRUS hereafter) is reviewed. The installation
package was downloaded online and installed by one
reviewer on a laptop PC with a 1.7 GHz Intel Celeron
M CPU, 1.5 GB RAM, and Intel GMA4500 integrated
graphics card, running Windows 7. The other reviewer
had it installed on a Dell laptop with a 1.4 GHz Intel
Core-2 Duo CPU, 3.0 GB RAM, and Intel GMA 4500
integrated graphics card, running Windows Vista SP2.
The installation package was first self-extracted to atemporary folder. The setup process in itself took lessthan a minute. By default the program was installed to“C:\Program Files\PC-Progress\HYDRUS 1.xx”. After
full installation the main program occupied about 45 MB
of hard disk space while examples occupied another
100 MB.
During the installation, no conflicts between
HYDRUS and other software applications occurred.
No other system component (e.g., Microsoft .Net) wasneeded. Moreover, no other plug-in or auxiliary program
was installed. After purchasing a software license, the user
will be provided authorization codes by the software vendor to activate the installed software. The reviewers tested
the software by working with a three-dimensional example
installed along with the software and a customized application with more complexity.

Vol. 48, No. 6–GROUND WATER–November-December 2010787

What We Found
Documentation and Technical Support
The installation folder contains two HYDRUS
manuals in PDF format. The first is a user manual that
contains detailed instructions on how to use the HYDRUS
software through its GUI, while the second is a technicalmanual that presents the theoretical background and technical details about the conceptual model and numericalmethod. Both manuals are comprehensive and useful.
Besides these two manuals, a help file in chm format
is also provided. The user could either open it or find it
through the “Help” menu. This document provides a more
simplified explanation about the GUI and the basic theories used in HYDRUS. This is useful for quick references
during model construction.
The reviewers found the tutorials on the developer’s
website to be particularly helpful, especially for those
who are first exposed to HYDRUS. A series of videotutorials showing how to construct a HYDRUS modelusing the GUI is also available online (http://www.
pc-progress.com/en/Default.aspx?h3d-tutorials). It would
take approximately 4 h to finish the video tutorial course.
The video course provides a good overview on the basic
steps of constructing a FE model, including, defining

the model geometry, generating the FE mesh, assigning
domain properties, setting up the initial and boundary
conditions, and displaying simulation output.
GUI, Data Import and Management
The GUI of HYDRUS is organized into three panelsunder the main menu and tool bars (Figure 1). The
left panel is a navigation bar with three tabs at thebottom: Data, View, and Sections. Dynamic navigation
trees associated with these tabs provide convenient data
access and display options to lead users through allmodel building steps in HYDRUS. The middle panel
is a view window associated with six tabs: Geometry,FE-Mesh, Domain Property, Initial Condition, Boundary
Condition, and Results. Also, data and view options in
the navigation bar are organized into six groups closely
corresponding with the six tabs associated with the viewwindow. This arrangement of the GUI makes it easier
to navigate through six common steps of model preand post-processing. The right panel is an edit bar. It
displays the details of a list of edit commands. For
example, when the “Boundary Conditions” tab is selectedin the view window, the “Boundary Conditions” groupof the dynamic navigation trees in the navigation bar
expands automatically. At the same time, the edit bar

Figure 1. A screen capture of the input window for HYDRUS. The input window is divided into three panels with a navigation
bar on the left, a view window in the middle, and an edit bar on the right.

788

Vol. 48, No. 6–GROUND WATER–November-December 2010

NGWA.orgchanges to reveal the commands for a list of recommended
boundary types. Click on any boundary type and theedit bar will automatically update to show options forthat boundary condition. This seems a more user-friendly
design than popping up dialog boxes with availableoptions. Reviewers felt quite comfortable with the GUI
after only some brief experimentation.
The third tab of the navigation bar in the left panel
is “Sections” whose function is to divide complex objects(models) into simpler parts (i.e., sections). Clicking on
the “Sections” tab will show a list of sections associatedwith the FE mesh. By default, a whole FE mesh is one
section. New sections can be added, deleted, and edited.
The reviewers found the “Sections” tool a convenient way
to manage a large number of elements. For example, toset boundary or initial conditions to a certain group ofelements, the user just needs to select these elements
associated with a particular section in the navigationbar, and then click on the “Boundary Condition” tab in
the view window, choose all, set the condition in theedit bar, and then repeat this procedure in the “InitialCondition” tab.
Each problem to be solved by HYDRUS is referred
to as a “Project.” By default, when HYDRUS is started,
it will automatically reload the project opened in the last
HYDRUS session. But if no project was opened whenlast exiting HYDRUS, a dialog will pop up to guide theuser through basic model building steps: choosing a modeltype, setting up time discretization and print options, andspecifying iterative solution criteria as well as other basic
input information. All the data and information pertinent
to a particular project are organized and managed by
the “Project Manger.” The reviewers found this datamanagement approach convenient and straightforward.
The data import and export capability appears to berather limited with the GUI. Users can either import orexport data through text files with a default file extension[.txt]. However, though the user manual has explained
the format of such .txt files, the reviewers found it almostimpossible to have data exchange between HYDRUS andgeographic information system tools such as ArcGIS. Inaddition, users cannot import a graphics base map to guidethe spatial discretization when setting up the model grid,a feature commonly available to other model GUIs.
Run time and software performance
After finishing the FE model construction, theuser can run the simulation code through “menu->
calculation-> calculate current project”. A DOS command window will pop up showing the calculation details.
In a HYDRUS-1D project, input data are saved into
ASCII files, and the simulation is carried out by a console application. In HYDRUS-2D/3D, the preprocessing
is also carried out by the GUI, however, the input data
are not saved into ASCII files, rather they are saved into.DLL files. The simulation is also carried out by a console
application named H3D.exe. The run time of a simulation
project depends on the physical complexity and iteration
criteria. The reviewed cases involving both a developer’sNGWA.org

tutorial and an actual example took more than half anhour to complete. During the calculation, the program wasstable, and no error occurred. It is noteworthy that the recommended computer configuration by the developer is a
3.0 GHz CPU and 2.0 GB RAM and graphics card with
OpenGL hardware acceleration. The systems used by both
reviewers are below that configuration. Still, the software
performance was adequate.
OutputThe output of HYDRUS simulation can be displayed
directly through the GUI. Three-dimensional distributed
fields such as pressure head, water content, velocity,
concentration, and temperature are shown as contour maps
through the “Result” tab of the view window (Figure 2).
Meanwhile, in the edit bar, tools are provided for creating
cross-section plots. Users might either save the onscreen
plot as a graphical image, or export the raw data to text
files. This is an improvement in HYDRUS-2D/3D over
HYDRUS-1D which only allows the results to be exported
to bitmap files in low resolution. In HYDRUS-2D/3D, theresults can be exported as .txt files with x, y coordinates.
Users can choose to do post-processing with the exported
data in other graphic programs. HYDRUS also provides
animations to show the flow or solute transport process.
The animations can be exported to .avi files in six typesof video encoding.

What We Liked
HYDRUS appears to be a versatile modeling systemwith a well-designed GUI for water flow, solute, andheat transport simulation in variably saturated media.
The reviewers especially like several features available
in the GUI. The project manager and step-by-stepguidance can be very helpful to users, in particular,beginners. The overall GUI design is intuitive and various
options are arranged logically into groups corresponding
with model construction steps. The edit bar is changed
from the menu-dialog style that is popular in manyother programs into an integrated panel with colorful
icons. Reviewers also thought that the output module isimpressive for its intuitive representation by animations
and multiple types of graphics. The “Sections” tool
provides a convenient way to access and edit a group ofelements simultaneously. The reviewers also very much
liked the video tutorial course available on the software
vendor’s website. This course allows users to learn about
almost all of the options available to HYDRUS.
Another useful and convenient feature of HYDRUS
is the integrated inverse modeling capability that canbe used to optimize input parameters during modelcalibration. The GUI can be used to define the objectivefunctions and the soil properties to be optimized, andto enter observed head and concentration data directly.
While it is more common nowadays to use a simulation
code in conjunction with a model-independent inverse
parameter estimation package such as PEST or UCODE
for model calibration purposes, integrating forward andVol. 48, No. 6–GROUND WATER–November-December 2010789

Figure 2. An output screen capture for HYDRUS. Shown in the plot is a calculated concentration distribution in 3D as well
as a breakthrough curve at an observation location.

inverse modeling functionalities in a single code has its
own benefits.
Although not related to HYDRUS-2D/3D directly,
it is noteworthy that the software developer has also
released a HYDRUS-1D package for the United States
Geological Survey (USGS) groundwater flow model,
MODFLOW. This appears to be a useful and practical
tool for integrating the unsaturated zone with saturated
zone flow modeling.

What We Did Not Like
Data exchange with external files and programs needs
to be enhanced in future versions of HYDRUS. Current
versions appear to be only capable of importing data
files exported by HYDRUS itself. This can significantly
limit the application of HYDRUS to more complex fieldproblems. Moreover, while HYDRUS supports animation
export to .avi files, reviewers found it difficult, if not
impossible, to export graphs to high resolution images. Asa result, simulation results may need to be saved as textfiles and post-processed with external graphic programsfor publication-quality plots.
By default, program files and example files are
installed to different folders. The default installation
790

folders change under different versions of the Windows
operating system. While this is a minor issue, it could
cause some confusion among users. Another minor issue
concerns the icons in the tool bars and in other panels,
which are not very intuitive.
Finally, while the HYDRUS series of codes have
had a long history of development and successful applications to many field problems (Šimůnek et al. 2008),
the core numerical solution technique has not progressedmuch beyond the classic Galerkin-type FE method. By
using upstream weighting to curb numerical oscillation, the transport solution is vulnerable to significant
numerical dispersion if spatial discretization cannot bemade sufficiently fine due to computational efficiency
considerations.

Overall
Overall, the two reviewers are favorably impressed by
HYDRUS as a versatile modeling platform with a long,proven track record and a well-designed GUI for flow andtransport under variably saturated conditions. Althoughsome features need to be enhanced, the software appears
to be stable, efficient, and easy-to-use. HYDRUS would
be a good choice for any researchers or environmental

Vol. 48, No. 6–GROUND WATER–November-December 2010

NGWA.orgengineers interested in subsurface flow, transport, andremediation where variably saturated conditions must beconsidered.

References

Ranking
The reviewers ranked the software’s capability,reliability, ease of use, and technical support on a scaleof 1 (worst) to 5 (best). The following rankings are theaverage of two sets of scores from both reviewers:
Capability: 4.5
Reliability: 4.2
Ease of use: 4.5
Technical support: 4.8 (a series of online videotutorials)

How to Obtain the Software
Those interested in obtaining the free HYDRUS1D software or purchasing the commercial HYDRUS2D/3D can visit the software developer’s website at
http://www.pc-progress.com. The current prices for HYDRUS-2D/3D licenses range from 600 euro ($780 USD)

NGWA.orgfor “2D-lite” to 1800 euro ($2400 USD) for “3DStandard.”

Šimůnek, J., K. Huang, and M.Th. van Genuchten. 1998. The
HYDRUS code for simulating the one-dimensional movement of water, heat, and multiple solutes in variablysaturated media. Version 6.0, Research Report No. 144,
California: U.S. Salinity Laboratory, USDA, ARS, Riverside, 164.
Šimůnek, J., M.Th. van Genuchten, and M. Šejna. 2008. Development and applications of the HYDRUS and STANMOD
software packages and related codes, Vodose Zone Journal
7, no. 2: 587–600.

Our Mission
The goal of Software Spotlight is to help readers identify well-written, intuitive, and useful software. Independent reviewers from government, industry, and academiatry out full working versions of software packages andprovide readers with a concise summary of their experiences and opinions regarding the capability, stability, andease of use of these packages.

Vol. 48, No. 6–GROUND WATER–November-December 2010

791