CoDiPack – Code Differentiation Package

CoDiPack is a C++-library that enables the computation of gradients in computer programs using Algorithmic Differentiation. It is based on the Operator Overloading approach and uses static polymorphism and expression templates, resulting in an extremely fast evaluation of adjoints or forward derivatives. It is specifically designed with HPC applications in mind.

Features:

  • Reverse and Forward mode derivatives.
  • Higher order derivatives.
  • MPI communication using Adjoint MPI.
  • Flexible memory handling (several implementations will be added in the future).
  • External function interface.

CoDiPack is released as Open-Source under GPL3.
Download: CoDiPack@github.com
Documentation and Tutorials can be found here.

Most recent stable version: 1.4
Current status of development branch: Build Status

Contact: codi@scicomp.uni-kl.de
Newsletter: codi-info@uni-kl.de
Lead Developers: Max Sagebaum, Tim Albring
Responsibility: Prof. Nicolas R. Gauger