Heat Transfer Module
Heat is transferred by three mechanisms: conduction, convection, and radiation. The heat transfer module provides various implementations of the heat conduction equation, as well as associated boundary/interface conditions, including radiation between opaque, gray, diffuse surfaces and provisions to couple temperature fields to fluid domains through boundary conditions.
Tutorial Problems
A tutorial for the Heat Transfer module is available to show the steps for setting up a basic model.
Basic Theory of Heat Transfer
The heat conduction equation describes the diffusion of heat in a solid or stationary fluid:
(1)
where is temperature, is time, is the vector of spatial coordinates, is the density, is the specific heat capacity, is the thermal conductivity, is a heat source density, and is the domain. It should be emphasized that for solids the isobaric and isochoric heat capacities, and respectively, are almost identical, while for stagnant fluids should be used.
Boundary conditions for the heat equation are defined on the boundary of the domain . The boundary is divided into Dirichlet boundaries and Robin boundaries such that :
where and are known functions and is the outward normal at . The function defines the type of Robin boundary conditions. Common cases for are:
(2)
where loops over all surfaces participating in the radiative exchange, is the view factor from the -th to the -th surface, and is the radiosity of the -th defined by:
where is the emissivity, is the Stefan-Boltzmann constant, and is the total irradiation. Often the surface of interest is in radiative transfer with just a single isothermal surface that completely encloses it. In this case is given by:
where depends on the geometry, e.g.,
where is the emissivity of the enclosing cylinder, is the radius of the enclosing cylinder, and is the outer radius of the domain that is assumed to be cylindrical as well.
Theory of Opaque, Gray, Diffuse Radiative Exchange
This section discusses the pertinent equations of the net radiation method and relates them to the more fundamental spectral intensity. The development of the method is taken from Modest (2013). The net radiation method computes the radiative exchange between surfaces for the case of no attenuation in the medium between the surfaces. For a point on any of the surfaces in radiative heat transfer, a heat balance is formulated at location :
(3)
where is the radiosity of the surface at point , and is the irradiation from other surface to point . The units of all quantities in Eq. (3) are . The radiosity is the sum of the emissive power and the reflected portion of the irradiation:
(4)
where is the emissivity, and is the reflectivity. For opaque, gray, diffuse surfaces, the reflectivity simply is :
(5)
At this point it is convenient to represent the radiosity, temperature, irradiation, and emissivity on each distinct surface by a suitable average of the actual distribution. We leave out the argument and add an index by which we indicate that this quantity has been averaged over the extent of surface .
A second balance equation in addition to Eq. (5) is obtained by relating the irradiation onto surface to the radiosities of all other surfaces:
(6) where is the total number of surfaces, and is the view factor from surface to surface . Eliminating from Eq. (6) using Eq. (3) gives:
(7)
This result is used for computing on surfaces where is known. This is the case for ADIABATIC
surfaces, where .
A more convenient relationship is derived for surfaces where is either known (FIXED_TEMPERATURE
) or computed (VARIABLE_TEMPERATURE
). We first assert that because Eq. (3) and Eq. (5) hold pointwise, they also hold for the averages over face . This is denoted by switching from to and similarly from to . Then, solving Eq. (3) for , eliminating in Eq. (5), and solving for gives:
Then we use this equation in Eq. (7) to eliminate : (8)
The net radiation method implements Eq. (7) with on ADIABATIC
boundaries, and Eq. (8) on FIXED_TEMPERATURE
and VARIABLE_TEMPERATURE
boundaries. FIXED_TEMPERATURE
boundaries allow the temperature to vary as a user-defined function, while VARIABLE_TEMPERATURE
walls use a MOOSE variable to represent temperature. In both cases, is not constant over the extent of the surface. We average the right hand side of Eq. (8) as follows:
where
where is the area of surface . The GrayLambertSurfaceRadiationBase
object computes the average temperature , heat flux , and radiosity . These are all average quantities over the surface .
Relationship of Net Radiation Method with Radiative Transport
The radiative transport equation is formulated in terms of the spectral intensity with being the photon's wavelength and being the direction of propagation. The physical meaning of the spectral intensity is that the energy transported through area at , during time interval at time , along direction within a cone about and with wavelengths within about is:
where is the normal on face . The intensity is computed by a code that solves the radiative transfer equation, e.g., Griffin within the MOOSE framework. The solution of the radiative transfer equation is coupled to heat conduction within solid domains through the balance at the surface Eq. (3), but now we evaluate the net heat flux from the spectral intensity:
The boundary condition for the thermal radiation equation on a gray, diffuse surface is: (9)
where is the refractive index of the medium that the surface radiates into, is the emissivity of the surface at wavelength , is Planck's constant, is Boltzmann's constant, and is the speed of light in vacuum. First, it should be stressed that the refractive index is very close to unity in vacuum or a weakly absorbing gas, but may differ significantly from unity in semi-transparent media. As the net radiation method does not apply to semi-transparent materials, is assumed to be unity. Second, the normalization factor of in Eq. (9) is for three-dimensional geometry; more accurately it is given by , i.e. size of the unit sphere divided by four. Third, radiation effects in semi-transparent media can be modeled with the MOOSE based radiation transport code Rattlesnake.
Including Adiabatic and Isothermal Boundaries
Boundaries can be declared adiabatic or isothermal boundaries. Adiabatic and isothermal boundaries do not participate in the heat conduction solution process, i.e. no temperature variable needs to be defined on them (if one is defined it is not used). Adiabatic and isothermal boundaries are convenient if the outer boundary of the heat conduction domain is in radiative transfer with a wall that is either insulated or kept at a constant temperature. For example, think of the outside of a reactor pressure vessel that is in radiative heat transfer with the reactor cavity cooling system. The reactor cavity cooling system may be modeled as isothermal wall, while the top and bottom of the cavity may be modeled as adiabatic walls. The temperature equation is not solved on of these surfaces, but they are in radiative transfer with another surface on which temperature is defined as a variable.
Implementation of Opaque, Gray, Diffuse Radiative Exchange
The implementation of the net radiation method in MOOSE relies on the following types of objects:
Objects deriving from
GrayLambertSurfaceRadiationBase
areSideUserObjects
that compute radiosities, heat fluxes, and average temperatures for a set of sidesets involved in radiative heat exchange. The net radiation method is implemented inGrayLambertSurfaceRadiationBase
, which provides a public interface to the average heat flux, radiosities, and average temperatures computed for each sideset. These objects differ in how they are provided with view factors:ConstantViewFactorSurfaceRadiation, for providing view factors manually
ViewFactorObjectSurfaceRadiation, for providing view factors via an object deriving from
ViewFactorBase
Note that a temperature variable must be available on sidesets that are not marked as isothermal or adiabatic.
Objects inheriting from
ViewFactorBase
, such as the following:compute view factors and provide them via the
getViewFactor
public interface. These objects are used by ViewFactorObjectSurfaceRadiation, which inherits fromGrayLambertSurfaceRadiationBase
.GrayLambertNeumannBC takes the average heat flux computed in
GrayLambertSurfaceRadiationBase
and applies it as boundary condition as described in Eq. (2).GrayLambertSurfaceRadiationPP is a post-processor that retrieves the radiosity, heat flux, or temperature for a boundary used in a
GrayLambertSurfaceRadiationBase
object.ViewFactorPP is a post-processor that can retrieve a view factor from a
ViewFactorBase
for output purposes.SurfaceRadiationVectorPostprocessor is a vector post-processor that retrieves one or more of the following for all surfaces for a given
GrayLambertSurfaceRadiationBase
object: emissivity, radiosity, temperature, and heat flux.ViewfactorVectorPostprocessor is a vector post-processor that retrieves the view factors between all boundaries for a given
GrayLambertSurfaceRadiationBase
object.Future plans include the addition of an action to set up view-factor net radiation transfer using only a single syntax block.
Gap Heat Transfer
There are multiple approaches in the Heat Transfer module for modeling heat transfer across a gap:
ModularGapConductanceConstraint uses the mortar finite element method and may be used when the gap is based on the distance between mesh faces.
SideSetHeatTransferKernel is an InterfaceKernel that models heat transfer across a side set, via conduction, convection, and radiation.
ThermalContact uses a "node-on-face" approach to model gap heat transfer and may be used when the gap is based on the distance between mesh faces.
CylindricalGapHeatFluxFunctorMaterial is a FunctorMaterial that computes heat fluxes across a cylindrical gap, where the gap thickness is provided via radii functors rather than taken from mesh information.
Objects, Actions, and Syntax
- Heat Transfer App
- JouleHeatingHeatGeneratedAuxCompute heat generated from Joule heating .
- Heat Transfer App
- ADConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficient given by material properties.
- ADFunctionRadiativeBCBoundary condition for radiative heat exchange where the emissivity function is supplied by a Function.
- ADInfiniteCylinderRadiativeBCBoundary condition for radiative heat exchange with a cylinderwhere the boundary is approximated as a cylinder as well.
- ConvectiveFluxFunctionDetermines boundary value by fluid heat transfer coefficient and far-field temperature
- ConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent given by material properties.
- CoupledConvectiveFlux
- CoupledConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent given by auxiliary variables.
- DirectionalFluxBCApplies a directional flux multiplied by the surface normal vector. Can utilize the self shadowing calculation from a SelfShadowSideUserObject.
- FunctionRadiativeBCBoundary condition for radiative heat exchange where the emissivity function is supplied by a Function.
- GapHeatTransferTransfers heat across a gap between two surfaces dependent on the gap geometry specified.
- GapPerfectConductanceEnforces equal temperatures across the gap.
- GaussianEnergyFluxBCDescribes an incoming heat flux beam with a Gaussian profile
- GrayLambertNeumannBCThis BC imposes a heat flux density that is computed from the GrayLambertSurfaceRadiationBase userobject.
- HeatConductionBC
- InfiniteCylinderRadiativeBCBoundary condition for radiative heat exchange with a cylinderwhere the boundary is approximated as a cylinder as well.
- Heat Transfer App
- ADInterfaceJouleHeatingConstraintJoule heating model, for the case of a closed gap interface, to calculate the heat flux contribution created when an electric potential difference occurs across that interface.
- GapConductanceConstraintComputes the residual and Jacobian contributions for the 'Lagrange Multiplier' implementation of the thermal contact problem. For more information, see the detailed description here: http://tinyurl.com/gmmhbe9
- ModularGapConductanceConstraintComputes the residual and Jacobian contributions for the 'Lagrange Multiplier' implementation of the thermal contact problem. For more information, see the detailed description here: http://tinyurl.com/gmmhbe9
- Heat Transfer App
- GapHeatPointSourceMaster
- Heat Transfer App
- FVFunctorConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficient given by functors.
- FVFunctorRadiativeBCBoundary condition for radiative heat exchange where the emissivity function is supplied by a Function.
- FVGaussianEnergyFluxBCDescribes an incoming heat flux beam with a Gaussian profile
- FVInfiniteCylinderRadiativeBCBoundary condition for radiative heat exchange with a cylinder where the boundary is approximated as a cylinder as well.
- FVMarshakRadiativeBCMarshak boundary condition for radiative heat flux.
- FVThermalResistanceBCThermal resistance Heat flux boundary condition for the fluid and solid energy equations
- FunctorThermalResistanceBCThermal resistance heat flux boundary condition for the fluid and solid energy equations
- Heat Transfer App
- FVHeatConductionTimeDerivativeAD Time derivative term of the heat equation for quasi-constant specific heat and the density .
- FVThermalRadiationSourceSinkImplements the source and the sink terms for radiation heat transfer.
- Heat Transfer App
- ADConvectionHeatFluxFunctorMaterialComputes a convection heat flux from a solid surface to a fluid.
- ADCylindricalGapHeatFluxFunctorMaterialComputes cylindrical gap heat flux due to conduction and radiation.
- ADFinEfficiencyFunctorMaterialComputes fin efficiency.
- ADFinEnhancementFactorFunctorMaterialComputes a heat transfer enhancement factor for fins.
- ADRadiativeP1DiffusionCoefficientMaterialComputes the P1 diffusion coefficient from the opacity and effective scattering cross section.
- ConvectionHeatFluxFunctorMaterialComputes a convection heat flux from a solid surface to a fluid.
- CylindricalGapHeatFluxFunctorMaterialComputes cylindrical gap heat flux due to conduction and radiation.
- FinEfficiencyFunctorMaterialComputes fin efficiency.
- FinEnhancementFactorFunctorMaterialComputes a heat transfer enhancement factor for fins.
- RadiativeP1DiffusionCoefficientMaterialComputes the P1 diffusion coefficient from the opacity and effective scattering cross section.
- Heat Transfer App
- RadiationTransferActionThis action sets up the net radiation calculation between specified sidesets.
- Heat Transfer App
- ConjugateHeatTransferThis InterfaceKernel models conjugate heat transfer. Fluid side must be primary side and solid side must be secondary side. T_fluid is provided in case that variable ( fluid energy variable) is not temperature but e.g. internal energy.
- SideSetHeatTransferKernelModeling conduction, convection, and radiation across internal side set.
- ThinLayerHeatTransferModel heat transfer across a thin domain with an interface.
- Heat Transfer App
- ADHeatConductionSame as
Diffusion
in terms of physics/residual, but the Jacobian is computed using forward automatic differentiation - ADHeatConductionTimeDerivativeAD Time derivative term of the heat equation for quasi-constant specific heat and the density .
- ADJouleHeatingSourceCalculates the heat source term corresponding to electrostatic Joule heating, with Jacobian contributions calculated using the automatic differentiation system.
- ADMatHeatSourceForce term in thermal transport to represent a heat source
- AnisoHeatConductionAnisotropic HeatConduction kernel with weak form given by .
- AnisoHomogenizedHeatConductionKernel for asymptotic expansion homogenization for thermal conductivity when anisotropic thermal conductivities are used
- HeatCapacityConductionTimeDerivativeTime derivative term of the heat equation with the heat capacity as an argument.
- HeatConductionComputes residual/Jacobian contribution for term.
- HeatConductionTimeDerivativeTime derivative term of the heat equation for quasi-constant specific heat and the density .
- HeatSourceDemonstrates the multiple ways that scalar values can be introduced into kernels, e.g. (controllable) constants, functions, and postprocessors. Implements the weak form .
- HomogenizedHeatConductionKernel for asymptotic expansion homogenization for thermal conductivity
- JouleHeatingSourceCalculates the heat source term corresponding to electrostatic Joule heating.
- SpecificHeatConductionTimeDerivativeTime derivative term of the heat equation with the specific heat and the density as arguments.
- TrussHeatConductionComputes conduction term in heat equation for truss elements, taking cross-sectional area into account
- TrussHeatConductionTimeDerivativeComputes time derivative term in heat equation for truss elements, taking cross-sectional area into account
- Heat Transfer App
- ADAnisoHeatConductionMaterialGeneral-purpose material model for anisotropic heat conduction
- ADConvectionHeatFluxFunctorMaterialComputes a convection heat flux from a solid surface to a fluid.
- ADCylindricalGapHeatFluxFunctorMaterialComputes cylindrical gap heat flux due to conduction and radiation.
- ADElectricalConductivityCalculates resistivity and electrical conductivity as a function of temperature, using copper for parameter defaults.
- ADFinEfficiencyFunctorMaterialComputes fin efficiency.
- ADFinEnhancementFactorFunctorMaterialComputes a heat transfer enhancement factor for fins.
- ADHeatConductionMaterialGeneral-purpose material model for heat conduction
- ADRadiativeP1DiffusionCoefficientMaterialComputes the P1 diffusion coefficient from the opacity and effective scattering cross section.
- AnisoHeatConductionMaterialGeneral-purpose material model for anisotropic heat conduction
- ConvectionHeatFluxFunctorMaterialComputes a convection heat flux from a solid surface to a fluid.
- CylindricalGapHeatFluxFunctorMaterialComputes cylindrical gap heat flux due to conduction and radiation.
- ElectricalConductivityCalculates resistivity and electrical conductivity as a function of temperature, using copper for parameter defaults.
- FinEfficiencyFunctorMaterialComputes fin efficiency.
- FinEnhancementFactorFunctorMaterialComputes a heat transfer enhancement factor for fins.
- FunctionPathEllipsoidHeatSourceDouble ellipsoid volumetric source heat with function path.
- GapConductance
- GapConductanceConstantMaterial to compute a constant, prescribed gap conductance
- HeatConductionMaterialGeneral-purpose material model for heat conduction
- RadiativeP1DiffusionCoefficientMaterialComputes the P1 diffusion coefficient from the opacity and effective scattering cross section.
- SemiconductorLinearConductivityCalculates electrical conductivity of a semiconductor from temperature
- SideSetHeatTransferMaterialThis material constructs the necessary coefficients and properties for SideSetHeatTransferKernel.
- ThermalComplianceComputes cost sensitivity needed for multimaterial SIMP method.
- ThermalSensitivityComputes cost sensitivity needed for multimaterial SIMP method.
- Heat Transfer App
- PatchSidesetGeneratorDivides the given sideset into smaller patches of roughly equal size.
- Heat Transfer App
- HeatTransfer
- Heat Transfer App
- ThermalContact
- Heat Transfer App
- BC
- Heat Transfer App
- ThermalContactActionAction that controls the creation of all of the necessary objects for calculation of Thermal Contact
- Heat Transfer App
- MortarGapHeatTransferActionAction that controls the creation of all of the necessary objects for calculation of heat transfer through an open/closed gap using a mortar formulation and a modular design approach
- Heat Transfer App
- HeatConduction
- Heat Transfer App
- FiniteElement
- FiniteVolume
- Heat Transfer App
- HeatConductionCGCreates the heat conduction equation discretized with CG
- Heat Transfer App
- HeatConductionFVCreates the heat conduction equation discretized with nonlinear finite volume
- Heat Transfer App
- ADConvectiveHeatTransferSideIntegralComputes the total convective heat transfer across a boundary.
- ConvectiveHeatTransferSideIntegralComputes the total convective heat transfer across a boundary.
- ExposedSideAverageValueComputes the average value of a variable on the exposed portion of a sideset. Note that this cannot be used on the centerline of an axisymmetric model.
- GrayLambertSurfaceRadiationPPThis postprocessor allows to extract radiosity, heat flux density, and temperature from the GrayLambertSurfaceRadiationBase object.
- HomogenizedThermalConductivityPostprocessor for asymptotic expansion homogenization for thermal conductivity
- ThermalConductivityComputes the average value of a variable on a sideset. Note that this cannot be used on the centerline of an axisymmetric model.
- ViewFactorPPThis postprocessor allows to extract view factors from ViewFactor userobjects.
- Heat Transfer App
- ViewFactorRayBCThis ray boundary condition is applied on all sidesets bounding a radiation cavity except symmetry sidesets. It kills rays that hit the sideset and scores the ray for computation of view factors.
- Heat Transfer App
- ThermalContactActionAction that controls the creation of all of the necessary objects for calculation of Thermal Contact
- Heat Transfer App
- ADConvectiveHeatTransferSideIntegralComputes the total convective heat transfer across a boundary.
- ConstantViewFactorSurfaceRadiationConstantViewFactorSurfaceRadiation computes radiative heat transfer between side sets and the view factors are provided in the input file
- ConvectiveHeatTransferSideIntegralComputes the total convective heat transfer across a boundary.
- ExposedSideAverageValueComputes the average value of a variable on the exposed portion of a sideset. Note that this cannot be used on the centerline of an axisymmetric model.
- FunctorGapFluxModelConductionGap flux model for varying gap conductance using a functor for temperature.
- FunctorGapFluxModelRadiationGap flux model for heat transfer across a gap due to radiation, based on the diffusion approximation. Uses a temperature functor.
- GapFluxModelConductionGap flux model for varying gap conductance using a coupled variable for temperature
- GapFluxModelPressureDependentConductionHeat flux model across a closed gap to calculate the conductance between two solid materials
- GapFluxModelRadiationGap flux model for heat conduction across a gap due to radiation, based on the diffusion approximation. Uses a coupled temperature variable.
- GapFluxModelRadiativeGap flux demonstration model for radiative heat conductance
- GapFluxModelSimpleGap flux model with a constant conductance
- GrayLambertSurfaceRadiationPPThis postprocessor allows to extract radiosity, heat flux density, and temperature from the GrayLambertSurfaceRadiationBase object.
- HomogenizedThermalConductivityPostprocessor for asymptotic expansion homogenization for thermal conductivity
- RayTracingViewFactorComputes view factors for arbitrary geometries using raytracing.
- SelfShadowSideUserObjectCompute the illumination status for a self shadowing sideset
- ThermalConductivityComputes the average value of a variable on a sideset. Note that this cannot be used on the centerline of an axisymmetric model.
- UnobstructedPlanarViewFactorComputes the view factors for planar faces in unubstructed radiative heat transfer.
- ViewFactorObjectSurfaceRadiationViewFactorObjectSurfaceRadiation computes radiative heat transfer between side sets and the view factors are computed by a ViewFactor object
- ViewFactorPPThis postprocessor allows to extract view factors from ViewFactor userobjects.
- ViewFactorRayStudyThis ray study is used to compute view factors in cavities with obstruction. It sends out rays from surfaces bounding the radiation cavity into a set of directions determined by an angular quadrature. The rays are tracked and view factors are computed by determining the surface where the ray dies.
- Heat Transfer App
- SurfaceRadiationVectorPostprocessorVectorPostprocessor for accessing information stored in surface radiation user object
- ViewfactorVectorPostprocessorVectorPostprocessor for accessing view factors from GrayLambertSurfaceRadiationBase UO
References
- M.F. Modest.
Radiative Heat Transfer.
Elsevier Science, 2013.
ISBN 9780123869906.
URL: https://books.google.com/books?id=J2KZq0e4lCIC.[BibTeX]