16 params.
addParam<
Real>(
"stefan_boltzmann", 5.670373e-8,
"Stefan-Boltzmann constant");
19 "primary_emissivity>=0 & primary_emissivity<=1",
20 "The emissivity of the primary surface");
23 "secondary_emissivity>=0 & secondary_emissivity<=1",
24 "The emissivity of the secondary surface");
26 "Gap Radiative Flux");
32 _stefan_boltzmann(getParam<
Real>(
"stefan_boltzmann")),
34 _eps_primary(getParam<
Real>(
"primary_emissivity")),
35 _eps_secondary(getParam<
Real>(
"secondary_emissivity")),
36 _has_zero_emissivity(_eps_primary == 0 && _eps_secondary == 0),
37 _parallel_plate_emissivity(
38 _has_zero_emissivity ? 0 : 1 / (1.0 / _eps_primary + 1.0 / _eps_secondary - 1))
41 mooseAssert(coord_systems.size(),
"This better not be empty");
43 for (
const auto [sub_id, coord_system_type] : coord_systems)
48 "Multiple coordinate system types detected. If you need this object to work with " 49 "multiple coordinate system types in the same mesh, please contact a MOOSE developer");
71 const bool primary_is_inner = primary_r < secondary_r;
72 const auto inner_r = primary_is_inner ? primary_r : secondary_r;
73 const auto outer_r = primary_is_inner ? secondary_r : primary_r;
78 return inner_eps * outer_eps * outer_r /
79 (outer_eps * outer_r + inner_eps * inner_r * (1 - outer_eps));
83 mooseError(
"spherical coordinates not yet supported for this object");
89 const ADReal & primary_T)
const 94 (primary_T * primary_T + secondary_T * secondary_T) * (primary_T + secondary_T);
Moose::ElemPointArg _primary_point
The primary quadrature point location.
unsigned int _radial_coord
The index for the radial coordinate when performing RZ simulations.
const Real _parallel_plate_emissivity
The theoretical infinite parallel-plate geometry surface emissivity, which is a function of both the ...
GapFluxModelRadiationBase(const InputParameters ¶meters)
DualNumber< Real, DNDerivativeType, true > ADReal
Base class for gap flux models used by ModularGapConductanceConstraint.
void libmesh_ignore(const Args &...)
unsigned int getAxisymmetricRadialCoord() const
Real emissivity() const
computes a single emissivity coefficient based on the coordinate system and the individual secondary ...
const Real _stefan_boltzmann
Stefan-Boltzmann constant.
Moose::CoordinateSystemType getCoordSystem(SubdomainID sid) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const Moose::CoordinateSystemType & _coord_sys
const Real _eps_secondary
The emissivity of the secondary surface.
static InputParameters validParams()
void mooseError(Args &&... args) const
const bool _has_zero_emissivity
Whether both primary and secondary emissivities are zero.
const Real _eps_primary
The emissivity of the primary surface.
Moose::CoordinateSystemType _coord_system
The coordinate system type, e.g. XYZ or RZ.
static InputParameters validParams()
ADReal _surface_integration_factor
Moose::ElemPointArg _secondary_point
The secondary quadrature point location.
ADReal computeRadiationFlux(const ADReal &secondary_T, const ADReal &primary_T) const
computes the radiation flux based on the input secondary and primary temperatures ...