Classes | Typedefs | Functions
Marmot::Materials::KelvinChain Namespace Reference

Classes

struct  Factorial
 
struct  Factorial< 0 >
 

Typedefs

typedef Eigen::VectorXd Properties
 
typedef Eigen::Map< PropertiesmapProperties
 
typedef Eigen::Matrix< double, 6, Eigen::Dynamic > StateVarMatrix
 
typedef Eigen::Map< StateVarMatrixmapStateVarMatrix
 

Functions

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

Typedef Documentation

◆ Properties

◆ mapProperties

◆ StateVarMatrix

typedef Eigen::Matrix< double, 6, Eigen::Dynamic > Marmot::Materials::KelvinChain::StateVarMatrix

◆ mapStateVarMatrix

Function Documentation

◆ evaluatePostWidderFormula()

template<int k>
double Marmot::Materials::KelvinChain::evaluatePostWidderFormula ( std::function< autodiff::Real< k, double >(autodiff::Real< k, double >) >  phi,
double  tau 
)

◆ computeElasticModuli()

template<int k>
Properties Marmot::Materials::KelvinChain::computeElasticModuli ( std::function< autodiff::Real< k, double >(autodiff::Real< k, double >) >  phi,
Properties  retardationTimes 
)

◆ generateRetardationTimes()

Properties Marmot::Materials::KelvinChain::generateRetardationTimes ( int  n,
double  min,
double  spacing 
)

◆ updateStateVarMatrix() [1/2]

void Marmot::Materials::KelvinChain::updateStateVarMatrix ( const double  dT,
Properties  elasticModuli,
Properties  retardationTimes,
Eigen::Ref< StateVarMatrix stateVars,
const Marmot::Vector6d dStress,
const Marmot::Matrix6d unitComplianceMatrix 
)

◆ evaluateKelvinChain()

void Marmot::Materials::KelvinChain::evaluateKelvinChain ( const double  dT,
Properties  elasticModuli,
Properties  retardationTimes,
StateVarMatrix  stateVars,
double &  uniaxialCompliance,
Marmot::Vector6d dStrain,
const double  factor 
)

◆ computeLambdaAndBeta()

void Marmot::Materials::KelvinChain::computeLambdaAndBeta ( double  dT,
double  tau,
double &  lambda,
double &  beta 
)

◆ updateStateVarMatrix() [2/2]

void Marmot::Materials::KelvinChain::updateStateVarMatrix ( double  dT,
Properties  elasticModuli,
Properties  retardationTimes,
Ref< StateVarMatrix stateVars,
const Vector6d dStress,
const Matrix6d unitComplianceMatrix 
)