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

Go to the source code of this file.

Classes

struct  Marmot::Materials::KelvinChain::Factorial< N >
 
struct  Marmot::Materials::KelvinChain::Factorial< 0 >
 

Namespaces

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

Typedefs

typedef Eigen::VectorXd Marmot::Materials::KelvinChain::Properties
 
typedef Eigen::Map< Properties > Marmot::Materials::KelvinChain::mapProperties
 
typedef Eigen::Matrix< double, 6, Eigen::Dynamic > Marmot::Materials::KelvinChain::StateVarMatrix
 
typedef Eigen::Map< StateVarMatrix > Marmot::Materials::KelvinChain::mapStateVarMatrix
 

Functions

template<int k>
double Marmot::Materials::KelvinChain::evaluatePostWidderFormula (std::function< autodiff::Real< k, double >(autodiff::Real< k, double >) > phi, double tau)
 
template<int k>
Properties Marmot::Materials::KelvinChain::computeElasticModuli (std::function< autodiff::Real< k, double >(autodiff::Real< k, double >) > phi, Properties retardationTimes)
 
Properties Marmot::Materials::KelvinChain::generateRetardationTimes (int n, double min, double spacing)
 
void Marmot::Materials::KelvinChain::updateStateVarMatrix (const double dT, Properties elasticModuli, Properties retardationTimes, Eigen::Ref< StateVarMatrix > stateVars, const Marmot::Vector6d &dStress, const Marmot::Matrix6d &unitComplianceMatrix)
 
void Marmot::Materials::KelvinChain::evaluateKelvinChain (const double dT, Properties elasticModuli, Properties retardationTimes, StateVarMatrix stateVars, double &uniaxialCompliance, Marmot::Vector6d &dStrain, const double factor)
 
void Marmot::Materials::KelvinChain::computeLambdaAndBeta (double dT, double tau, double &lambda, double &beta)