Public Member Functions | List of all members
MarmotMaterialMechanical Class Referenceabstract

#include <MarmotMaterialMechanical.h>

Inheritance diagram for MarmotMaterialMechanical:
[legend]

Public Member Functions

virtual void computeStress (double *stress, double *dStress_dFNew, const double *FOld, const double *FNew, const double *timeOld, const double dT, double &pNewDT)=0
 
virtual void computePlaneStress (double *stress2D, double *dStress_dF2DNew, const double *FOld2D, const double *FNew2D, const double *timeOld, const double dT, double &pNewDT)
 
virtual void computeUniaxialStress (double *stress1D, double *dStress1D_dF1DNew, const double *F1DOld, const double *F1DNew, const double *timeOld, const double dT, double &pNewDT)
 
 MarmotMaterial (const double *materialProperties, int nMaterialProperties, int materialNumber)
 
- Public Member Functions inherited from MarmotMaterial
 MarmotMaterial (const double *materialProperties, int nMaterialProperties, int materialNumber)
 
virtual ~MarmotMaterial ()
 
virtual int getNumberOfRequiredStateVars ()=0
 
virtual void assignStateVars (double *stateVars, int nStateVars)
 
virtual StateView getStateView (const std::string &stateName)=0
 
double * getAssignedStateVars ()
 
int getNumberOfAssignedStateVars ()
 
virtual void initializeYourself ()
 

Additional Inherited Members

- Public Attributes inherited from MarmotMaterial
const int materialNumber
 
- Protected Attributes inherited from MarmotMaterial
const double * materialProperties
 
const int nMaterialProperties
 
double * stateVars
 
int nStateVars
 

Detailed Description

Abstract basic class for Mechanical materials. 'Mechanical' is meant in the 'most general sense', i.e., any material which describes a mechanical (cauchy) stress - deformation relationship (e.g, hyperelastic, hypoelastic, elasto-plastic, visco-elastic materials)

σ = f (σ, dxdX, t, .. ),

formulated incrementally as σ_np = f (σ_n, dxdX_n, dxdX_np, Δt, t_n, .. )

Algorithmic tangent: dσdF = d σ_np d (dxdX_np)

Format:

/ d σ_11 d F_00, d σ_11 d F_10, d σ_11 d F_20, d σ_11 d F_01, \ | d σ_22 d F_00, | | d σ_33 d F_00, | | ... | | ... | \ ... /

such that it can be interpreted as a column major 6x3x3 tensor (4th order, left voigt tensor)

Member Function Documentation

◆ computeStress()

virtual void MarmotMaterialMechanical::computeStress ( double *  stress,
double *  dStress_dFNew,
const double *  FOld,
const double *  FNew,
const double *  timeOld,
const double  dT,
double &  pNewDT 
)
pure virtual

◆ computePlaneStress()

void MarmotMaterialMechanical::computePlaneStress ( double *  stress2D,
double *  dStress_dF2DNew,
const double *  FOld2D,
const double *  FNew2D,
const double *  timeOld,
const double  dT,
double &  pNewDT 
)
virtual

◆ computeUniaxialStress()

void MarmotMaterialMechanical::computeUniaxialStress ( double *  stress1D,
double *  dStress1D_dF1DNew,
const double *  F1DOld,
const double *  F1DNew,
const double *  timeOld,
const double  dT,
double &  pNewDT 
)
virtual

◆ MarmotMaterial()

MarmotMaterial::MarmotMaterial

The documentation for this class was generated from the following files: