20 params.addClassDescription(
21 "Time derivative term $\\rho c_p \\frac{\\partial T}{\\partial t}$ of "
22 "the heat equation with the specific heat $c_p$ and the density $\\rho$ as arguments.");
26 params.set<
bool>(
"use_displaced_mesh") =
true;
28 params.addParam<MaterialPropertyName>(
29 "specific_heat",
"specific_heat",
"Property name of the specific heat material property");
30 params.addParam<MaterialPropertyName>(
31 "density",
"density",
"Property name of the density material property");
32 params.addCoupledVar(
"args",
"Vector of additional arguments of the specific heat and density");
37 const InputParameters & parameters)
38 : DerivativeMaterialInterface<JvarMapKernelInterface<TimeDerivative>>(parameters),
39 _specific_heat(getMaterialProperty<Real>(
"specific_heat")),
40 _d_specific_heat_dT(getMaterialPropertyDerivative<Real>(
"specific_heat", _var.
name())),
41 _density(getMaterialProperty<Real>(
"density")),
42 _d_density_dT(getMaterialPropertyDerivative<Real>(
"density", _var.
name()))
45 unsigned int nvar = _coupled_moose_vars.size();
52 for (
unsigned int i = 0; i < nvar; ++i)
54 const std::string iname = _coupled_moose_vars[i]->name();
56 _d_density_dargs[i] = &getMaterialPropertyDerivative<Real>(
"density", iname);
69 const Real dT = TimeDerivative::computeQpResidual();
81 const unsigned int cvar = mapJvarToCvar(jvar);
84 const Real dT = TimeDerivative::computeQpResidual();