OpenAD/F

OpenAD/F: A modular open-source tool for automatic differentiation of Fortran codes. The Open/ADF tool allows the evaluation of derivatives of functions defined by a Fortran program. The derivative evaluation is performed by a Fortran code resulting from the analysis and transformation of the original program that defines the function of interest. Open/ADF has been designed with a particular emphasis on modularity, flexibility, and the use of open source components. While the code transformation follows the basic principles of automatic differentiation, the tool implements new algorithmic approaches at various levels, for example, for basic block preaccumulation and call graph reversal. Unlike most other automatic differentiation tools, Open/ADF uses components provided by the Open/AD framework, which supports a comparatively easy extension of the code transformations in a language-independent fashion. It uses code analysis results implemented in the OpenAnalysis component. The interface to the language-independent transformation engine is an XML-based format, specified through an XML schema. The implemented transformation algorithms allow efficient derivative computations using locally optimized cross-country sequences of vertex, edge, and face elimination steps. Specifically, for the generation of adjoint codes, Open/ADF supports various code reversal schemes with hierarchical checkpointing at the subroutine level. As an example from geophysical fluid dynamics, a nonlinear time-dependent scalable, yet simple, barotropic ocean model is considered. OpenAD/F’s reverse mode is applied to compute sensitivities of some of the model’s transport properties with respect to gridded fields such as bottom topography as independent (control) variables. Report version published in Aachener Informatik Berichte, AIB-2007-14 (2007), par url{http://sunsite.informatik.rwth-aachen.de/Publications/AIB/2007/2007-14.pdf}.

This software is also peer reviewed by journal TOMS.


References in zbMATH (referenced in 21 articles , 1 standard article )

Showing results 1 to 20 of 21.
Sorted by year (citations)

1 2 next

  1. Maddison, James R.; Goldberg, Daniel N.; Goddard, Benjamin D.: Automated calculation of higher order partial differential equation constrained derivative information (2019)
  2. Naumann, Uwe: Adjoint code design patterns (2019)
  3. Hascoët, Laurent; Morlighem, M.: Source-to-source adjoint algorithmic differentiation of an ice sheet model written in C (2018)
  4. Mosenkis, Viktor; Naumann, Uwe: On lower bounds for optimal Jacobian accumulation (2018)
  5. Pascual, Valérie; Hascoët, Laurent: Mixed-language automatic differentiation (2018)
  6. Hückelheim, Jan Christian; Hascoët, Laurent; Müller, Jens-Dominik: Algorithmic differentiation of code with multiple context-specific activities (2017)
  7. Papoutsis-Kiachagias, E. M.; Giannakoglou, K. C.: Continuous adjoint methods for turbulent flows, applied to shape and topology optimization: industrial applications (2016)
  8. Sluşanschi, Emil I.; Dumitrel, Vlad: ADiJaC -- automatic differentiation of Java classfiles (2016)
  9. Zwicke, Florian; Knechtges, Philipp; Behr, Marek; Elgeti, Stefanie: Automatic implementation of material laws: Jacobian calculation in a finite element code with TAPENADE (2016)
  10. Rothe, Steffen; Erbts, Patrick; Düster, Alexander; Hartmann, Stefan: Monolithic and partitioned coupling schemes for thermo-viscoplasticity (2015)
  11. Rothe, Steffen; Hartmann, Stefan: Automatic differentiation for stress and consistent tangent computation (2015) ioport
  12. Li, Xiang; Zhang, Dongxiao: A backward automatic differentiation framework for reservoir simulation (2014)
  13. Maddison, J. R.; Farrell, P. E.: Rapid development and adjoining of transient finite element models (2014)
  14. Hascoet, Laurent; Pascual, Valérie: The Tapenade automatic differentiation tool, principles, model, and specification (2013)
  15. Cole-Mullen, Heather; Lyons, Andrew; Utke, Jean: Storing versus recomputation on multiple DAGs (2012)
  16. Lyons, Andrew; Safro, Ilya; Utke, Jean: Randomized heuristics for exploiting Jacobian scarcity (2012)
  17. Reed, James A.; Utke, Jean; Abdel-Khalik, Hany S.: Combining automatic differentiation methods for high-dimensional nonlinear models (2012)
  18. Reynolds, Daniel R.; Samtaney, Ravi: Sparse Jacobian construction for mapped grid visco-resistive magnetohydrodynamics (2012)
  19. Utke, Jean; Naumann, Uwe; Fagan, Mike; Tallent, Nathan; Strout, Michelle Mills; Heimbach, Patrick; Hill, Chris; Wunsch, Carl: OpenAD/F: A modular open-source tool for automatic differentiation of Fortran codes. (2008)
  20. Hovland, Paul D.; Norris, Boyana; Strout, Michelle Mills; Utke, Jean: Term graphs for computing derivatives in imperative languages (2007)

1 2 next