UCODE
A COMPUTER CODE FOR UNIVERSAL INVERSE MODELING
Order No: FOS 95
Version 3.062: May 2004

UCODE is a universal inversion code, which was jointly sponsored by the U.S. Department of Defense, International Ground Water Modeling Center, and the U.S. Geological Survey. UCODE performs inverse modeling, posed as a parameter-estimation problem, using nonlinear regression. UCODE is not limited to inverting ground-water problems.

UCODE performs inverse modeling, and was specifically developed to:

  1. manipulate application model input files and read values from application model output files
  2. compare user-provided observations with equivalent simulated values derived from the values read from the application model output files using a weighted least- squares objective function
  3. use a modified Gauss- Newton method to adjust the value of user selected input parameters in an iterative procedure to minimize the value of the weighted least-squares objective function
  4. report the estimated parameter values
  5. calculate and print statistics to be used to
Any application model or set of models can be used; the only requirement is that they have numerical (ASCII or text only) input and output files and that the numbers in these files have sufficient significant digits. Application models can include pre- processors and post-processors, as well as models related to the processes of interest (physical, chemical, and so on), making UCODE extremely powerful. An estimated parameter can be a quantity that appears in the input files of the application model(s), or that can be used in conjunction with user-defined functions to calculate a quantity that appears in the input files. An observation can be any quantity for which a simulated equivalent value can be produced for comparison with the observation. UCODE can produce simulated equivalent values using data that appear in the application model output files and a set of additive and multiplicative functions defined by the user. Prior, or direct, information on estimated parameters also can be included in the regression. The nonlinear regression problem is solved by minimizing a weighted least- squares bjective function with respect to the parameter values using a modified Gauss-Newton method. Sensitivities needed for the method are calculated approximately by forward or central differences, and problems and solutions related to this approximation are discussed. UCODE is intended for use on any computer operating system: it consists of algorithms programmed in perl, a freeware language designed for text manipulation, and Fortran90, which efficiently performs numerical calculations.

Authors: Eileen Poeter and Mary Hill


UCODE is a public domain program. Click for free download, or order ($50) to receive hard copy by mail.