![]() |
Typedefs | |
using | scalar_to_scalar_function_type = std::function< dual(const dual &) > |
using | scalar_to_scalar_function_type_2nd = std::function< dual2nd(const dual2nd &) > |
using | vector_to_vector_function_type = std::function< VectorXdual(const VectorXdual &X) > |
using | vector_to_vector_function_type_dual = std::function< VectorXdual(const VectorXdual &X) > |
using | vector_to_vector_function_type_dual2nd = std::function< VectorXdual2nd(const VectorXdual2nd &X) > |
Functions | |
dual2nd | shiftTo2ndOrderDual (const dual &x) |
VectorXdual2nd | shiftTo2ndOrderDual (const VectorXdual &X) |
template<size_t order, typename T , typename G > | |
auto & | valnode (const Dual< T, G > &dual) |
template<size_t order, typename T , typename G > | |
auto & | valnode (Dual< T, G > &dual) |
template<size_t order> | |
autodiff::HigherOrderDual< order+1, double > | increaseDualOrderWithShift (const autodiff::HigherOrderDual< order, double > &in) |
template<size_t order> | |
autodiff::HigherOrderDual< order - 1, double > | decreaseDualOrderWithShift (autodiff::HigherOrderDual< order, double > &in) |
template<size_t order> | |
Vector< HigherOrderDual< order+1, double >, -1 > | increaseDualOrderWithShift (const Vector< HigherOrderDual< order, double >, -1 > &in) |
double | df_dx (const scalar_to_scalar_function_type &f, const double &x) |
dual | df_dx (const scalar_to_scalar_function_type_2nd &f, const dual &x) |
MatrixXd | forwardMode (const vector_to_vector_function_type &F, const VectorXd &X) |
std::pair< VectorXd, MatrixXd > | jacobian (const vector_to_vector_function_type_dual &F, const VectorXd &X) |
std::pair< VectorXdual, MatrixXdual > | jacobian2nd (const vector_to_vector_function_type_dual2nd &F, const VectorXdual &X) |
using Marmot::AutomaticDifferentiation::scalar_to_scalar_function_type = typedef std::function< dual( const dual& ) > |
using Marmot::AutomaticDifferentiation::scalar_to_scalar_function_type_2nd = typedef std::function< dual2nd( const dual2nd& ) > |
using Marmot::AutomaticDifferentiation::vector_to_vector_function_type = typedef std::function< VectorXdual( const VectorXdual& X ) > |
using Marmot::AutomaticDifferentiation::vector_to_vector_function_type_dual = typedef std::function< VectorXdual( const VectorXdual& X ) > |
using Marmot::AutomaticDifferentiation::vector_to_vector_function_type_dual2nd = typedef std::function< VectorXdual2nd( const VectorXdual2nd& X ) > |
dual2nd Marmot::AutomaticDifferentiation::shiftTo2ndOrderDual | ( | const dual & | x | ) |
VectorXdual2nd Marmot::AutomaticDifferentiation::shiftTo2ndOrderDual | ( | const VectorXdual & | X | ) |
auto& Marmot::AutomaticDifferentiation::valnode | ( | const Dual< T, G > & | dual | ) |
auto& Marmot::AutomaticDifferentiation::valnode | ( | Dual< T, G > & | dual | ) |
autodiff::HigherOrderDual< order + 1, double > Marmot::AutomaticDifferentiation::increaseDualOrderWithShift | ( | const autodiff::HigherOrderDual< order, double > & | in | ) |
autodiff::HigherOrderDual< order - 1, double > Marmot::AutomaticDifferentiation::decreaseDualOrderWithShift | ( | autodiff::HigherOrderDual< order, double > & | in | ) |
Vector< HigherOrderDual< order + 1, double >, -1 > Marmot::AutomaticDifferentiation::increaseDualOrderWithShift | ( | const Vector< HigherOrderDual< order, double >, -1 > & | in | ) |
double Marmot::AutomaticDifferentiation::df_dx | ( | const scalar_to_scalar_function_type & | f, |
const double & | x | ||
) |
dual Marmot::AutomaticDifferentiation::df_dx | ( | const scalar_to_scalar_function_type_2nd & | f, |
const dual & | x | ||
) |
MatrixXd Marmot::AutomaticDifferentiation::forwardMode | ( | const vector_to_vector_function_type & | F, |
const VectorXd & | X | ||
) |
std::pair< VectorXd, MatrixXd > Marmot::AutomaticDifferentiation::jacobian | ( | const vector_to_vector_function_type_dual & | F, |
const VectorXd & | X | ||
) |
std::pair< VectorXdual, MatrixXdual > Marmot::AutomaticDifferentiation::jacobian2nd | ( | const vector_to_vector_function_type_dual2nd & | F, |
const VectorXdual & | X | ||
) |