Namespaces | Typedefs | Functions
MarmotAutomaticDifferentiation.h File Reference
#include "Marmot/MarmotTensor.h"
#include "autodiff/forward/dual.hpp"
#include "autodiff/forward/dual/eigen.hpp"
#include <autodiff/forward/dual/dual.hpp>
#include <functional>
Include dependency graph for MarmotAutomaticDifferentiation.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Marmot
 This file includes functions needed for calculations with stress and strain tensors written in voigt notation.
 
 Marmot::AutomaticDifferentiation
 

Typedefs

using Marmot::AutomaticDifferentiation::scalar_to_scalar_function_type = std::function< dual(const dual &) >
 
using Marmot::AutomaticDifferentiation::scalar_to_scalar_function_type_2nd = std::function< dual2nd(const dual2nd &) >
 
using Marmot::AutomaticDifferentiation::vector_to_vector_function_type = std::function< VectorXdual(const VectorXdual &X) >
 
using Marmot::AutomaticDifferentiation::vector_to_vector_function_type_dual = std::function< VectorXdual(const VectorXdual &X) >
 

Functions

dual2nd Marmot::AutomaticDifferentiation::shiftTo2ndOrderDual (const dual &x)
 
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)