JUK1
|
#include <array>
#include <concepts>
#include <tuple>
#include <cmath>
#include <functional>
#include <iostream>
Go to the source code of this file.
Namespaces | |
AutoDifferentiation | |
a namespace to hold the messiness of my auto-differentiator | |
Functions | |
template<typename ValType , size_t NumVars> | |
AutoDifferentiation::requires (std::is_arithmetic< ValType >::value &&NumVars >=0) struct DiffVar | |
template<typename ValType , size_t NumVars, typename F1 , typename F2 > | |
AutoDifferentiation::requires (std::is_arithmetic< ValType >::value &&NumVars >=0) const expr auto diffFunc(const DiffVar< ValType | |
AutoDifferentiation::while (it1 !=toRet.diffVars.end() &&it2 !=arg.diffVars.end()) | |
DiffVar< ValType, NumVars > | AutoDifferentiation::toRet (derivEval) |
template<typename ValType , size_t NumVars, typename OT > | |
AutoDifferentiation::requires (std::is_arithmetic< ValType >::value &&NumVars >=0) &&(!std | |
DiffVar< ValType, NumVars > | AutoDifferentiation::toRet (func(arg.var, exponent.var)) |
DiffVar< ValType, NumVars > | AutoDifferentiation::toRet (funcResult) |
Variables | |
template<typename RT , typename LT , typename OT > | |
concept | AutoDifferentiation::MultipliableResult |
template<typename RT , typename LT , typename OT > | |
concept | AutoDifferentiation::AddableResult |
template<typename RT , typename LT , typename OT > | |
concept | AutoDifferentiation::SubtractableResult |
template<typename RT , typename LT , typename OT > | |
concept | AutoDifferentiation::DivisableResult |
NumVars & | AutoDifferentiation::arg |
NumVars F1 | AutoDifferentiation::func |
NumVars F1 F2 | AutoDifferentiation::deriv |
auto | AutoDifferentiation::it1 = toRet.diffVars.begin() |
auto | AutoDifferentiation::it2 = arg.diffVars.begin() |
auto | AutoDifferentiation::derivEval = deriv(arg.var) |
return | AutoDifferentiation::toRet |
toRet | AutoDifferentiation::var = derivEval |
NumVars DiffVar< ValType, NumVars > | AutoDifferentiation::exponent |
auto | AutoDifferentiation::it3 = exponent.diffVars.begin() |