Go to the documentation of this file.
12 #include "FEProblem.h"
13 #include "MooseMesh.h"
15 #include "libmesh/quadrature.h"
25 params.addClassDescription(
26 "Compute a strain increment for incremental strains in 1D spherical symmetry problems.");
31 const InputParameters & parameters)
41 const auto & subdomainIDs = _mesh.meshSubdomains();
42 for (
auto subdomainID : subdomainIDs)
43 if (_fe_problem.getCoordSystem(subdomainID) != Moose::COORD_RSPHERICAL)
44 mooseError(
"The coordinate system must be set to RSPHERICAL for 1D R spherical simulations.");
62 if (!MooseUtils::relativeFuzzyEqual(_q_point[_qp](0), 0.0))
64 A(1, 1) = (*
_disp[0])[_qp] / _q_point[_qp](0);
70 Fbar(2, 2) = Fbar(1, 1);
79 total_strain_increment = 0.5 * (A + A.transpose());
ComputeIncrementalSmallStrain defines a strain increment and rotation increment (=1),...
ComputeRSphericalIncrementalStrain(const InputParameters ¶meters)
std::vector< const VariableValue * > _disp
ComputeRSphericalIncrementalStrain defines a strain increment only for small strains in 1D spherical ...
const VariableValue & _disp_old_0
the old value of the first component of the displacements vector
std::vector< const VariableGradient * > _grad_disp_old
virtual void computeTotalStrainIncrement(RankTwoTensor &total_strain_increment) override
Computes the current and old deformation gradients with the assumptions for 1D spherical symmetry geo...
registerMooseObject("TensorMechanicsApp", ComputeRSphericalIncrementalStrain)
MaterialProperty< RankTwoTensor > & _deformation_gradient
void initialSetup() override
virtual void initialSetup() override
static InputParameters validParams()
static InputParameters validParams()
std::vector< const VariableGradient * > _grad_disp
defineLegacyParams(ComputeRSphericalIncrementalStrain)