|
| virtual void | attach_internal_vars (typename TDomain::grid_type &grid) |
| | use this method to make sure that all required attachments are attached
|
| |
| virtual void | clear_attachments (typename TDomain::grid_type &grid) |
| |
| SmartPtr< MathTensor4< TDomain::dim, TDomain::dim, TDomain::dim, TDomain::dim > > | elasticityTensor (const size_t ip, const MathMatrix< dim, dim > &GradU) |
| | computes the elasticity tensor; commonly denoted by C
|
| |
| virtual number | hardening_parameter (const size_t ip) |
| |
| virtual SmartPtr< MathMatrix< dim, dim > > | inelastic_strain_tensor (const size_t ip) |
| |
| void | init () |
| |
| virtual void | init_internal_vars (TBaseElem *elem, const size_t numIP) |
| |
| virtual void | internal_vars (TBaseElem *elem) |
| |
| virtual bool | needs_to_add_jac_m () |
| |
| virtual number | plastic_multiplier (const size_t ip, const MathMatrix< dim, dim > &GradU) |
| |
| | PrandtlReuss () |
| | constructor
|
| |
| void | set_bulk_modulus (const number bulkModulus) |
| | set-methods for material constants
|
| |
| void | set_hardening_behavior (int hard) |
| |
| void | set_hardening_exponent (const number hardExponent) |
| |
| void | set_hardening_modulus (const number hardModulus) |
| |
| void | set_initial_flow_stress (const number initialFlowStress) |
| |
| void | set_residual_flow_stress (const number resFlowStress) |
| |
| void | set_shear_modulus (const number shearModulus) |
| |
| void | set_tangent_precision (const number tanAccur) |
| | set precision of numerical approximation of the tangent
|
| |
| 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'
|
| |
| virtual void | update_internal_vars (const size_t ip, const MathMatrix< dim, dim > &GradU) |
| |
| virtual void | write_data_to_console (const number t) |
| |
| | ~PrandtlReuss () |
| | Destructor.
|
| |
| template<typename TFEGeom > |
| void | DisplacementGradient (MathMatrix< dim, dim > &GradU, const size_t ip, const TFEGeom &geo, const LocalVector &u) |
| |
| virtual SmartPtr< MathTensor4< dim, dim, dim, dim > > | elasticityTensor () |
| |
| virtual SmartPtr< MathTensor4< dim, dim, dim, dim > > | elasticityTensor (const size_t ip, const MathVector< dim > &x, const MathMatrix< dim, dim > &GradU) |
| |
| bool | elastTensIsConstant () |
| |
| | IMaterialLaw () |
| | constructor
|
| |
| bool | is_initialized () |
| |
| virtual void | stressTensor (MathMatrix< dim, dim > &stressTens, const size_t ip, const MathVector< dim > &x, const MathMatrix< dim, dim > &GradU) |
| |
| virtual | ~IMaterialLaw () |
| | destructor
|
| |
|
| void | ConstLaw (MathMatrix< dim, dim > &stressTens, const MathMatrix< dim, dim > &strainTens, const MathMatrix< dim, dim > &strial, const number &gamma, const MathMatrix< dim, dim > &normal) |
| |
| number | ExponentialHardening (const number strialnorm, const number alpha) |
| |
| void | Flowrule (MathMatrix< dim, dim > &strain_p_new, MathMatrix< dim, dim > &strain, number &gamma, MathMatrix< dim, dim > &strial, MathMatrix< dim, dim > &normal, const MathMatrix< dim, dim > &GradU, const MathMatrix< dim, dim > &strain_p_old_t, const number alpha) |
| |
| number | Hardening (const number alpha) |
| |
| number | Hardening_d (const number alpha) |
| |
| number | LinearHardening (const number flowcondtrial) |
| |
| number | PerfectPlasticity (const number flowcondtrial) |
| |
| void | strainTensor (MathMatrix< dim, dim > &strainTens, const MathMatrix< dim, dim > &GradU) |
| |
| void | StressTensor (MathMatrix< dim, dim > &stressTens, const MathMatrix< dim, dim > &GradU, const MathMatrix< dim, dim > &strain_p_old_t, const number alpha) |
| |
| void | Update_internal_vars (MathMatrix< dim, dim > &strain_p_new, number &alpha, const MathMatrix< dim, dim > &GradU, const MathMatrix< dim, dim > &strain_p_old_t) |
| |
template<typename TDomain>
class ug::SmallStrainMechanics::PrandtlReuss< TDomain >
This class implements a material law for small strain elastoplastic material behavior
It is supposed, that the linearized strain tensor could be decomposed additively:
eps = eps_e + eps_p.
The plastic behavior is described by a flow-condition and a flow-rule for the plastic evolution (\frac{\partial eps_p){\partial t} = ...). The flow-condition is of von-Mises-type and the flow-rule is associative. To treat the plastic equations we use the well-established return-mapping-algorithm. Its classical form is valid for the 3d-case and the plane strain-case, but not for the plane stress-case!
References:
-
J.C. Simo and T.J.R. Hughes. Computational Inelasticity. Springer, New York (1998), chapter 3.3.1
-
-
F.-J. Barthold, M. Schmidt and E. Stein. Error indicators and mesh refinements for
-
finite-element computations of elastoplastic deformations. Computational Mechanics Vol. 22, 225-238 (1998)
- Template Parameters
-