113 std::vector<const VariableValue *>
_disp;
264 bool need_jacobian)
const;
272 bool need_jacobian)
const;
280 bool need_jacobian)
const;
288 bool need_jacobian)
const;
MaterialProperty< RankTwoTensor > & _F
const MaterialProperty< RankTwoTensor > & _F_ust_old
Old unstabilized deformation gradient.
const MaterialProperty< RankTwoTensor > & _total_strain_old
std::vector< const VariableGradient * > _grad_disp_old
Old displacement gradients for the generalized midpoint rule.
virtual void computeQpUnstabilizedDeformationGradient()
Calculate the unstabilized (alpha-weighted) deformation gradient at the quadrature point...
void computeRashidEigenIncrement(const RankTwoTensor &f_inv, RankTwoTensor &dd, RankTwoTensor &dw, RankFourTensor &d_dL_d_f_inv, RankFourTensor &d_dw_d_f_inv, bool need_jacobian) const
"Exact" via polar decomposition of f^{-1} + matrix logs.
Add-on class that provides the functionality to issue guarantees for declared material properties...
const InputParameters & parameters() const
MaterialProperty< RankTwoTensor > & _F_ust_inv
Inverse and determinant of the unstabilized deformation gradient F_ust.
std::vector< const VariableGradient * > _grad_disp
MaterialProperty< Real > & _F_ust_det
static InputParameters baseParams()
MaterialProperty< RankFourTensor > & _d_rotation_d_F
Derivative of R with respect to F.
Rashid's symmetric+skew formulas.
const MaterialProperty< RankTwoTensor > & _mechanical_strain_old
std::vector< const MaterialProperty< RankTwoTensor > * > _homogenization_contributions
Actual homogenization contributions.
MaterialProperty< RankTwoTensor > & _F_actual
The literal deformation gradient at n+1 (I + grad u_{n+1}).
static const std::string G
virtual void computeDeformationGradient()
Calculate the unstabilized and optionally the stabilized deformation gradients.
std::vector< const VariableValue * > _disp
MaterialProperty< RankTwoTensor > & _mechanical_strain
std::vector< MaterialPropertyName > _homogenization_gradient_names
Names of any extra homogenization gradients.
virtual void computeProperties() override
MaterialProperty< RankTwoTensor > & _F_ust
The unstabilized (alpha-weighted) deformation gradient.
std::vector< const MaterialProperty< RankTwoTensor > * > _eigenstrains_old
void setQpIncrementalStrains(const RankTwoTensor &dd, const RankTwoTensor &dw)
Update strain / vorticity / mechanical-strain bookkeeping from already-split (dd, dw) tensors...
std::vector< const VariableValue * > _disp_old
Old displacement values for the generalized midpoint rule.
virtual void initialSetup() override
const unsigned int _ndisp
std::vector< const MaterialProperty< RankTwoTensor > * > _eigenstrains
MaterialProperty< RankTwoTensor > & _total_strain
const MaterialProperty< RankTwoTensor > & _F_old
Old deformation gradient.
MaterialProperty< RankTwoTensor > & _rotation
Polar decomposition R of the (alpha-weighted, F-bar-stabilized) deformation gradient F at this qp...
dL = (I - f^{-1}) + 0.5 (I - f^{-1})^2
MaterialProperty< RankTwoTensor > & _F_avg
std::vector< MaterialPropertyName > _eigenstrain_names
void computeLinearIncrement(const RankTwoTensor &f_inv, RankTwoTensor &dd, RankTwoTensor &dw, RankFourTensor &d_dL_d_f_inv, RankFourTensor &d_dw_d_f_inv, bool need_jacobian) const
Linear approximation: dL = I - f^{-1}.
virtual void initQpStatefulProperties() override
const bool _large_kinematics
If true the equilibrium conditions is calculated with large deformations.
virtual void subtractQpEigenstrainIncrement(RankTwoTensor &strain)
Subtract the eigenstrain increment to subtract from the total strain.
MaterialProperty< RankTwoTensor > & _strain_increment
Strain increment.
void computeQpPolarDecomposition(bool need_jacobian)
Compute and publish the polar decomposition of _F_actual at the current qp.
MaterialProperty< RankFourTensor > & _d_vorticity_increment_d_F
Derivative of the vorticity increment Deltaw with respect to F_{n+1}.
MaterialProperty< RankTwoTensor > & _stretch
Stretch U from the same polar decomposition.
RankTwoTensor computeQpRotationIncrement(const RankTwoTensor &f_inv, const RankTwoTensor &dw) const
Rotation increment matched to the active _kinematic_approximation, suitable for publishing as _rotati...
MaterialProperty< RankTwoTensor > & _F_inv
Inverse deformation gradient.
const bool _stabilize_strain
If true stabilize the strains with F_bar.
MaterialProperty< RankFourTensor > & _d_F_d_grad_u
Derivative of F_{n+1} with respect to the displacement gradient.
const FBarMode _F_bar_mode
Selected F-bar averaging mode (Total vs. Incremental). See FBarMode.
virtual void computeQpActualDeformationGradient()
Calculate the actual deformation gradient at n+1 (no alpha weighting, no F-bar)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const std::string _base_name
Material system base name.
KinematicApproximation
Approximation used to convert the inverse incremental deformation gradient f^{-1} into the increment ...
const Real _alpha
Generalized-midpoint weight for the deformation gradient (1.0 = backward Euler, 0.5 = midpoint)
void computeQuadraticIncrement(const RankTwoTensor &f_inv, RankTwoTensor &dd, RankTwoTensor &dw, RankFourTensor &d_dL_d_f_inv, RankFourTensor &d_dw_d_f_inv, bool need_jacobian) const
Quadratic approximation: dL = (I - f^{-1}) + 0.5 (I - f^{-1})^2.
Calculate strains to use the MOOSE materials with the Lagrangian kernels.
MaterialProperty< RankFourTensor > & _d_F_stab_d_F_ust
Partial derivative of the F-bar-stabilized deformation gradient with respect to the unstabilized (per...
FBarMode
What F gets F-bar volumetric correction applied to.
MaterialProperty< RankTwoTensor > & _vorticity_increment
Vorticity increment.
MaterialProperty< RankFourTensor > & _d_F_stab_d_F_avg
Partial derivative of the F-bar-stabilized deformation gradient with respect to the element-averaged ...
const KinematicApproximation _kinematic_approximation
Selected approximation for the spatial velocity gradient increment.
const bool _publish_rotation_increment
If true, publish _rotation_increment = exp(_vorticity_increment) (Rodrigues) instead of the default i...
void computeRashidApproximateIncrement(const RankTwoTensor &f_inv, RankTwoTensor &dd, RankTwoTensor &dw, RankFourTensor &d_dL_d_f_inv, RankFourTensor &d_dw_d_f_inv, bool need_jacobian) const
Rashid's approximate symmetric+skew formulas.
virtual void computeQpIncrementalStrains(const RankTwoTensor &dL)
Calculate the strains based on the spatial velocity gradient.
MaterialProperty< RankFourTensor > & _d_deformation_gradient_increment_d_F
Derivative of the spatial velocity gradient increment with respect to F_{n+1}.
MaterialProperty< RankTwoTensor > & _rotation_increment
Rotation increment for "old" materials inheriting from ComputeStressBase.
static InputParameters validParams()
"Exact": polar decomposition + matrix logs
MaterialProperty< RankTwoTensor > & _f_inv
Inverse incremental deformation gradient.
void computeQpLargeKinematicIncrement(const RankTwoTensor &f_inv, RankTwoTensor &dd, RankTwoTensor &dw, RankFourTensor &d_dL_d_f_inv, RankFourTensor &d_dw_d_f_inv, bool need_jacobian)
Dispatcher: compute (Deltad, Deltaw, d(Deltal)/d(f^{-1}), d(Deltaw)/d(f^{-1})) for the active kinemat...
MaterialProperty< RankTwoTensor > & _deformation_gradient_increment
Deformation gradient increment.
ComputeLagrangianStrainBase(const InputParameters ¶meters)
virtual void computeQpProperties() override
MaterialProperty< RankTwoTensor > & _rotated_mechanical_strain
Mechanical strain accumulated with the incremental rotation r_hat = exp(Deltaw), matching the convent...
const MaterialProperty< RankTwoTensor > & _rotated_mechanical_strain_old