Next:
OPTIMA90
Up: Contents
Previous:
ADOL-F
SYNOPSIS:
IMAS derives the tangent-linear and adjoint code to a given Fortran
program semi-automatically, using an interpreter approach.
WHOM TO CONTACT:
Andreas Rhodin
GKSS Research Center
Max-Plank Strasse
D-21502 Geesthacht
Germany
Tel.: 49 4152 87 1559
FAX: 49 4152 87 1565
e-mail: rhodin@gkss.de
www: http://w3g.gkss.de/G/imashome
FUNCTIONALITY:
IMAS is an Integrated Modeling and Analysis System for the solution of
control problems. It provides algorithms for model inversion (data
assimilation, parameter estimation, optimization), sensitivity
studies, and the estimation of error covariances. The system derives
the tangent-linear and adjoint code to a given Fortran 77 or
Fortran 90 program semi-automatically, using an interpreter approach.
IMAS is written in Fortran 90 and makes use of object-oriented
programming techniques.
HIGHLIGHTS:
- Automatic differentiation by an interpreter: The
variables of the program must not be declared as REAL variables, but
as variables of derived type. The operations (e.g. +,-,*)
on this type are overloaded. They perform the additional task of
writing a ``tape'' with operations performed and the values of the
variables involved in these operations. This tape may be read later
by an interpreter that performs the tangent-linear or adjoint
operations and thus embodies the tangent-linear or adjoint model,
respectively.
- Optimization and test algorithms: The original program
has to be augmented by statements indicating the control variables
and the result variables. These statements have optional parameters
in order to pass additional information to the system, for example about
constraints, scaling, prior information about the control variables,
and data that may be compared to the results in a least square
sense. The system provides algorithms that use this
informations and perform optimizations, sensitivity studies, and
estimation of error covariances.
- Modular design: IMAS has a modular design in order to
allow the easy exchange of the forward model and of the basic data
types. The respective modules can be exchanged independently from
the other parts of the code. Thus the derived data types and the
basic operations can easily be adapted to a specific model. The
nonlinear model can be changed without recompiling the other
modules, which are provided in a library. Advanced data types for
large applications or special purposes (CFD-codes) are available or
under development.
Next:
OPTIMA90
Up: Contents
Previous:
ADOL-F