HYDRUS is a Microsoft Windows based modeling environment for the analysis of water flow and solute transport in variably saturated porous media. The software package includes computational finite element models for simulating the two- and three-dimensional movement of water, heat, and multiple solutes in variably saturated media. The model includes a parameter optimization algorithm for inverse estimation of a variety of soil hydraulic and/or solute transport parameters. The model is supported by an interactive graphics-based interface for data-preprocessing, generation of structured and unstructured finite element mesh, and graphic presentation of the results.
The HYDRUS program is a finite element model for simulating the two- and three-dimensional movement of water, heat, and multiple solutes in variably saturated media. The HYDRUS program numerically solves the Richards equation for saturated-unsaturated water flow and convection-dispersion type equations for heat and solute transport. The flow equation incorporates a sink term to account for water uptake by plant roots. The heat transport equation considers movement by conduction as well as convection with flowing water. The governing convection-dispersion solute transport equations are written in a very general form by including provisions for nonlinear nonequilibrium reactions between the solid and liquid phases, and linear equilibrium reaction between the liquid and gaseous phases. Hence, both adsorbed and volatile solutes, such as pesticides, can be considered. The solute transport equations also incorporate the effects of zero-order production, first-order degradation independent of other solutes, and first-order decay/production reactions that provide the required coupling between the solutes involved in the sequential first-order chain. The transport models also account for convection and dispersion in the liquid phase, as well as diffusion in the gas phase, thus permitting the model to simulate solute transport simultaneously in both the liquid and gaseous phases. At present, HYDRUS considers up to fifteen solutes, which can either be coupled in a unidirectional chain or move independently of each other. Physical nonequilibrium solute transport can be accounted for by assuming a two-region, dual porosity type formulation, which partitions the liquid phase into mobile and immobile regions. Attachment/detachment theory, including the filtration theory, is included to simulate transport of viruses, colloids, and/or bacteria.
The program may be used to analyze water and solute movement in unsaturated, partially saturated, or fully saturated porous media. HYDRUS can handle flow domains delineated by irregular boundaries. The flow region itself may be composed of nonuniform soils having an arbitrary degree of local anisotropy. Flow and transport can occur in the vertical plane, the horizontal plane, a three-dimensional region exhibiting radial symmetry about a vertical axis, or in a three-dimensional region.
The water flow part of the model can deal with (constant or time-varying) prescribed head and flux boundaries, as well as boundaries controlled by atmospheric conditions. Soil surface boundary conditions may change during the simulation from prescribed flux to prescribed head type conditions (and vice versa). The code can also handle a seepage face boundary, through which water leaves the saturated part of the flow domain, and free drainage boundary conditions. Nodal drains are represented by a simple relationship derived from analog experiments.
For solute transport, the code supports both (constant and varying) prescribed concentration (Dirichlet or first-type) and concentration flux (Cauchy or third-type) boundaries. The dispersion tensor includes a term reflecting the effects of molecular diffusion and tortuosity.
The unsaturated soil hydraulic properties are described using van Genuchten , Brooks and Corey , Durner , Kosugi , and modified van Genuchten type analytical functions. Modifications were made to improve the description of hydraulic properties near saturation. The HYDRUS code incorporates hysteresis by using the empirical model introduced by Scott et al.  and Kool and Parker . This model assumes that drying scanning curves are scaled from the main drying curve, and wetting scanning curves from the main wetting curve. As an alternative, we also incorporated the hysteresis model of Lenhard et al.  and Lenhard and Parker , which eliminates pumping by keeping track of historical reversal points, into HYDRUS. HYDRUS also implements a scaling procedure to approximate hydraulic variability in a given soil profile by means of a set of linear scaling transformations that relate the individual soil hydraulic characteristics to those of a reference soil.
The governing equations are solved numerically using a Galerkin type linear finite element method applied to a network of triangular elements. Integration in time is achieved using an implicit (backwards) finite difference scheme for both saturated and unsaturated conditions. The resulting equations are solved in an iterative fashion, by linearization and subsequent Gaussian elimination for banded matrices, a conjugate gradient method for symmetric matrices, or the ORTHOMIN method for asymmetric matrices. Additional measures are taken to improve solution efficiency in transient problems, including automatic time step adjustment and ensuring that the Courant and Peclet numbers do not exceed preset levels. The water content term is evaluated using the mass-conservative method proposed by Celia et al. (1990). To minimize numerical oscillations upstream weighing is included as an option for solving the transport equation.
In addition, HYDRUS implements a Marquardt-Levenberg type parameter estimation technique for the inverse estimation of selected soil hydraulic and/or solute transport and reaction parameters from measured transient or steady-state flow and/or transport data (only in 2D). The procedure permits several unknown parameters to be estimated from observed water contents, pressure heads, concentrations, and/or instantaneous or cumulative boundary fluxes (e.g., infiltration or outflow data). Additional retention or hydraulic conductivity data, as well as a penalty function for constraining the optimized parameters to remain in some feasible region (Bayesian estimation), can be included in the parameter estimation procedure.
A new module simulating the biochemical transformation and degradation processes in subsurface-flow constructed wetlands was developed for two-dimensional applications of HYDRUS (Langergraber and Simunek, 2005). This module considers the biochemical degradation and transformation processes for three fractions of organic matter (readily- and slowly-biodegradable, and inert), four nitrogen compounds (ammonium, nitrite, nitrate, and dinitrogen), inorganic phosphorus, and heterotrophic and autotrophic micro-organisms, and dissolved oxygen.
Graphical User Interface
A Microsoft Windows based Graphical User Interface (GUI) manages the inputs required to run HYDRUS, as well as grid design and editing, parameter allocation, problem execution, and visualization of results. The program includes a set of controls that allows the user to build a flow and transport model, and to perform graphical analyses on the fly. Both input and output can be examined using area or cross-sectional views and line graphs. The main program unit of the HYDRUS Graphical User Interface defines the overall computational environment of the system. This main module controls execution of the program and determines which other optional tools are necessary for a particular application. The module contains a project manager and both the pre-processing and post-processing units. The pre-processing unit includes specification of all necessary parameters to successfully run the HYDRUS FORTRAN codes, grid generators for relatively simple rectangular and hexahedral transport domains, a grid generator for unstructured finite element meshes for complex two-dimensional domains, a small catalog of soil hydraulic properties, and a Rosetta Lite program for generating soil hydraulic properties from soil textural data.
Automatic FE-Mesh Generation
Data preprocessing involves specification of the two-dimensional flow region having an arbitrary continuous shape bounded by polylines, arcs and splines, discretization of domain boundaries, and subsequent generation of an unstructured finite element mesh. HYDRUS (Standard Levels) comes with an optional mesh generation program, Meshgen, which generates an unstructured finite element mesh for two-dimensional domains. This program, based on the Delaunay triangulation, is seamlessly integrated into the HYDRUS environment. In the absence of the Meshgen program, the HYDRUS GUI provides an option for automatic construction of simple, structured grids (Lite Levels). The third dimension is developed in both the Lite and Standard levels by adding specified the number of layers of equal or different thicknesses.
Output graphics include 2D contours (isolines or color spectra) in area or cross-sectional view for heads, water contents, velocities, concentrations, and temperatures. Output also includes velocity vector plots, color edges, color points, animation of graphic displays for sequential time-steps, and line-graphs for selected boundary or internal sections. The post-processing unit also includes simple x-y graphics for a graphical presentation of soil hydraulic properties, as well as such output as distributions versus time of a particular variable at selected observation points, and actual or cumulative water and solute fluxes across boundaries of a particular type. Areas of interest can be zoomed in on, and vertical scale can be enlarged for cross-sectional views. The mesh can be displayed with boundaries, and numbering of triangles, edges and points. Observation points can be added anywhere in the grid. Viewing of grid and/or spatially distributed results (pressure head, water content, velocity, or concentration) is facilitated using high resolution color or gray scales. An extensive and context-sensitive online Help is part of the interface.
Domain and FE-Mesh Sections
To simplify the work with complex transport geometries, these can be divided into simpler parts, called Sections. Only these simpler parts can then be displayed in the View Window while the remaining parts can be hidden. Two types of sections exist: those for geometric objects and those for the FE-Mesh. Multiple Sections can be displayed simultaneously. Undesired (to be displayed) parts of the transport domain can be cut off and hidden from the View window using various commands.
Minimum System Requirements
- Operating Systems: Windows XP / Windows Vista (32 or 64bit) / Windows 7 (32 or 64bit)
- X86 CPU with 1 GHz
- 512 MB RAM
- 10 GB total hard disk capacity with about 500 MB reserved for installation
- Graphic card with a resolution of 1024 x 768 pixels
Recommended System Configuration
To use HYDRUS comfortably for the calculation of 3D models, we recommend the following system requirements
- Operating System WindowsXP, SP2
- X86 CPU (Intel or AMD) with 3 GHz or better
- 2 GB RAM
- 80 GB hard disk capacity
- Graphic card with OpenGL hardware acceleration. We can recommend cards with Nvidia chipsets.
HYDRUS runs on these systems, but we do not guarantee error-free functionality of the program when using one of these operating systems.
HYDRUS version 1.05 or later works on x64-bit systems.
There was a problem with authorization, and previous versions (1.01-10.4) do not work correctly on 64 bit systems