12 #include "libmesh/quadrature.h" 16 ComputeIncrementalSmallStrain,
25 "Compute a strain increment and rotation increment for small strains.");
37 Real volumetric_strain = 0.0;
96 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
ComputeIncrementalStrain(const InputParameters ¶meters)
const MooseArray< Real > & _JxW
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()
MaterialProperty< RankTwoTensor > & _mechanical_strain
static InputParameters validParams()
ComputeIncrementalStrain defines a strain increment and rotation increment (=1), for small strains...
registerMooseObjectRenamed("SolidMechanicsApp", ComputeIncrementalSmallStrain, "04/01/2025 00:00", ComputeIncrementalStrain)
MaterialProperty< RankTwoTensor > & _strain_rate
void subtractEigenstrainIncrementFromStrain(RankTwoTensor &strain)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual void computeTotalStrainIncrement(RankTwoTensor &total_strain_increment)
Computes the current and old deformation gradients and passes back the total strain increment tensor...
const MaterialProperty< RankTwoTensor > & _mechanical_strain_old
std::vector< const VariableGradient * > _grad_disp_old
registerMooseObject("SolidMechanicsApp", ComputeIncrementalStrain)
ComputeIncrementalStrainBase is the base class for strain tensors using incremental formulations...
const bool _volumetric_locking_correction
MaterialProperty< RankTwoTensor > & _rotation_increment
const MooseArray< Real > & _coord
virtual void computeProperties() override
MaterialProperty< RankTwoTensor > & _total_strain
std::vector< const VariableGradient * > _grad_disp
Gradient of displacements.