Go to the documentation of this file.
33 #include "autodiff/forward/dual.hpp"
34 #include <Eigen/src/Core/Map.h>
49 using MarmotMaterialHypoElasticAD::MarmotMaterialHypoElasticAD;
63 const autodiff::dual* dStrain,
64 const double* timeOld,
66 double& pNewDT )
override;
72 { .name =
"kappa", .length = 1 },
88 template <
typename T >
95 template <
typename T >
96 T
f(
const T rho_,
const double kappa_ )
100 template <
typename T >
101 T
g(
const T rhoTrial,
const double kappa,
const T deltaKappa )
103 const T kappa_ = kappa + deltaKappa;
int getNumberOfRequiredStateVars() override
Definition: ADVonMises.h:82
constexpr double sqrt2_3
Definition: MarmotConstants.h:51
const double & yieldStress
Definition: ADVonMises.h:53
T fy(T kappa_)
Definition: ADVonMises.h:89
double exp(double x)
Definition: MarmotMath.cpp:13
Implementation of a isotropic J2-plasticity material for 3D stress states using automatic differentia...
Definition: ADVonMises.h:47
constexpr double sqrt6
Definition: MarmotConstants.h:55
Definition: MarmotKelvinChain.h:34
Definition: ADVonMises.h:68
static const auto layout
Definition: ADVonMises.h:71
A convenience auxiliary class for managing multiple statevars with arbitrary length in a single conse...
Definition: MarmotStateVarVectorManager.h:37
const double & deltaYieldStress
Definition: ADVonMises.h:55
const double & E
Definition: ADVonMises.h:51
double & kappa
Definition: ADVonMises.h:75
Definition: MarmotUtils.h:29
This file includes functions needed for calculations with stress and strain tensors written in voigt ...
Definition: MarmotTesting.h:37
T g(const T rhoTrial, const double kappa, const T deltaKappa)
Definition: ADVonMises.h:101
void assignStateVars(double *stateVars, int nStateVars) override
Definition: ADVonMises.cpp:37
std::unique_ptr< ADVonMisesModelStateVarManager > managedStateVars
Definition: ADVonMises.h:80
static StateVarVectorLayout makeLayout(const std::vector< StateVarEntryDefinition > &theEntries)
generate the statevar vector layout from a list of entries, defined by name and length
Definition: MarmotStateVarVectorManager.h:74
Definition: MarmotMaterialHypoElasticAD.h:32
StateView getStateView(const std::string &result) override
Definition: ADVonMises.cpp:46
const double G
Definition: ADVonMises.h:57
void computeStressAD(autodiff::dual *stress, const autodiff::dual *dStrain, const double *timeOld, const double dT, double &pNewDT) override
Definition: ADVonMises.cpp:50
ADVonMises(const double *materialProperties, int nMaterialProperties, int materialNumber)
Definition: ADVonMises.cpp:22
double * stateVars
Definition: MarmotMaterial.h:38
T f(const T rho_, const double kappa_)
Definition: ADVonMises.h:96
const double & delta
Definition: ADVonMises.h:56
const double & HLin
Definition: ADVonMises.h:54
ADVonMisesModelStateVarManager(double *theStateVarVector)
Definition: ADVonMises.h:77
const double & nu
Definition: ADVonMises.h:52
const int materialNumber
Definition: MarmotMaterial.h:42
int nStateVars
Definition: MarmotMaterial.h:39
const int nMaterialProperties
Definition: MarmotMaterial.h:36
const double * materialProperties
Definition: MarmotMaterial.h:35
double & find(const std::string &name) const
get the reference to the first array element of an entry in the statevar vector
Definition: MarmotStateVarVectorManager.h:48