Adept (C++ library)

Adept is a combined automatic differentiation and array software library for the C++ programming language. The automatic differentiation capability facilitates the development of applications involving mathematical optimization. Adept is notable for having applied the template metaprogramming technique of expression templates to speed-up the differentiation of mathematical statements. Along with the efficient way that it stores the differential information, this makes it significantly faster than most other C++ tools that provide similar functionality (e.g. ADOL-C, CppAD and FADBAD), although comparable performance has been reported for Stan and in some cases Sacado. Differentiation may be in forward mode, reverse mode (for use with a Quasi-Newton minimization scheme), or the full Jacobian matrix may be computed (for use with the Levenberg-Marquardt or Gauss-Newton minimization schemes).

Adept C++ Library
Developer(s)Robin Hogan
Stable release
2.1 / 5 February 2021 (2021-02-05)
Repository
Written inC++
Operating systemCross-platform
TypeLibrary
LicenseApache 2.0 (open source)
Websitewww.met.reading.ac.uk/clouds/adept/

Applications of Adept have included financial modeling, computational fluid dynamics, physical chemistry, parameter estimation and meteorology. Adept is free software distributed under the Apache License.

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.