12 #include "libmesh/quadrature.h" 21 "Compute a strain increment and rotation increment for small strains.");
33 Real volumetric_strain = 0.0;
92 total_strain_increment = 0.5 * (
A +
A.transpose());
const QBase *const & _qrule
const Real & _current_elem_volume
const MaterialProperty< RankTwoTensor > & _total_strain_old
MaterialProperty< RankTwoTensor > & _deformation_gradient
const MooseArray< Real > & _JxW
virtual void computeProperties() override
MaterialProperty< RankTwoTensor > & _strain_increment
static RankTwoTensorTempl initializeFromRows(const libMesh::TypeVector< Real > &row0, const libMesh::TypeVector< Real > &row1, const libMesh::TypeVector< Real > &row2)
static InputParameters validParams()
registerMooseObject("SolidMechanicsApp", ComputeIncrementalSmallStrain)
MaterialProperty< RankTwoTensor > & _mechanical_strain
virtual void computeTotalStrainIncrement(RankTwoTensor &total_strain_increment)
Computes the current and old deformation gradients and passes back the total strain increment tensor...
MaterialProperty< RankTwoTensor > & _strain_rate
static InputParameters validParams()
void subtractEigenstrainIncrementFromStrain(RankTwoTensor &strain)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
ComputeIncrementalSmallStrain defines a strain increment and rotation increment (=1), for small strains.
const MaterialProperty< RankTwoTensor > & _mechanical_strain_old
std::vector< const VariableGradient * > _grad_disp_old
ComputeIncrementalStrainBase is the base class for strain tensors using incremental formulations...
const bool _volumetric_locking_correction
MaterialProperty< RankTwoTensor > & _rotation_increment
const MooseArray< Real > & _coord
ComputeIncrementalSmallStrain(const InputParameters ¶meters)
MaterialProperty< RankTwoTensor > & _total_strain
std::vector< const VariableGradient * > _grad_disp
Gradient of displacements.