Go to the documentation of this file.
20 params.addClassDescription(
"Compute state (stress and other quantities such as plastic "
21 "strains and internal parameters) using an iterative process, as well "
22 "as Cosserat versions of these quantities. Only elasticity is "
23 "currently implemented for the Cosserat versions."
24 "Combinations of creep models and plastic models may be used");
29 const InputParameters & parameters)
32 _elastic_flexural_rigidity_tensor(
33 getMaterialProperty<
RankFourTensor>(
"elastic_flexural_rigidity_tensor")),
34 _couple_stress(declareProperty<
RankTwoTensor>(
"couple_stress")),
35 _couple_stress_old(getMaterialPropertyOld<
RankTwoTensor>(
"couple_stress")),
36 _Jacobian_mult_couple(declareProperty<
RankFourTensor>(
"couple_Jacobian_mult")),
37 _compliance(getMaterialProperty<
RankFourTensor>(_base_name +
"compliance_tensor"))
54 if (_fe_problem.currentlyComputingJacobian())
73 for (
unsigned i_rmm = 1; i_rmm <
_num_models; ++i_rmm)
81 unsigned model_number,
87 const RankTwoTensor applied_strain_increment = elastic_strain_increment;
90 elastic_strain_increment,
91 inelastic_strain_increment,
92 consistent_tangent_operator);
95 elastic_strain_increment = applied_strain_increment - inelastic_strain_increment;
ComputeMultipleInelasticStress computes the stress, the consistent tangent operator (or an approximat...
const MaterialProperty< RankFourTensor > & _elasticity_tensor
Elasticity tensor material property.
MaterialProperty< RankFourTensor > & _Jacobian_mult_couple
derivative of couple-stress w.r.t. curvature
MaterialProperty< RankTwoTensor > & _stress
Stress material property.
static InputParameters validParams()
const unsigned _num_models
number of plastic models
virtual void computeQpStress() override
Compute the stress and store it in the _stress material property for the current quadrature point.
MaterialProperty< RankFourTensor > & _Jacobian_mult
derivative of stress w.r.t. strain (_dstress_dstrain)
const MaterialProperty< RankTwoTensor > & _rotation_increment
Rotation increment material property.
const MaterialProperty< RankTwoTensor > & _curvature
The Cosserat curvature strain.
const bool _perform_finite_strain_rotations
after updateQpState, rotate the stress, elastic_strain, inelastic_strain and Jacobian_mult using _rot...
virtual void initQpStatefulProperties() override
virtual void computeAdmissibleState(unsigned model_number, RankTwoTensor &elastic_strain_increment, RankTwoTensor &inelastic_strain_increment, RankFourTensor &consistent_tangent_operator) override
The current Cosserat models do not know they might be using the "host" version of the elasticity tens...
std::vector< RankFourTensor > _consistent_tangent_operator
the consistent tangent operators computed by each plastic model
virtual void computeQpStress() override
Compute the stress and store it in the _stress material property for the current quadrature point.
ComputeMultipleInelasticStress computes the stress, the consistent tangent operator (or an approximat...
const MaterialProperty< RankFourTensor > & _compliance
Inverse of the elasticity tensor.
registerMooseObject("TensorMechanicsApp", ComputeMultipleInelasticCosseratStress)
static InputParameters validParams()
virtual void computeQpJacobianMult() override
Using _elasticity_tensor[_qp] and the consistent tangent operators, _consistent_tangent_operator[....
virtual void initQpStatefulProperties() override
virtual void computeAdmissibleState(unsigned model_number, RankTwoTensor &elastic_strain_increment, RankTwoTensor &inelastic_strain_increment, RankFourTensor &consistent_tangent_operator)
Given a trial stress (_stress[_qp]) and a strain increment (elastic_strain_increment) let the model_n...
defineLegacyParams(ComputeMultipleInelasticCosseratStress)
const MaterialProperty< RankFourTensor > & _elastic_flexural_rigidity_tensor
The Cosserat elastic flexural rigidity tensor.
MaterialProperty< RankTwoTensor > & _couple_stress
the Cosserat couple-stress
ComputeMultipleInelasticCosseratStress(const InputParameters ¶meters)
enum ComputeMultipleInelasticStress::TangentOperatorEnum _tangent_operator_type