Computer Science Technical Reports
CS at VT

DENSERKS: Fortran sensitivity solvers using continuous, explicit Runge-Kutta schemes

Alexe, Mihai and Sandu, Adrian (2007) DENSERKS: Fortran sensitivity solvers using continuous, explicit Runge-Kutta schemes. Technical Report TR-07-34, Computer Science, Virginia Tech.

Full text available as:
PDF - Requires Adobe Acrobat Reader or other PDF viewer.
denserks.pdf (363178)


DENSERKS is a Fortran sensitivity equation solver package designed for integrating models whose evolution can be described by ordinary differential equations (ODEs). A salient feature of DENSERKS is its support for both forward and adjoint sensitivity analyses, with built-in integrators for both first and second order continuous adjoint models. The software implements explicit Runge-Kutta methods with adaptive timestepping and high-order dense output schemes for the forward and the tangent linear model trajectory interpolation. Implementations of six Runge-Kutta methods are provided, with orders of accuracy ranging from two to eight. This makes DENSERKS suitable for a wide range of practical applications. The use of dense output, a novel approach in adjoint sensitivity analysis solvers, allows for a high-order cost-effective interpolation. This is a necessary feature when solving adjoints of nonlinear systems using highly accurate Runge-Kutta methods (order five and above). To minimize memory requirements and make long-time integrations computationally efficient, DENSERKS implements a two-level checkpointing mechanism. The code is tested on a selection of problems illustrating first and second order sensitivity analysis with respect to initial model conditions. The resulting derivative information is also used in a gradient-based optimization algorithm to minimize cost functionals dependent on a given set of model parameters.

Item Type:Departmental Technical Report
Keywords:ODEs, Runge-Kutta methods, dense output, sensitivity analysis, tangent linear models, adjoint models, quadrature equations
Subjects:Computer Science > Mathematical Software
ID Code:996
Deposited By:Alexe, Mr. Mihai
Deposited On:11 October 2007