Water Resources of the United States

Home News Getting Started Overview Gallery FAQ Glossary Special Support Software

Overview of SutraSuite

This web page summarizes SUTRA's capabilities and limitations, input data requirements, and associated preprocessing and postprocessing utilities. For more information about SUTRA and its utilities, see the formal documentation for each code, and take advantage of the various other resources offered on this website.

Capabilities and Limitations of SUTRA

SUTRA simulates saturated and/or unsaturated, constant-density or density-dependent groundwater flow and either single-species reactive solute transport or thermal energy transport. Simulations can be either two-dimensional or fully three-dimensional. Solutions can be either steady-state or transient. SUTRA's main features and limitations are summarized below:


  • Groundwater flow
    • saturated/unsaturated
    • constant-density or density-dependent
    • user-programmable unsaturated flow functions
  • Transport
    • single solute or thermal energy
    • zeroth- and first-order solute production/decay; zeroth-order energy production/decay
    • linear, Freundlich, or Langmuir adsorption
  • Time dependence
    • steady-state or transient solution
    • time-varying boundary conditions specified via input files or programmable subroutine


  • Two-dimensional (2D) models
    • Cartesian coordinates or
    • radial/cylindrical coordinates
  • Three-dimensional (3D) models
    • Cartesian coordinates
    • fully 3D


  • Discretization
    • hybrid Galerkin-finite-element and integrated-finite-difference method
    • quadrilateral (2D) or generalized hexahedral (3D) finite elements
    • fully implicit finite-difference time discretization
  • Nonlinear problems
    • Variable-density and/or unsaturated flow problems are nonlinear
    • Picard iteration available to resolve nonlinearities
  • Matrix equation solvers
    • Gaussian elimination (direct)
    • preconditioned CG (iterative; only for flow equation without upstream weighting)
    • preconditioned GMRES (iterative)
    • preconditioned ORTHOMIN (iterative)


  • Input
    • all input data are contained in text files
    • input data are grouped into "datasets"
  • Output
    • output is written to text files and to the screen
    • flexible, columnwise listing of pressure, concentration or temperature, saturation, and velocity
    • observation well output (pressure, concentration or temperature, and saturation vs. time)
    • fluid mass and solute mass or energy budgets
  • Preprocessing and postprocessing software (details below)
    • facilitates formulation of input datasets
    • helps with interpretation of results

Input data requirements for SUTRA

For each SUTRA simulation, the user must specify the type of simulation, mesh structure, physical properties, simulation and output controls, boundary conditions, and initial conditions. This is done through two or more data files:

  • the main input (".inp") file
  • the initial conditions (".ics") file
  • one or more (".bcs") files for time-dependent boundary conditions

The input data requirements are summarized below:


  • Solute transport or
  • Energy transport


  • Node and element numbering scheme
  • Coordinates in space of each node
    • (x, y) in 2D
    • (x, y, z) in 3D
  • Thickness of the mesh at each node (2D only)
  • For each element, a list of nodes that form its corners


  • Nodewise properties (a value is assigned to each node)
    • porosity
    • unsaturated flow properties*
  • Elementwise properties (a value is assigned to each element)
    • permeabilities
    • longitudinal and transverse dispersivities
    • unsaturated flow properties*
  • Properties that vary according to a single function of concentration or temperature that applies throughout the model
    • fluid density as a linear function of solute concentration or temperature
    • fluid viscosity as a function of temperature (energy transport only)
  • Properties that are assigned a single, constant value throughout the model
    • solid matrix compressibility
    • solid grain specific heat (energy transport only)
    • solid grain diffusivity (energy transport only)
    • solid grain density (energy transport or solute transport with sorption only)
    • fluid compressibility
    • fluid specific heat (energy transport only)
    • fluid diffusivity
    • fluid viscosity (solute transport only)
    • equilibrium sorption isotherm parameters (solute transport with sorption only)
    • zeroth- and first-order rate constants for adsorbate mass production in the solid (solute transport only)
    • zeroth- and first-order rate constants for solute mass production in the fluid (solute transport only)
    • rate of energy production in the solid (energy transport only)
    • rate of energy production in the fluid (energy transport only)
    • components of gravity

    * The unsaturated flow properties are set by specifying a "region number" for each node and element. The dependence of the unsaturated flow properties on pressure and region number is programmed by the user in subroutine UNSAT.


  • Simulation title
  • Simulation dimensions
    • number of nodes
    • number of elements
    • number of boundary conditions
    • number of observation nodes
  • Simulation modes
    • saturated/unsaturated
    • steady/transient
    • run initialization
    • storage of restart information
  • Numerical controls
    • upstream weighting
    • enforcement of boundary conditions
    • time stepping
    • solution cycling
    • Picard iterations
    • matrix solver parameters
  • Output controls
    • nodewise results (pressure, concentration, saturation)
    • elementwise results (velocity)
    • fluid mass and solute mass or energy budgets
    • results at observation nodes
    • screen output


  • Four types of boundary conditions
    • Fluid sources or sinks
    • Solute mass or energy sources or sinks
    • Specified pressures
    • Specified solute concentrations or temperatures
  • Specification of boundary conditions
    • All boundary conditions are specified at nodes.
    • Boundary conditions are not restricted to nodes at the physical boundary of the model; they can be specified at any node.
    • By default, there is no flux of mass or energy in or out of the model domain at any node for which a boundary condition is not explicitly specified.
    • Time-varying boundary conditions can be specified using the optional ".bcs" input files or programmed by the user in subroutine BCTIME.


  • Initial conditions
    • starting time
    • initial pressure at each node
    • initial solute concentration or temperature at each node
  • Restarting a run
    • A restart (".rst") file contains initial conditions, plus additional initialization information saved by SUTRA at the end of an earlier run.
    • Using the information saved in a restart file, an earlier run can be continued as though it had never been interrupted. This is called a "warm" start.
    • The restart file can also be used in a "cold start" to continue a run after changes have been made to the model input (e.g., different boundary conditions).

