Automatic Differentiation and Adjoint Calculation Softwares

up arrow
This theme is coordinated by To Be Determined.

Variational formulations of data assimilation problems require the calculation of the gradient of the cost function. For most real problems (i.e. caracterized by a significant number of degrees of freedom), its direct computation is not affordable by any computer, even in a remote future. The adjoint method is an elegant way to circumvent the problem by providing the gradient at the cost of few model integrations. This requires the computation of the "backward" model, the so-called adjoint model. A general introduction, although illustrated with TAPENADE application, to the automatic differentiation technique can be found here.
Softwares have been developped in the past few years to generate automatically the derivatives, the adjoint and the tangent linear of a model. The two main approaches are:

A quite exhaustive list of such softwares can be found here (on the AutoDiff website)
Here are some of the most importants, some of them beeing used within SAMA group:

Code Generation Tools :
"YAO": developped by LOCEAN (IPSL) pdf file
"TAPENADE": developped by INRIA Sophia-Antipolis Link pdf file OnLine
"TAF" et "TAC++" (commercials): developped by FastOp Link pdf file
"ADIFOR" and "ADIC": developped by the Center for Research on Parallel Computation, Rice Univ., Texas and the Maths & Comp Science Division,Argonne National Laboratory Link ADIC ADIFOR

Operator Overloading Tools :
"NAGf95" with autom differenciation (commercial): developped by the Univ. of Hertfordshire, Hatfield Link1 Link2
"ADOL-C": developped by the Dresden Univ. of Technology Link pdf file & Code

up arrow