Computer Programs
ESTS0848 DDASAC.
last modified: 07-APR-1997 | catalog | categories | new | search |

ESTS0848 DDASAC.

DDASAC, Double-Precision Differential or Algebraic Sensitivity Analysis

top ]
1. NAME OR DESIGNATION OF PROGRAM:  DDASAC (Double Precision
Differential/Algebraic Sensitivity Analysis Code).
top ]
2. COMPUTERS

To submit a request, click below on the link of the version you wish to order. Rules for end-users are available here.

Program name Package id Status Status date
DDASAC ESTS0848/01 Tested 07-APR-1997

Machines used:

Package ID Orig. computer Test computer
ESTS0848/01 Many Computers DEC VAX 6000
top ]
3. DESCRIPTION OF PROGRAM OR FUNCTION

DDASAC solves nonlinear initial-value problems involving stiff implicit systems of ordinary  differential and algebraic equations. Purely algebraic nonlinear systems can also be solved, given an initial guess within the region of attraction of a solution. Options include automatic reconciliation of inconsistent initial states and derivatives, automatic initial step selection, direct concurrent parametric sensitivity analysis, and stopping at a prescribed value of any user-defined functional of the current solution vector. Local error  control (in the max-norm or the 2-norm) is provided for the state vector and can include the sensitivities on request.
top ]
4. METHOD OF SOLUTION

Reconciliation of initial conditions is done with a damped Newton algorithm adapted from Bain and Stewart (1991). Initial step selection is done by the first-order algorithm of Shampine (1987), extended here to differential-algebraic equation systems. The solution is continued with the DASSL predictor- corrector algorithm (Petzold 1983, Brenan et al. 1989) with the initial acceleration phase detected and with row scaling of the Jacobian added. The backward-difference formulas for the predictor and corrector are expressed in divide-difference form, and the fixed-leading-coefficient form of the corrector (Jackson and Sacks-Davis 1980, Brenan et al. 1989) is used. Weights for error tests are updated in each step with the user's tolerances at the predicted state. Sensitivity analysis is performed directly on the corrector equations as given by Catacotsios and Stewart (1985) and is extended here to the initialization when needed.
top ]
5. RESTRICTIONS ON THE COMPLEXITY OF THE PROBLEM

This algorithm, like DASSL, performs well on differential-algebraic systems of index 0 and 1 but not on higher-index systems; see Brenan et al. (1989). The user assigns the work array lengths and the output unit. The machine number range and precision are determined at run time by a call to the LAPACK subroutine DLAMCH.
top ]
6. TYPICAL RUNNING TIME

Each of the examples has been run in less than 1 minute on a 486/33 personal computer.
top ]
7. UNUSUAL FEATURES OF THE PROGRAM

Parametric sensitivity analysis; automatic reconciliation of initial states and derivatives; row scaling of the Jacobian to improve numerical stability; flexible error control (see Method of Solution), and accurate stopping on a designated value of a functional of the state vector. The latter feature allows repeated stopping on a value of a solution component  or derivative, to obtain a Poincari map of the solution.
top ]
8. RELATED AND AUXILIARY PROGRAMS

This code is an extension and revision of DASSL (Petzold 1983). An earlier version of DDASAC has been distributed by Sandia Livermore Laboratories for use in their package SENKIN. The new DDASAC is different in many respects, including the error controls, the initialization options, the calling sequence for DDASAC, the tasks of the user's subroutines, and the adoption of LAPACK in place of LINPACK for the linear algebra computations. The LAPACK and BLAS codes used by DDASAC are collected in a separate file LAPACK.FOR on the same diskette.
top ]
9. STATUS
Package ID Status date Status
ESTS0848/01 07-APR-1997 Tested at NEADB
top ]
10. REFERENCES:
ESTS0848/01, included references:
- W.E. Stewart, M. Caracotsios and J.P. Sorensen:
  Appendix A. DDASAC Software Package Documentation
  (April 7, 1995)
- Compiling and Linking Instructions
top ]
11. MACHINE REQUIREMENTS:  No special hardware requirements.
ESTS0848/01
NEA-DB installed the program on a DEC VAXStation 3100 M38.
top ]
12. PROGRAMMING LANGUAGE(S) USED
Package ID Computer language
ESTS0848/01 FORTRAN
top ]
13. OPERATING SYSTEM UNDER WHICH PROGRAM IS EXECUTED

DDASAC is in use  on a wide variety of machines and operating systems.
ESTS0848/01
NEA-DB installed the program under OpenVMS 6.1. The source code was compiled with the VAX Fortran compiler Version 6.2-108.
top ]
14. OTHER PROGRAMMING OR OPERATING INFORMATION OR RESTRICTIONS

The
notation Filename.FOR on the diskette denotes a Fortran source file, and Filename.DAT denotes the output data file. The .FOR files, when  compiled and linked, suffice for execution of the four test problems given in the users' manual, Appendix A. The .DAT files correspond to the printed outputs of the four examples, given in Appendix A. These results were computed on a VAXstation 3200.
top ]
15. NAME AND ESTABLISHMENT OF AUTHORS

    M. Caracotsios
    Amoco Chemical Company, Naperville, IL (United States)
    W.E. Stewart
    University of Wisconsin, Madison, WI (United States)
    L. Petzold
    University of Minnesota, Minneapolis, MN (United States)
top ]
16. MATERIAL AVAILABLE
ESTS0848/01
File name File description Records
ESTS0848_01.001 Information file 131
ESTS0848_01.002 Fortran source file for DDASAC 3134
ESTS0848_01.003 Fortran source file for LAPACK 6451
ESTS0848_01.004 Fortran source file for test #1 116
ESTS0848_01.005 Fortran source file for test #2 152
ESTS0848_01.006 Fortran source file for test #3 213
ESTS0848_01.007 Fortran source file for test #4 135
ESTS0848_01.008 Input data for test #1 18
ESTS0848_01.009 Input data for test #2 46
ESTS0848_01.010 Input data for test #3 40
ESTS0848_01.011 Input data for test #4 85
ESTS0848_01.012 Output from test #1 18
ESTS0848_01.013 Output from test #2 46
ESTS0848_01.014 Output from test #3 40
ESTS0848_01.015 Output from test #4 85
top ]
17. CATEGORIES
  • P. General Mathematical and Computing System Routines

Keywords: differential equations, sensitivity analysis.