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 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, 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 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) is . 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 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. (5) 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, we solving Eq. (3) for , eliminate 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 density , 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. Rattlesnake 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.

Object and Design of Gray Diffuse Radiative Exchange

The implementation of the net radiation method in MOOSE relies on the following types of objects:

  • GrayLambertSurfaceRadiationBase and derived objects are SideUserObjects that compute radiosities, heat fluxes, and average temperatures for a set of sidesets that are in radiative heat transfer. The net radiation method is implemented in GrayLambertSurfaceRadiationBase. GrayLambertSurfaceRadiationBase provides a public interface to the average heat flux, radiosities, and average temperatures computed for each sideset. GrayLambertSurfaceRadiationBase needs view factors which can be provided manually (ConstantViewFactorSurfaceRadiation) or by providing a ViewFactorBase object (ViewFactorObjectSurfaceRadiation). A temperature variable must be available on sidesets that are not marked as isothermal or adiabatic.

  • ViewFactorBase and derived objects: compute view factors and provide it via the getViewFactor public interface. ViewFactorBase and daughters is called by ViewFactorObjectSurfaceRadiation that inherits from GrayLambertSurfaceRadiationBase. In the future an object inheriting from ViewFactorBase will use the raytracing module in MOOSE to compute view factors for general geometries automatically.

  • GrayLambertNeumannBC takes the average heat flux computed in GrayLambertSurfaceRadiationBase and applies it as boundary condition as described in Eq. (2).

  • In the future an action will be added that allows setting up view-factor net radiation transfer using only a single block.

Gap Heat Transfer

There are multiple approaches in the Heat Transfer module for modeling heat transfer across a gap:

Objects, Actions, and Syntax

AuxKernels
  • Heat Transfer App
  • JouleHeatingHeatGeneratedAuxCompute heat generated from Joule heating .
AuxVariablesBCs
  • Heat Transfer App
  • ADConvectiveHeatFluxBCConvective heat transfer boundary condition with temperature and heat transfer coefficent 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.
  • 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.
Constraints
  • 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
DiracKernelsFVBCsFVKernels
  • Heat Transfer App
  • FVHeatConductionTimeDerivativeAD Time derivative term of the heat equation for quasi-constant specific heat and the density .
FunctorMaterialsGrayDiffuseRadiation
  • Heat Transfer App
  • RadiationTransferActionThis action sets up the net radiation calculation between specified sidesets.
InterfaceKernels
  • 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.
Kernels
  • 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
MaterialsMesh
  • Heat Transfer App
  • PatchSidesetGeneratorDivides the given sideset into smaller patches of roughly equal size.
ModulesModules/HeatTransferModules/HeatTransfer/ThermalContact
  • Heat Transfer App
  • BC
Modules/HeatTransfer/ThermalContact/BC
  • Heat Transfer App
  • ThermalContactActionAction that controls the creation of all of the necessary objects for calculation of Thermal Contact
MortarGapHeatTransfer
  • 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
PhysicsPhysics/HeatConductionPhysics/HeatConduction/FiniteElement
  • Heat Transfer App
  • HeatConductionCGCreates the heat conduction equation discretized with CG
Physics/HeatConduction/FiniteVolume
  • Heat Transfer App
  • HeatConductionFVCreates the heat conduction equation discretized with nonlinear finite volume
PostprocessorsRayBCs
  • 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.
ThermalContact
  • Heat Transfer App
  • ThermalContactActionAction that controls the creation of all of the necessary objects for calculation of Thermal Contact
UserObjects
  • 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.
VectorPostprocessors

References

  1. M.F. Modest. Radiative Heat Transfer. Elsevier Science, 2013. ISBN 9780123869906. URL: https://books.google.com/books?id=J2KZq0e4lCIC.[BibTeX]