33 #ifndef MAT_LAW_INTERFACE_H_
34 #define MAT_LAW_INTERFACE_H_
37 namespace SmallStrainMechanics{
42 template <
typename TDomain>
108 return spInelasticStrain;
119 template <
typename TFEGeom>
Definition: mat_law_interface.h:44
static const int dim
World dimension.
Definition: mat_law_interface.h:47
virtual number plastic_multiplier(const size_t ip, const MathMatrix< dim, dim > &GradU)
Definition: mat_law_interface.h:111
virtual SmartPtr< MathTensor4< dim, dim, dim, dim > > elasticityTensor()
Definition: mat_law_interface.h:84
virtual SmartPtr< MathTensor4< dim, dim, dim, dim > > elasticityTensor(const size_t ip, const MathMatrix< dim, dim > &GradU)=0
virtual void init_internal_vars(TBaseElem *elem, const size_t numIP)
Definition: mat_law_interface.h:97
bool m_bInit
flag indicating, if material law has been initialized
Definition: mat_law_interface.h:128
virtual SmartPtr< MathMatrix< dim, dim > > inelastic_strain_tensor(const size_t ip)
Definition: mat_law_interface.h:104
void DisplacementGradient(MathMatrix< dim, dim > &GradU, const size_t ip, const TFEGeom &geo, const LocalVector &u)
Definition: mat_law_interface_impl.h:45
virtual void update_internal_vars(const size_t ip, const MathMatrix< dim, dim > &GradU)
Definition: mat_law_interface.h:99
virtual void write_data_to_console(const number t)
Definition: mat_law_interface.h:101
virtual void stressTensor(MathMatrix< dim, dim > &stressTens, const size_t ip, const MathMatrix< dim, dim > &GradU)=0
bool elastTensIsConstant()
Definition: mat_law_interface.h:117
virtual SmartPtr< MathTensor4< dim, dim, dim, dim > > elasticityTensor(const size_t ip, const MathVector< dim > &x, const MathMatrix< dim, dim > &GradU)
Definition: mat_law_interface.h:79
virtual void stressTensor(MathMatrix< dim, dim > &stressTens, const size_t ip, const MathVector< dim > &x, const MathMatrix< dim, dim > &GradU)
Definition: mat_law_interface.h:69
IMaterialLaw()
constructor
Definition: mat_law_interface.h:54
bool m_bConstElastTens
flag indicating, if elasticity tensor is constant
Definition: mat_law_interface.h:131
virtual void clear_attachments(typename TDomain::grid_type &grid)
Definition: mat_law_interface.h:95
virtual void internal_vars(TBaseElem *elem)
Definition: mat_law_interface.h:98
std::string m_materialConfiguration
Definition: mat_law_interface.h:124
domain_traits< TDomain::dim >::grid_base_object TBaseElem
base element type of associated domain
Definition: mat_law_interface.h:50
bool is_initialized()
Definition: mat_law_interface.h:115
virtual number hardening_parameter(const size_t ip)
Definition: mat_law_interface.h:110
virtual void attach_internal_vars(typename TDomain::grid_type &grid)
Definition: mat_law_interface.h:94
virtual bool needs_to_add_jac_m()
Definition: mat_law_interface.h:88
virtual ~IMaterialLaw()
destructor
Definition: mat_law_interface.h:57