PSyclone automatic differentiation module
PSyclone autodiff module is PSyclone’s prototype implementation of
source-to-source automatic differentiation. It takes generic Fortran code
and applies automatic differentiation in forward- (tangent) or reverse-
(adjoint) mode.
It is inspired by Tapenade (see Hascoet and Pascual[1] and [2]), which is also used to perform numerical tests of the transformations, and OpenAD (see Utke et al.[3]).
The general approach and transformations rules were adapted from Griewank and Walther[4].
Automatic differentiation
PSyclone autodiff module