Preprocessing and postprocessing utilities

Preprocessing software facilitates the formulation of large, complex input datasets. Once a simulation is completed, postprocessing software can assist in the interpretation of results. The SutraSuite software package includes a number of preprocessing and postprocessing programs designed for use with SUTRA. These are summarized in the table below:


  • SutraPrep
    • Simple preprocessor for 3D SUTRA problems
    • Creates input for SUTRA 2.0 [2D3D.1], which can be read by SUTRA 2.1 and 2.2
    • Creates 3D (VRML) mesh plots
    • Text-based interface
    • Compiled version available for Windows
    • Can be run on any platform with a standard FORTRAN-90 compiler
  • SutraGUI
    • Powerful graphical user interface (GUI) for 2D and 3D SUTRA problems
    • Features interactive graphical input and ability to import GIS maps of physical properties and boundary conditions
    • Also does postprocessing (2D only) -- see below
    • Windows-based
    • Requires ArgusONE software


  • SutraPlot (version compatible with versions of SUTRA higher than 2.0 [2D3D.1] is currently under development)
    • Plots results of 2D and 3D SUTRA simulations
    • Creates mesh plots, contour plots, and velocity vector plots
    • Windows-based
  • SutraGUI
    • Plots results of 2D SUTRA simulations
    • Creates contour plots of pressure, concentration/temperature, and saturation, and plots velocity vectors
    • Also does preprocessing (2D & 3D) -- see above
    • Windows-based
  • Model Viewer
    • Creates visualizations of 2D and 3D SUTRA output that the user can manipulate on-screen
    • Plots isosurfaces or solid, 3D maps of pressure, concentration/temperature, or saturation
    • Plots velocity vectors
    • Saves visualizations as bitmaps (.bmp) or VRML plots (.wrl)
    • Displays animations of results and exports frames for creating animations outside of Model Viewer
    • Windows-based
  • GW_Chart
    • Plots results of 2D and 3D SUTRA simulations as functions of time: fluid, solute, and energy budgets; and pressure and concentration or temperature at observation nodes
    • Windows-based
  • CheckMatchBC
    • Aids in the proper formulation of specified-pressure, specified-concentration, and specified-temperature boundary conditions.
    • Windows-based


USGS Home :: Biology :: Geology :: Geography :: Water Intranet :: USGS Intranet :: Site Map

Accessibility FOIA Privacy Policies and Notices

Take Pride in America logo USA.gov logo U.S. Department of the Interior | U.S. Geological Survey
URL: https://water.usgs.gov/nrp/gwsoftware/sour/overview/overview.htm
Page Contact Information: Alden Provost <aprovost@usgs.gov>
Page Last Modified: Tuesday, 20-Dec-2016 15:22:41 EST