Heat Transfer Analysis in Abaqus/Standard
Uncoupled heat transfer analysis is used to model solid body heat conduction with general, temperature-dependent conductivity, internal energy (including latent heat effects), and quite general convection and radiation boundary conditions, including cavity radiation. Forced convection of a fluid through the mesh can be modeled by using forced convection/diffusion elements.
Sources of Nonlinearity in a Heat Transfer Analysis
Heat transfer problems can be nonlinear because the material properties are temperature dependent or because the boundary conditions are nonlinear. Usually the nonlinearity associated with temperature-dependent material properties is mild because the properties do not change rapidly with temperature. However, when latent heat effects are included, the analysis may be severely nonlinear (see Latent Heat).
Boundary conditions are very often nonlinear; for example, film coefficients can be functions of surface temperature. Again, the nonlinearities are often mild and cause little difficulty. An exception is the “boiling” film condition, in which the film coefficient can change very rapidly because the fluid adjacent to the surface boils. A rapidly changing film condition (within a step or from one step to another) can be modeled easily using temperature-dependent and field-variable-dependent film coefficients. Radiation effects always make heat transfer problems nonlinear. Nonlinearities in radiation grow as temperatures increase.
Abaqus/Standard uses an iterative scheme to solve nonlinear heat transfer problems. The scheme uses the Newton method with some modifications to improve stability of the iteration process in the presence of highly nonlinear latent heat effects.
Steady-state cases involving severe nonlinearities are sometimes more effectively solved as transient cases because of the stabilizing influence of the heat capacity terms. The required steady-state solution can be obtained as the very long transient time response; the transient will simply stabilize the solution for that long time response.
Matrix Storage and Solution Scheme
In heat transfer analyses involving cavity radiation or forced convection/diffusion elements, the system of equations is unsymmetric. The nonsymmetric matrix storage and solution scheme is invoked automatically in these cases (see Defining an Analysis).
Steady-State Analysis
Steady-state analysis means that the internal energy term (the specific heat term) in the governing heat transfer equation is omitted. The problem then has no intrinsic physically meaningful time scale. Nevertheless, you can assign an initial time increment, a total time period, and maximum and minimum allowed time increments to the analysis step, which is often convenient for output identification and for specifying prescribed temperatures and fluxes with varying magnitudes.
Any fluxes or boundary condition changes to be applied during a steady-state heat transfer step should be given within the step, using appropriate amplitude references to specify their “time” variations (Amplitude Curves). If fluxes and boundary conditions are specified for the step without amplitude references, they are assumed to change linearly with “time” during the step, from their magnitudes at the end of the previous step (or zero, if this is the beginning of the analysis) to their newly specified magnitudes at the end of the heat transfer step.
Automatic Incrementation
When steady-state analysis is chosen, you suggest an initial “time” increment and define a “time” period for the step; Abaqus/Standard then increments through the step accordingly. By default, Abaqus/Standard automatically determines a suitable increment size for each increment of the step.
Fixed Incrementation
You can also use a fixed incrementation scheme, in which Abaqus/Standard uses the same increment size for the duration of the step. The suggested initial “time” increment, , defines the increment size.
Transient Analysis
Time integration in transient problems is done with the backward Euler method (sometimes also referred to as the modified Crank-Nicholson operator) in the pure conduction elements. This method is unconditionally stable for linear problems.
The forced convection/diffusion elements use the trapezoidal rule for time integration. They include numerical diffusion control (the “upwinding” Petrov-Galerkin method) and, optionally, numerical dispersion control. The elements with dispersion control offer improved solution accuracy in cases where the transient response of the fluid is important. Artificial dispersion control introduces a stability limit on the size of the time increment such that the local Courant number
must be less than 1, where is the time increment, is the magnitude of the velocity vector, and is a characteristic element length in the direction of flow; that is, heat cannot be convected across more than one element length, , in a single increment of time. In a uniform velocity field, the smallest element will dictate the stable time increment. Approximate calculation of the Courant number, C, is helpful during the mesh design stages so that excessively small stable time increments can be avoided. The elements without dispersion control have no such stability limit; therefore, it may be more economical to use the elements without this feature in transient cases where transient effects in the fluid itself are not a critical part of the solution (for example, when the important solution is the temperature field in the solid bodies that are included in the model, and when characteristic transient times in the fluid are very much shorter than characteristic transient times in the solids).
Time incrementation in a transient heat transfer analysis can be controlled directly by you or automatically by Abaqus/Standard. Automatic time incrementation is generally preferred.
Automatic Incrementation
The time increments can be selected automatically based on the user-prescribed maximum allowable nodal temperature change in an increment, . Abaqus/Standard will restrict the time increments to ensure that this value is not exceeded at any node (except nodes with boundary conditions) during any increment of the analysis (see Time Integration Accuracy in Transient Problems).
Fixed Incrementation
If you select direct incrementation and do not specify , fixed time increments equal to the user-specified initial time increment, , will then be used throughout the analysis.
Spurious Oscillations due to Small Time Increments
In transient heat transfer analysis with second-order elements there is a relationship between the minimum usable time increment and the element size. A simple guideline is
where is the time increment, is the density, c is the specific heat, k is the thermal conductivity, and is a typical element dimension (such as the length of a side of an element). If time increments smaller than this value are used in a mesh of second-order elements, spurious oscillations can appear in the solution, in particular in the vicinity of boundaries with rapid temperature changes. These oscillations are nonphysical and may cause problems if temperature-dependent material properties are present. Abaqus/Standard provides no check on the user-defined initial time increment; you must ensure that the given value does not violate the above criterion.
In transient analyses using first-order elements the heat capacity terms are lumped, which eliminates such oscillations but can lead to locally inaccurate solutions especially in terms of the heat flux for small time increments. If smaller time increments are required, a finer mesh should be used in regions where the temperature changes occur.
Unless you specify a maximum allowable time increment size as part of the heat transfer step definition, there is no upper limit on the time increment size (the integration procedure is unconditionally stable, at least for linear problems). However, if forced convection/diffusion elements including numerical dispersion control (element types DCCxxD) are included in the model, there is a numerical stability limit on the allowable time increment. The requirement is that , where is the magnitude of the fluid velocity and is a characteristic element length in the direction of flow. Abaqus/Standard will adjust the time increment automatically to satisfy this stability limit.
Ending a Transient Analysis
A transient analysis can be terminated by completing a specified time period, or it can be continued until steady-state conditions are reached. By default, the analysis will end when the given time period has been completed. Alternatively, you can specify that the analysis will end when steady state is reached or after the given time period, whichever comes first. Steady state is defined by the temperature change rate: when the temperature at every temperature degree of freedom changes at a rate that is less than the user-specified rate (given as part of the step definition), the analysis terminates.
Internal Heat Generation
You can define volumetric heat generation within a material in user subroutine HETVAL or user subroutine UMATHT. You can use these user subroutines in the same analysis.
Defining Internal Heat Generation in User Subroutine HETVAL
If you define internal heat generation in user subroutine HETVAL, you must include heat generation in the material definition with the other thermal property definitions.
Heat generation might be associated with (relatively low) energy phase changes occurring during the solution. Such heat generation usually depends on state variables (such as the fraction transformed), which themselves evolve with the solution and are stored as solution-dependent state variables (see About User Subroutines and Utilities). The heat generation is computed in user subroutine HETVAL, where any associated state variables can also be updated. The subroutine will be called at all material calculation points for which the material definition includes heat generation.
Defining Internal Heat Generation in User Subroutine UMATHT
If you define internal heat generation in user subroutine UMATHT, you must also define the constitutive thermal behavior in the subroutine.
Forced Convection through the Mesh
The velocity of a fluid moving through the mesh can be prescribed if forced convection/diffusion heat transfer elements are used. Conduction between the fluid and adjacent forced convection/diffusion heat transfer elements will be affected by the mass flow rate of the fluid. For example, if a pipe is filled with a fluid with an initial temperature profile that contains a temperature pulse, the initial temperature pulse will not only diffuse (because of conduction in the fluid and the pipe), but it will also be transported (or convected) down the pipe. Since the fluid velocity is prescribed, it is called forced convection.
Natural convection occurs when differences in fluid density created by thermal gradients cause motion of the fluid (bouyancy-driven flow). The forced convection/diffusion elements are not designed to handle this phenomenon; the flow must be prescribed.
You can specify the mass flow rates per unit area (or through the entire section for one-dimensional elements) at the nodes. Abaqus/Standard interpolates the mass flow rates to the material points. The numerical solution of the transient heat transfer equation including convection becomes increasingly difficult as convection dominates diffusion. The Peclet number, , is a dimensionless parameter that indicates the degree of convection dominance over diffusion:
where is the magnitude of the velocity vector, is the density, c is the specific heat, k is the thermal conductivity, and is a characteristic element length in the direction of flow. Large values of indicate that convection dominates over diffusion on the spatial scale defined by the element size, . In general, Peclet numbers greater than about 1000 should not be used.
Petrov-Galerkin finite elements are used in Abaqus/Standard to model systems with high Peclet numbers accurately; these elements use nonsymmetric, upwinded weighting functions to control numerical diffusion and dispersion and, thus, stabilize results. The upwinding term is partly a function of the element Peclet number, as described in Convection/diffusion.
If the fluid flows along a boundary along which a rapid change of temperature is prescribed, it is, in fact, subjected to a thermal transient, even for steady-state analysis. This transient can give rise to the same kind of spurious temperature oscillations that are observed in transient heat transfer analysis, as discussed earlier in this section. Since Abaqus/Standard uses first-order elements for convective heat transfer, the oscillation can be eliminated by lumping the heat capacity terms. However, the upwinded weighting functions prevent lumping in the direction of the flow. Hence, spurious oscillations may still occur, in particular if the flow is not precisely tangential to the boundary along which the temperature change occurs.
Modifying or Removing Mass Flow Rates
By default, the mass flow rates given are modifications of existing flow rates or are to be applied in addition to any mass flow rates defined previously. You can remove all previously defined mass flow rates and, optionally, specify new mass flow rates.
Specifying Time-Dependent Mass Flow Rates
Mass flow rates can be given in combination with an amplitude definition, if required, to control the magnitude of the flow rate as a function of time (Amplitude Curves).
Defining Mass Flow Rates in a User Subroutine
Mass flow rates can be defined by user subroutine UMASFL. UMASFL will be called for each specified node. Any mass flow rate values given directly will be ignored.
Reading the Mass Flow Rate Data from an Alternate File
The data for the mass flow rate can be contained in an alternate file. See Input Syntax Rules for the syntax of the file name.
Cavity Radiation
Cavity radiation can be activated in a heat transfer step. This feature involves interacting heat transfer between all of the facets of the cavity surface, dependent on the facet temperatures, facet emissivities, and the geometric view factors between each facet pair. When the thermal emissivity is a function of temperature or field variables, you can specify the maximum allowable emissivity change during an increment in addition to the maximum temperature change to control the time incrementation. See Cavity Radiation in Abaqus/Standard for more information.