20 params.
addClassDescription(
"Plastic heat energy density = coeff * stress * plastic_strain_rate");
22 "The string of displacements suitable for the problem statement");
23 params.
addParam<std::string>(
"base_name",
"Material property base name");
24 params.
addParam<
Real>(
"coeff", 1.0,
"Heat energy density = coeff * stress * plastic_strain_rate");
30 _coeff(getParam<
Real>(
"coeff")),
31 _base_name(isParamValid(
"base_name") ? getParam<
std::string>(
"base_name") +
"_" :
""),
32 _plastic_heat(getMaterialProperty<
Real>(_base_name +
"plastic_heat")),
33 _dplastic_heat_dstrain(
34 getMaterialProperty<
RankTwoTensor>(_base_name +
"dplastic_heat_dstrain")),
35 _ndisp(coupledComponents(
"displacements")),
38 for (
unsigned int i = 0; i <
_ndisp; ++i)
43 mooseError(
"PlasticHeatEnergy: The number of displacement variables supplied must match the " 62 for (
unsigned int i = 0; i <
_ndisp; ++i)
const MaterialProperty< Real > & _plastic_heat
stress * plastic_strain_rate
virtual unsigned int coupled(const std::string &var_name, unsigned int comp=0) const
static InputParameters validParams()
unsigned int number() const
const VariablePhiGradient & _grad_phi
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
virtual Real computeQpResidual() override
Real _coeff
coefficient of stress * plastic_strain_rate
PlasticHeatEnergy(const InputParameters ¶meters)
Provides a heat source from plastic deformation: coeff * stress * plastic_strain_rate.
const VariableTestValue & _test
virtual unsigned int dimension() const
registerMooseObject("SolidMechanicsApp", PlasticHeatEnergy)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static InputParameters validParams()
void mooseError(Args &&... args) const
const MaterialProperty< RankTwoTensor > & _dplastic_heat_dstrain
d(plastic_heat)/d(total_strain)
unsigned int _ndisp
umber of coupled displacement variables
std::vector< unsigned int > _disp_var
MOOSE variable number for the displacement variables.
virtual Real computeQpJacobian() override