LANS Research

Adjoint Compiler Technolo

ACTS : Adjoint Compiler

Paul Hovland

Goals: The Adjoint Compiler Technology & Standards (ACTS) project aims to provide scientists, engineers, academics, and students with techniques, tools, reference projects, and easily accessible expertise allowing for new approaches to investigating numerical models of real-world problems based on mathematically precise derivative information. OpenAD is a new tool for automatic differentiation (AD) of numerical computer programs that is being developed as part of the ACTS project.

Significance: The two main goals for this project include: (1) the development of a generalpurpose source transformation tool that can generate adjoint codes of numerical simulation programs automatically, especially generation of an adjoint for the MIT general circulation model; (2) creation of an open platform for easy implementation and testing of source transformation algorithms including support for codes written in various programming languages, such as C and Fortran, via a language-independent abstract intermediate representation and well-defined programming interfaces.

Accomplishments: This project is in its final stage with three major accomplishments documented. (1) It developed a number of new algorithms and complex software-technological solutions for the implementation of OpenAD, an open source framework for automatic differentiation. (2) Using this framework it derived the OpenAD/F tool for the generation of tangent-linear and adjoint models of Fortran code. (3) The OpenAD/F tool was successfully applied to a number of test problems, among them the MIT general circulation model.