Chemflo - simulates water and chemical movement in unsaturated soils model

Chemflo Categories: flow models - unsaturated zone, solute transport models - unsaturated zone

Chemflo Description

Chemflo Limitations
Chemflo Data Input
Chemflo Simulation Parameters
Chemflo Output

Chemflo is an interactive software system for simulating one-dimensional water and chemical movement in unsaturated soils. Chemflo was developed to enable decision-makers, regulators, policy-makers, scientists, consultants, and students to simulate the movement of water and chemicals in unsaturated soils. Water movement is modeled using Richards' equation. Chemical transport is modeled by means of the convection-dispersion equation. These equations are solved numerically for one-dimensional flow and transport using finite differences. Results of Chemflo can be displayed in the form of graphs and tables.

Chemflo Limitations

One-dimensional water and chemical movement - Based on mathematical models for water and chemical movement in one dimension. In nature this will seldom take place due to spatial variability in soil properties or boundary conditions. Although these processes have been modeled in two or three dimensions, the required soil properties are seldom known and the computational time is much greater. Chemflo also does not include source and sink terms so it cannot be used to simulate uptake of water by roots at different depths in the soil.

Homogeneous soil profiles - Assumes that the soil and chemical properties are homogeneous with depth. The validity of this assumption will depend upon the specific site of interest. In general, these properties will vary with depth. An estimate of the significance of this assumption can be obtained by comparing results of several simulations with a range of soil and chemical parameters representative of the site.

Inappropriate water flow equation - The Richards' equation for water movement is based on the Darcy-Buckingham equation for water movement in unsaturated soils. This equation is usually a good descriptor of water movement in agricultural soils, but exceptions exist. No provision is made in Chemflo for swelling soils. No provision is made in Chemflo for preferential flow of water through large pores in contact with free water. Therefore, Chemflo will not accurately represent flow in soils with large cracks which are irrigated by flooding. Chemflo assumes that hysteresis in the wetting and drying processes is negligible and can be ignored. Chemflo also assumes that the hydraulic properties of the soil are not changed by the presence of the chemical.

Inappropriate chemical transport equation - Limitations in the convection-dispersion equation have been observed. Clearly, any inadequacy in simulating water movement will impact the simulation of chemicals. In addition, partitioning of the chemical between the solid and liquid phases may not be proportional as assumed. Chemflo also assumes that this partitioning is instantaneous and reversible. Partitioning and movement of the chemical in the vapor phase is ignored in this model.

Inappropriate initial conditions - The simulated results depend upon the initial conditions specified. If the specified initial conditions do not match the real conditions, the calculated values may be incorrect. The user may want to compare simulations with a range of initial conditions.

Inappropriate boundary conditions - The predictions of the model are quite sensitive to the specified boundary conditions. If the specified ones do not match the actual conditions, large errors may be made. In some cases, the errors may be due to a lack of knowledge of the real boundary conditions. Hopefully this will not be a major problem since boundary conditions can be changed during a simulation.

Inappropriate soil or chemical properties - Many of the soil and chemical parameters are difficult to measure experimentally. Moreover, soil hydraulic properties can vary by large amounts over small areas. This means that the input parameter values involve uncertainty. Repeated simulations with different parameters in Chemflo can be used to assess the influence of this uncertainty upon predictions.

Discretization errors - Limitations in Chemflo due to approximating derivatives by finite differences as well as other approximations used in solving the partial differential equations are subtle and may be difficult to detect. Mass balance errors for water and chemicals are calculated to detect net computational error. Small mass balance errors are simply essential conditions for a valid solution but they do not guarantee accurate solutions. In general, discretization errors tend to decrease as the mesh sizes decrease so the user may want to compare solutions for different mesh sizes.

Special case of drying a saturated soil - Another limitation of the numerical techniques employed is exhibited when one attempts to simulate the drainage or drying of a soil with a uniform initial matrix potential greater than -2 cm. This results in a predicted matric potential which is linear for the entire length of the soil system (as would be the case for saturated flow conditions). This problem has not been observed for initial matric potentials less than -2 cm nor for nonuniform initial distributions resulting from infiltration. The user can approximate movement from a soil initially saturated with water by specifying an initial condition of -2 cm or less instead of zero.

Chemflo Data Input


Name of the soil - The name of the soil to be simulated.

Orientation of flow system - Flow can be simulated in any direction. This is the angle A between the z axis and the vertically downward direction.

Finite or semi-infinite soil system - Semi-infinite soils can be used only for modeling water movement into soils with uniform initial conditions. If the initial conditions are not uniform or if both water and chemical movement are to be modeled, finite soil systems are required.

Length of soil system - (Centimeters)


Boundary condition for water at the upper soil surface - Four types of boundary conditions at the upper soil surface are supported in Chemflo. They are described below.

