ADIFOR 3.0: Automatic Differentiation of Fortan 77 Programs
- 详细技术说明
- ADIFOR 2.0: Automatic Differentiation of Fortran 77 ProgramsTechnology ID: #10064Investigator: Dr. Alan CarleCountless scientists and engineers doing computational simulations desire the ability
- *Abstract
-
ADIFOR 2.0: Automatic Differentiation of Fortran 77 ProgramsTechnology ID: #10064Investigator: Dr. Alan CarleCountless scientists and engineers doing computational simulations desire the ability to change an input variable(s), and then retrieve the resulting output(s) quantities and the respective differential relationship(s). Mathematically, this means computing the derivatives of each variable with respect to the others. For the simplest systems, this computation can be trivial; not so for complex systems. Automatic differentiation is a technique for efficiently augmenting computer programs with statements for the computation of derivatives such as Jacobians and gradients, based on the chain rule of calculus. The Adifor 2.0 system developed by Rice scientist Alan Carle, uses automatic differentiation to compute first-order derivatives for Fortran 77 programs. When given a source code and the user's specification of dependent and independent variables, Adifor generates an augmented code that computes, in addition to the original result, the partial derivatives of all of the dependent variables with respect to all of the independent variables. Numerical codes that calculate not only a result, but also the derivatives of the variables with respect to each other, facilitate sensitivity analysis, inverse problem solving, and optimization. Adifor 2.0, which won the Wilkinson Prize for Numerical Software, is the only technology that exists for automatically differentiating complicated Fortran code. The Adifor 2.0 system has three major components. The Adifor 2.0 preprocessor parses the code, performs certain code normalizations, determines which variables have to be augmented with derivative objects, and generates derivative code with "template invocations" at call sites of Fortran 77 intrinsics. The ADIntrinsics system calls to Fortran 77 intrinsic templates into Fortran 77 code, guided by a template library defining how each intrinsic is to be translated. The SparsLinC library provides transparent support of sparsity in derivative computations. The use of Adifor in various fields has demonstrated that automatic differentiation applicable to arbitrary codes, produces reliable derivatives, and can result in considerable speedups compared to divided-difference approximations. Additional information available upon request.Patent Status: n/a
- 国家/地区
- 美国

欲了解更多信息,请点击 这里