This is an old revision of the document!
Table of Contents
Heat Source/Flux
Materials
Since flux interactions are boundary conditions interactions, no materials must be associated to the element.
Element
Therefore, the first step consist in defining an ElementProperties
, as
prp = ElementProperties(typeEl) prp.put(param1, value1) prp.depend(param1, fct1, Lock1)) #optional ...
where
typeEl | desired element (for example Tm[2]HeatFlux[2|3]DElement ) |
param1 | name of the property associated to the element (for example HEATEL_VALUE ) |
value1 | value of the corresponding property |
fct1 | function which characterizes the dependency of the property (optional: no fct if no dependency) |
Lock1 | Lock which defines the dependency variable of the property (compulsory if there is a dependency) |
Tm[2]HeatFlux[2|3]DElement
Description
Thermal heat flux element in 2/3D, first or second order (thermal field of second order), that can be created on “boundary” geometries (i.e. curves in 2D and sides in 3D).
There are currently 4 different heat flux distributions types that are implemented for this element. These can be selected by using the HEATEL_TYPE
parameter when defining the element properties.
Constant Heat Flux Distribution (=default)
Heat flux at each Gauss point is equal to HEATEL_VALUE
[W/m$^2$].
prp.put(HEATEL_TYPE, HEATEL_CONSTANT)
Rectangular Heat Flux Distribution
Heat flux at each Gauss point is equal to a uniform distribution of the total heat $Q_{src}$ within a rectangular surface centered on the local heat flux coordinates $$ q = \frac{Q_{src}}{4a b}~~~\text{if } x'\in [-a,~a],~~ y'\in [-b,~b], $$ where $a$ and $b$ are the half lengths of the rectangle in the $x'$ and $y'$ local coordinate directions respectively.
prp.put(HEATEL_TYPE, HEATEL_RECTANGULAR)
Ellipsoid Heat Flux Distribution
Heat flux at each Gauss point is equal to an ellipsoid Gaussian distribution function of the total heat $Q_{src}$ centered on the local heat flux coordinates [Goldak et. al. 1986] $$ q = \frac{Q_{src} 6\sqrt{3}}{ab \pi^\frac{3}{2}}~ e^{-3\left(\frac{x'}{a}\right)^2}~ e^{-3\left(\frac{y'}{b}\right)^2} $$ where $a$ and $b$ are the semi-axes lengths of the ellipsoid in the $x'$ and $y'$ directions respectively.
prp.put(HEATEL_TYPE, HEATEL_ELLIPSOID)
Double Ellipsoid Heat Flux Distribution
Modification of the ellipsoid Gaussian distribution function to account for a different distribution at the front ($x'>=0$) and at the rear ($x'<0$) of the heat flux [Goldak et. al. 1986] $$ q_f = f \frac{Q_{src} 6\sqrt{3}}{ab \pi^\frac{3}{2}}~ e^{-3\left(\frac{x'}{a}\right)^2}~ e^{-3\left(\frac{y'}{b}\right)^2}, ~~~~~~~~x'>=0 $$ $$ q_r = (1-f) \frac{Q_{src} 6\sqrt{3}}{a_rb \pi^\frac{3}{2}}~ e^{-3\left(\frac{x'}{a_r}\right)^2}~ e^{-3\left(\frac{y'}{b}\right)^2}, x'<0 $$ where $a$ and $a_r$ are the front and rear semi-axes lengths in the $x'$ directions, $b$ is the semi-axis length in the $y'$ direction, and $f=\frac{ba}{a+a_r}$ is the balancing factor.
prp.put(HEATEL_TYPE, HEATEL_DOUBLE_ELLIPSOID)
Parameters
Name | Metafor Code | Dependency |
---|---|---|
Type of surface distribution | HEATEL_TYPE | - |
Total applied heat $Q_{src}$[W] (heat per area for HEATEL_CONSTANT ) | HEATEL_VALUE | TO/TM |
Semi-axis Length ($a$) | HEATEL_A | - |
Semi-axis Length ($b$) | HEATEL_B | - |
Semi-axis Length ($a_r$) | HEATEL_AR | - |
Number of integration points | NIP | - |
Material Stiffness (STIFF_ANALYTIC - STIFF_NUMERIC) only if element Stiffness == STIFF_ANALYTIC | MATERIALSTIFFMETHOD | - |
Tm[2]HeatSource[2|3]DElement
Description
Thermal heat source element in 2/3D, first or second order (thermal field of second order), that can be created on “volume” geometries (i.e. sides in 2D and volumes in 3D).
There are currently 4 different types of heat source distributions that are implemented for this element. These can be selected by using the HEATEL_TYPE
parameter when defining the element properties.
Constant Heat Source Distribution (=default)
Heat source at each Gauss point is equal to HEATEL_VALUE
[W/m$^3$].
prp.put(HEATEL_TYPE, HEATEL_CONSTANT)
Rectangular Heat Flux Distribution
Heat source at each Gauss point is equal to a uniform distribution of the total heat $Q_{src}$ within a box volume centered on the local heat flux coordinates $$ q = \frac{Q_{src}}{8a b c}~~~\text{if } x'\in [-a,~a],~~ y'\in [-b,~b],~~ z'\in [-c,~c], $$ where $a$, $b$ and $c$ are the half lengths of the rectangle in the $x'$, $y'$ and $z'$ local coordinate directions respectively.
prp.put(HEATEL_TYPE, HEATEL_RECTANGULAR)
Ellipsoid Heat Flux Distribution
Heat source at each Gauss point is equal to an ellipsoid Gaussian distribution function of the total heat $Q_{src}$ centered on the local heat flux coordinates [Goldak et. al. 1986] $$ q = \frac{Q_{src} 12\sqrt{3}}{abc \pi^\frac{3}{2}}~ e^{-3\left(\frac{x'}{a}\right)^2}~ e^{-3\left(\frac{y'}{b}\right)^2}~ e^{-3\left(\frac{z'}{c}\right)^2} $$ where $a$, $b$ and $c$ are the semi-axes lengths of the ellipsoid in the $x'$, $y'$ and $z'$ directions respectively.
prp.put(HEATEL_TYPE, HEATEL_ELLIPSOID)
Double Ellipsoid Heat Flux Distribution
Modification of the ellipsoid Gaussian distribution function to account for a different distribution at the front ($x'>=0$) and at the rear ($x'<0$) of the heat flux [Goldak et. al. 1986] $$ q_f = f \frac{Q_{src} 12\sqrt{3}}{ab \pi^\frac{3}{2}}~ e^{-3\left(\frac{x'}{a}\right)^2}~ e^{-3\left(\frac{y'}{b}\right)^2}~ e^{-3\left(\frac{z'}{c}\right)^2}, ~~~~~~~~x'>=0 $$ $$ q_r = (1-f) \frac{Q_{src} 12\sqrt{3}}{a_rb \pi^\frac{3}{2}}~ e^{-3\left(\frac{x'}{a_r}\right)^2}~ e^{-3\left(\frac{y'}{b}\right)^2}~ e^{-3\left(\frac{z'}{c}\right)^2}, x'<0 $$ where $a$ and $a_r$ are the front and rear semi-axes lengths in the $x'$ directions, $b$ and $c$ are the semi-axes lengths in the $y'$ and $z'$ direction, and $f=\frac{ba}{a+a_r}$ is the balancing factor.
prp.put(HEATEL_TYPE, HEATEL_DOUBLE_ELLIPSOID)
Parameters
Name | Metafor Code | Dependency |
---|---|---|
Type of volume distribution | HEATEL_TYPE | - |
Total applied heat $Q_{src}$[W] (heat per volume $q$[W/m$^3$] for HEATEL_CONSTANT ) | HEATEL_VALUE | TO/TM |
Semi-axis Length ($a$) | HEATEL_A | - |
Semi-axis Length ($b$) | HEATEL_B | - |
Semi-axis Length ($c$) | HEATEL_C | - |
Semi-axis Length ($a_r$) | HEATEL_AR | - |
Number of integration points | NIP | - |
Material Stiffness (STIFF_ANALYTIC - STIFF_NUMERIC) only if element Stiffness == STIFF_ANALYTIC | MATERIALSTIFFMETHOD | - |
Tm[2]ConvectionHeatFlux[2|3]DElement
Description
Thermal convection heat flux element in 2/3D, first or second order (thermal field of second order), that can be created on “boundary” geometries (i.e. curves in 2D and sides in 3D).
Parameters
Name | Metafor Code | Dependency |
---|---|---|
Type of surface distribution | HEATEL_TYPE | - |
Distribution along $x'>=0$ (only for HEATEL_TYPE = CONVHEATEL_COMBINE ) | CONVHEATEL_TYPE_XF | - |
Distribution along $x'<0$ (only for HEATEL_TYPE = CONVHEATEL_COMBINE ) | CONVHEATEL_TYPE_XR | - |
Distribution along $y'$ (only for HEATEL_TYPE = CONVHEATEL_COMBINE ) | CONVHEATEL_TYPE_Y | - |
Fluid temperature $T_f$ | TEMP_FLUIDE | TO/TM |
Amplitude of the convection coefficient $A$ | CONV_COEF | TO/TM |
Concentration factor ($k_x$) | CONVHEATEL_KX | - |
Semi-axis Length ($k_y$) | CONVHEATEL_KY | - |
Semi-axis Length ($k_{xr}$) | CONVHEATEL_KXR | - |
Number of integration points | NIP | - |
Material Stiffness (STIFF_ANALYTIC - STIFF_NUMERIC) only if element Stiffness == STIFF_ANALYTIC | MATERIALSTIFFMETHOD | - |
Interaction
The interaction is defined as:
load = HeatInteraction(no) load.push(gObject1) load.push(gObject2) ... load.setAxes(Ox, Oz) load.useRescale(bool) load.addProperty(prp) interactionset.add(load)
where
no | number of the Interaction |
gObject1 , gObject2 | mesh geometric entity where the boundary conditions are applied |
prp | Properties of boundary condition elements to generate |
Ox , Oz | Curve entities that define the local coordinates $x'$ and $z'$ for the heat distribution function (not necessary for HEATEL_CONSTANT )Prescribed Displacements and/or Prescribed Rotations can be applied on these curves to obtain a moving heat source |
useRescale(bool) | Rescaling of the heat flux = False (default): do nothing = True: allows the rescaling of all heat source at each beginning of time-step to obtain the exact value of total applied HEATEL_VALUE HEATEL_CONSTANT and Tm[2]ConvectionHeatFlux[2|3]DElement |