18 params.
addCoupledVar(
"elec",
"Electrostatic potential for joule heating.");
19 params.
addParam<MaterialPropertyName>(
20 "heating_term",
"electric_field_heating",
"Material property providing the Joule heating.");
21 params.
addParam<MaterialPropertyName>(
22 "electrical_conductivity",
23 "electrical_conductivity",
24 "Material property providing electrical conductivity of the material.");
26 "Calculates the heat source term corresponding to electrostatic or electromagnetic Joule "
27 "heating, with Jacobian contributions calculated using the automatic "
28 "differentiation system.");
34 _supplied_potential(isParamValid(
"elec")),
36 _grad_potential(_supplied_potential ? adCoupledGradient(
"elec") : _ad_grad_zero),
37 _elec_cond(_supplied_potential ? getADMaterialProperty<Real>(
"electrical_conductivity")
38 : getGenericZeroMaterialProperty<Real, true>()),
40 _heating_residual(_supplied_potential ? getGenericZeroMaterialProperty<Real, true>()
41 : getADMaterialProperty<Real>(
"heating_term"))
45 "Directly coupling an electrostatic potential will be deprecated in the near future "
46 "(10/01/2025). Please use the material object 'ElectromagneticHeatingMaterial' to couple "
47 "either the electrostatic or electromagnetic field for Joule heating.");
registerMooseObject("HeatTransferApp", ADJouleHeatingSource)
DualNumber< Real, DNDerivativeType, true > ADReal
This kernel supplies the heat source term corresponding to Joule heating (Q).
const ADVariableGradient & _grad_potential
Gradient of the coupled potential.
const ADMaterialProperty< Real > & _heating_residual
The Joule heating residual provided as a material object.
const bool _supplied_potential
Set to true when an electrostatic potential is provided.
ADJouleHeatingSource(const InputParameters ¶meters)
virtual ADReal precomputeQpResidual() override
static InputParameters validParams()
const ADMaterialProperty< Real > & _elec_cond
Electric conductivity coefficient.
static InputParameters validParams()
void mooseDeprecated(Args &&... args) const