USGS - science for a changing world

Techniques and Methods 6-E1

About USGS / Science Topics / Maps Product & Publications / Education / Publications FAQ

> > Pubs Warehouse > TM6E1

JUPITER: Joint Universal Parameter IdenTification and Evaluation of Reliability — An Application Programming Interface (API) for Model Analysis

Chapter 1 of
Book 6. Modeling Techniques, Section E. Model analysis

Prepared in cooperation with the U.S. Environmental Protection Agency

Edited by Edward R. Banta, Eileen P. Poeter, John E. Doherty, and Mary C. Hill

Report in PDF format (2,182 KB)

Software Download

Color photograph of Jupiter.


The Joint Universal Parameter IdenTification and Evaluation of Reliability Application Programming Interface (JUPITER API) improves the computer programming resources available to those developing applications (computer programs) for model analysis.

The JUPITER API consists of eleven Fortran-90 modules that provide for encapsulation of data and operations on that data. Each module contains one or more entities: data, data types, subroutines, functions, and generic interfaces. The modules do not constitute computer programs themselves; instead, they are used to construct computer programs. Such computer programs are called applications of the API. The API provides common modeling operations for use by a variety of computer applications.

The models being analyzed are referred to here as process models, and may, for example, represent the physics, chemistry, and(or) biology of a field or laboratory system. Process models commonly are constructed using published models such as MODFLOW (Harbaugh et al., 2000; Harbaugh, 2005), MT3DMS (Zheng and Wang, 1996), HSPF (Bicknell et al., 1997), PRMS (Leavesley and Stannard, 1995), and many others. The process model may be accessed by a JUPITER API application as an external program, or it may be implemented as a subroutine within a JUPITER API application . In either case, execution of the model takes place in a framework designed by the application programmer. This framework can be designed to take advantage of any parallel processing capabilities possessed by the process model, as well as the parallel-processing capabilities of the JUPITER API.

Model analyses for which the JUPITER API could be useful include, for example:

  1. Compare model results to observed values to determine how well the model reproduces system processes and characteristics.
  2. Use sensitivity analysis to determine the information provided by observations to parameters and predictions of interest.
  3. Determine the additional data needed to improve selected model predictions.
  4. Use calibration methods to modify parameter values and other aspects of the model.
  5. Compare predictions to regulatory limits.
  6. Quantify the uncertainty of predictions based on the results of one or many simulations using inferential or Monte Carlo methods.
  7. Determine how to manage the system to achieve stated objectives.

The capabilities provided by the JUPITER API include, for example, communication with process models, parallel computations, compressed storage of matrices, and flexible input capabilities. The input capabilities use input blocks suitable for lists or arrays of data. The input blocks needed for one application can be included within one data file or distributed among many files. Data exchange between different JUPITER API applications or between applications and other programs is supported by data-exchange files.

The JUPITER API has already been used to construct a number of applications. Three simple example applications are presented in this report. More complicated applications include the universal inverse code UCODE_2005 (Poeter et al., 2005), the multi-model analysis MMA (Eileen P. Poeter, Mary C. Hill, E.R. Banta, S.W. Mehl, and Steen Christensen, written commun., 2006), and a code named OPR_PPR (Matthew J. Tonkin, Claire R. Tiedeman, Mary C. Hill, and D. Matthew Ely, written communication, 2006).

This report describes a set of underlying organizational concepts and complete specifics about the JUPITER API. While understanding the organizational concept presented is useful to understanding the modules, other organizational concepts can be used in applications constructed using the JUPITER API.


For more information concerning the research in this report, contact:
Colorado Water Science Center, Director
U.S. Geological Survey
P.O. Box 25046, MS 415
Denver Federal Center
Denver, Colorado 80225-0046
Document Accessibility: Adobe Systems Incorporated has information about PDFs and the visually impaired. This information provides tools to help make PDF files accessible. These tools convert Adobe PDF documents into HTML or ASCII text, which then can be read by a number of common screen-reading programs that synthesize text as audible speech. In addition, an accessible version of Acrobat Reader 7.0 for Windows (English only), which contains support for screen readers, is available. These tools and the accessible reader may be obtained free from Adobe at Adobe Access.

Accessibility FOIA Privacy Policies and Notices

Take Pride in America logo logo U.S. Department of the Interior | U.S. Geological Survey
Page Contact Information: USGS Publishing Network
Page Last Modified:Friday, 02-Dec-2016 15:46:27 EST