Constant Potential - This condition specifies that water is supplied or removed from this boundary at a constant potential or pressure. The supply of water is adequate to meet the demand of the soil. Flow is controlled by the soil properties; it is not limited by the supply. This condition may be used to simulate movement from a pond.

Constant Flux - Specifies that water is being added or removed from the soil surface at a specific rate. If the flux is positive at the upper end of the soil (or at the location where the distance coordinate is zero) water is entering the soil. If the flux is negative there, water is being removed from the soil. This boundary condition may represent flow systems where the soil is not limiting the rate of water movement across the boundary. This could occur in cases of low intensity rainfall or sprinkling, initial stages of evaporation, or cases of no water flow because of artificial barriers covering the soil.

Constant Rainfall - This boundary condition is a specialized case of the mixed-type boundary condition designed to simulate water applied at a constant rate by rainfall or sprinkling. In the early stages of rainfall infiltration, the capacity of the soil to conduct water may exceed the rainfall rate. Thus, initially, this is a flux boundary condition with the flux equal to the rainfall rate. As time passes, the soil may reach a point where the surface becomes saturated and the infiltration rate is limited by the soil. In this case, water would either pond on the soil surface or it would run off. This boundary condition assumes that no ponding occurs. As soon as the soil surface becomes saturated, the boundary condition changes to a constant potential boundary condition with a potential of zero.

Mixed Type - A mixed-type boundary condition is a combination of constant flux and constant potential boundary conditions. The specified constant flux is used initially. It continues as the boundary condition until the matric potential at the boundary reaches a value specified by the user. After that time, a constant potential of the user-specified value is maintained at the surface. This boundary condition can be used to simulate rainfall as described in the rainfall boundary condition above. It could be used to simulate rainfall where water was allowed to pond to some depth before running off. It can also be used to simulate evaporation. In that case, the evaporation rate (a negative flux) is maintained at the surface until the soil surface reaches a certain negative matric potential approximating air dryness; that matric potential is then maintained.

Desired rainfall rate - This rate becomes the flux of water at the inlet until the soil surface becomes saturated. At that time, a potential of zero is maintained (and the flux decreases with time). If another boundary condition had been specified, the user is prompted for the parameter needed for that condition.

Boundary condition for water at the lower surface - Since this is a finite soil, boundary conditions must be specified at both upper and lower boundaries. The types of boundary conditions supported here are the same as those at the upper surface except for the rainfall condition.

Matrix potential at the lower surface - Since a constant potential was specified, this entry defines the value of that matric potential. The water content corresponding to that potential for the soil selected is displayed on the following line for your information. If another boundary condition had been selected, the prompt would have requested a parameter appropriate for that condition.

Uniform initial matrix potential throughout the soil - This software can simulate water movement in finite soil systems for soils with uniform or non-uniform initial conditions.

Matrix potential throughout soil before simulation - This line allows you to enter the initial matric potential in the soil. The next line then displays the water content corresponding to that matric potential. This information can be used to determine the matric potential to be entered if the water content is known.

Chemflo Simulation Parameters

Maximum time to be simulated - Time, in hours, when simulation with these boundary conditions should end. It may be the end of the time of interest or it may be the time at which a boundary condition is changed.

Period between graphic or tabular outputs - Usually the times at which the user wants to see the solution to the problem are much less frequent than the mesh size in time. This enables the user to specify the period of time between graphical or tabular outputs.

Output file name - The software stores the problem definition, computed results, and other needed data in disk files for later use in generating graphical and tabular outputs and for restarting the solution process if necessary. Four files are saved.

Chemflo Output


The following graphs may be presented:

  • Water Content vs. Distance
  • Matric Potential vs. Distance
  • Flux of Water vs. Distance
  • Driving Force for Water vs. Distance
  • Water Content vs. Time at Specified Depth
  • Matric Potential vs. Time at Specified Depth
  • Flux of Water vs. Time at Specified Depth
  • Driving Force vs. Time at Specified Depth
  • Cumulative Flux of Water Passing Specified Depth vs. Time
  • Cumulative (Net) Inflow vs. Time


The following tables may be presented:

  • Surface Fluxes
  • Matric Potential vs. Distance
  • Water Content vs. Distance
  • Water Flux vs. Distance
  • Water Driving Force vs. Distance
  • Hydraulic Conductivity vs. Distance

Chemflo Overview
Chemflo Detailed Description
Chemflo Prices

This product is no longer commercially available. However, it can be downloaded for free on our download site.


Please reference the link below for updated products with simular functionality.

Simular Products catagories:

Scientific Software Group    P.O. Box 708188   Sandy, Utah 84070
Phone (801) 208-3011   Toll Free (U.S.) 1-866-620-9214    Fax (801) 302-1160    E-mail
Copyright 1998   Scientific Software Group    All rights reserved