Auto Differentiation Dev Team
Auto Differentiation Dev Team
Accelerated Continuous Integration builds with CMake using the [Ninja generator](https://ninja-build.org/): - Faster multi-core builds on all platforms via efficient use of all cores - Fully parallel Windows MSBuild on multi-core...
`InterestRate` objects are often added / subtracted in the codebase without first checking if their conventions match. For example, there are several instances of code like this: ```c++ mu =...
Hi, We're struggling to understand why the coverage in a PR decreased in the overall coveralls reporting, even though the detailed numbers below suggest otherwise (and none of the test...
Added references to: - Website with background and resources on automatic differentiation: https://auto-differentiation.github.io/ - QuantLibRisks in C++ and Python - XAD in Python (AAD Library): https://pypi.org/project/xad/ - XAD in C++:...
Add a mode that allows to calculate multiple forward-mode derivatives at once, by tracking multiple derivatives in the active data type. The current data type has `value` and `derivative`, which...
At the moment, our CI/CD pipelines only test Intel-Mac and the SIMD compilation flags are only for the Intel Platform. We should add support for Apple Silicon (ARM-based), with the...
In some applications, the exact same calculations need to be carried out for different inputs repeatedly. Examples are Monte-Carlo simulation where the execution path (branches, etc.) is independent of the...
XAD should support [Eigen](https://eigen.tuxfamily.org/) data types and related linear algebra operations, calculating values and derivatives efficiently. Ideally, simply using an XAD type within Eigen vectors or matrices should work out...
Add higher-level functions to compute full Jacobians or Hessians, possibly in a multi-threaded fashion, which drive the underlying tape operations accordingly.
Allow rolling back multiple adjoints at once in the tape, e.g. for functions with multiple outputs. The idea is to have an adjoint matrix instead of a vector. Multiple adjoints...