Plugins
|
#include <skin_law.h>
Public Member Functions | |
virtual SmartPtr< MathTensor4< dim, dim, dim, dim > > | elasticityTensor () |
computes the elasticity tensor; commonly denoted by C More... | |
virtual SmartPtr< MathTensor4< dim, dim, dim, dim > > | elasticityTensor (const size_t ip, const MathMatrix< dim, dim > &GradU) |
virtual SmartPtr< MathTensor4< TDomain::dim, TDomain::dim, TDomain::dim, TDomain::dim > > | elasticityTensor (const size_t ip, const MathVector< dim > &x, const MathMatrix< dim, dim > &GradU) |
void | init () |
SkinMaterialLaw () | |
constructor More... | |
void | stressTensor (MathMatrix< dim, dim > &stressTens, const size_t ip, const MathMatrix< dim, dim > &GradU) |
computes the cauchy stress tensor sigma at an integration point 'ip' More... | |
void | stressTensor (MathMatrix< dim, dim > &stressTens, const size_t ip, const MathVector< dim > &x, const MathMatrix< dim, dim > &GradU) |
~SkinMaterialLaw () | |
Destructor. More... | |
void | set_hooke_elasticity_tensor (const number lambda, const number mu) |
void | set_hooke_elasticity_tensor_E_nu (const number E, const number nu) |
void | set_hooke_elasticity_tensor_plain_stress_E_nu (const number E, const number nu) |
void | set_hooke_elasticity_tensor_plain_strain_E_nu (const number E, const number nu) |
Public Member Functions inherited from ug::SmallStrainMechanics::IMaterialLaw< TDomain > | |
virtual void | attach_internal_vars (typename TDomain::grid_type &grid) |
virtual void | clear_attachments (typename TDomain::grid_type &grid) |
template<typename TFEGeom > | |
void | DisplacementGradient (MathMatrix< dim, dim > &GradU, const size_t ip, const TFEGeom &geo, const LocalVector &u) |
bool | elastTensIsConstant () |
virtual number | hardening_parameter (const size_t ip) |
IMaterialLaw () | |
constructor More... | |
virtual SmartPtr< MathMatrix< dim, dim > > | inelastic_strain_tensor (const size_t ip) |
virtual void | init_internal_vars (TBaseElem *elem, const size_t numIP) |
virtual void | internal_vars (TBaseElem *elem) |
bool | is_initialized () |
virtual bool | needs_to_add_jac_m () |
virtual number | plastic_multiplier (const size_t ip, const MathMatrix< dim, dim > &GradU) |
virtual void | update_internal_vars (const size_t ip, const MathMatrix< dim, dim > &GradU) |
virtual void | write_data_to_console (const number t) |
virtual | ~IMaterialLaw () |
destructor More... | |
Public Attributes | |
std::string | m_materialConfiguration |
Public Attributes inherited from ug::SmallStrainMechanics::IMaterialLaw< TDomain > | |
std::string | m_materialConfiguration |
Static Public Attributes | |
static const int | dim = TDomain::dim |
World dimension. More... | |
Static Public Attributes inherited from ug::SmallStrainMechanics::IMaterialLaw< TDomain > | |
static const int | dim = TDomain::dim |
World dimension. More... | |
Private Types | |
typedef IMaterialLaw< TDomain > | base_type |
Base class type. More... | |
Private Member Functions | |
void | strainTensor (MathMatrix< dim, dim > &strainTens, const MathMatrix< dim, dim > &GradU) |
Private Attributes | |
SmartPtr< MathTensor4< dim, dim, dim, dim > > | m_spElastTensorFunct |
elasticity tensor More... | |
Additional Inherited Members | |
Public Types inherited from ug::SmallStrainMechanics::IMaterialLaw< TDomain > | |
typedef domain_traits< TDomain::dim >::grid_base_object | TBaseElem |
base element type of associated domain More... | |
Protected Attributes inherited from ug::SmallStrainMechanics::IMaterialLaw< TDomain > | |
bool | m_bConstElastTens |
flag indicating, if elasticity tensor is constant More... | |
bool | m_bInit |
flag indicating, if material law has been initialized More... | |
The classical material law to describe linear elastic behavior for isotropic, homogeneous materials. This law is based on the assumption of small strains, since only the linearized strain tensor (commonly denoted with \epsilon) is used. With $u$ being the displacement vector, the strain tensor \epsilon is defined by
\epsilon = \frac{1}{2}(\nabla u + (\nabla u)^T),
i.e. higher orders of the gradient of u are neglected here (-> 'linearized strain tensor').
Additionally Hooke`s law assumes a linear connection of stresses and strains. Therefore, the stresses \sigma are described by a law of the form,
\sigma = C : \epsilon
with C being a constant tensor of rank 4, called 'ElasticityTensor'. \sigma denotes the cauchy-stress tensor, which is, just like the strain tensor \epsilon, a symmetric tensor of rank 2. ':' denotes the tensor contraction, in components,
\sigma_{ij} = C_{ijkl} \epsilon{kl}.
int | dim |
References:
std::string ug::SmallStrainMechanics::IMaterialLaw< TDomain >::m_materialConfiguration |