Вы находитесь на странице: 1из 13

Computers and Mathematics with Applications ( ) –

Contents lists available at ScienceDirect

Computers and Mathematics with Applications


journal homepage: www.elsevier.com/locate/camwa

A 66 line heat transfer finite element code to highlight the


dual approach
Pierre Beckers a,∗ , Benoit Beckers b
a
Aerospace and Mechanical Engineering Department, University of Liège, Liège, Belgium
b
Roberval Laboratory – Urban Systems Engineering Department, Compiègne University of Technology, Compiègne, France

article info abstract


Article history: The paper presents a compact Matlab implementation of a finite element code performing
Received 12 December 2014 dual analysis of heat conduction problems. After a short presentation of the concerned
Received in revised form 13 May 2015 variational principles, the conductivity matrices of the dual models are developed
Accepted 7 September 2015
explicitly. In the next step, a Matlab procedure is written. It shows in 66 statements how
Available online xxxx
it is possible to perform the dual analysis using the unique formalism based on a global
conductivity matrix. This fully general method allows using the same finite element code
Keywords:
Finite element
to run the dual analyses. After showing the convergence properties, a second application is
Duality developed in order to show how easily the code can be modified. The last part of the paper,
Heat conduction addressed to skilled readers, provides useful comments on the heat problem formulation.
Free code The Matlab procedure is proposed as a free code for educational purposes and can be
Convergence extracted directly from the document using the standard copy and paste function.
Matlab code © 2015 Elsevier Ltd. All rights reserved.

1. Introduction

The dual approach to the finite element method consists in discretizing two conjugated fields of the concerned physical
problem in order to obtain approximations that enclose the unknown exact solution. Although rather ancient, this approach
has often been misunderstood or restricted to a small community of specialists. The main objective of this publication is to
make the concept clear to most users of the finite element method (see Table 1 for notations).
Dual approach is also motivated by the characteristics of the problems to be addressed. Because it is appropriate to use
radiosity methods [1] in the radiative heat transfer [2], when the heat conduction in solids is analyzed, it is practical to use
a method of resolution based on the discretization of the same faces as in the radiosity methods.
Therefore, in the calculations of thermal conduction, while the most used methods are up to now the nodal ones [3], for
the sake of integration with thermomechanical calculations, we prefer the finite element methods [4]. In this perspective,
the thermal conduction elements that are best suited to the radiosity calculations are those where we are discretizing not
the temperature field, which is a nodal variable, but the heat flux, which is a facet variable. This is the main reason for our
choice of the dual approach in the domain of thermal conduction.
To solve the thermal problem, it is sufficient to discretize two of the following four fields: temperature, temperature
gradient, stream function and heat flow. By minimizing the energy of the system with respect to the parameters of the chosen
approximation, we obtain as integrals the equations that must meet the conjugate field. In this way, when discretizing the
temperature field, the energy minimization provides a weak form (integral) of the equilibrium equations of the heat flow.

∗ Corresponding author.
E-mail address: Pierre.Beckers@ulg.ac.be (P. Beckers).

http://dx.doi.org/10.1016/j.camwa.2015.09.007
0898-1221/© 2015 Elsevier Ltd. All rights reserved.
2 P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) –

Table 1
Taxonomy and dimensions.
Variable Symbol Units

Conductivity coefficient and tensor k & kij W K−1 m−1


Resistivity coefficient r W−1 K m
State variable temperature T K
Temperatures array t K
Temperature gradient gi K m−1
Temperature gradient array G K m−1
Thermal loads array f W
Heat flux and heat flux array qi , p W m−2
Stream function ψ W
Connection matrix B m2
Conductivity matrix C W K−1
Core resistivity matrix R W−1 K m4
Dissipation function I, J, F , P, Q WK
Geometric variable: thickness e m
Geometric variable: length a, b, c m
Geometric variable: area ∂i D m2
Geometric variable: volume D m3

The main advantage of the dual analysis is to perform with the same finite element mesh two analyses that enclose the
exact solution [5]. After defining one of the two models, we can automatically build the second model by simply ‘‘translating’’
the data of the first one.
The objective of this report is to present the dual analysis in a simple and didactic way so as to make it accessible to a
student who will be able to program it and test all its features. To meet this objective, we propose a short program written
in Matlab⃝ R
formalism. This approach was followed by O. Sigmund [6] to highlight the properties and the simplicity of the
topology optimization method in order to make it accessible to most students.
Using a formulation in which the temperature and the flow are discretized, we develop two types of finite elements in the
same formalism based on conductivity. So, it is possible to obtain the dual solutions, the first one with a strong knowledge
of temperature and a weak one of the flow, the second one with a weak knowledge of the temperature and a strong one of
the flow. This procedure requires only 66 lines of Matlab code.
The proposed formulation can be used to emphasize the properties of the dual analysis for academic problems, but it can
also be improved in order to tackle more complex forms with use of unstructured meshes. It is also possible to improve the
performance of the solver by taking into account the symmetry and the sparse character of the conductivity matrix.
The treatment of the convection boundary conditions does not involve particular problem. As well as the calculations
in three dimensions, the consideration of the time aspect is fundamental in the simulation of thermal behavior in most
applications. However, for the sake of conciseness and because their inclusion is not essential for the understanding of the
process, we have chosen not to address these three issues, which are widely accessible in the literature [7].

2. Two fundamental functionals

2.1. Temperature

The following development is based on a publication dealing with the thermal application of the dual analysis [8]. The
stationary (or permanent) heat conduction is one of the many field problems that can accept a variational formulation.
We first introduce the basic formulation in terms of the temperature field alone. The finite element discretization uses
parametric approximations of the temperature that ensure its continuity across the element interfaces.
In a simply connected domain and in the simplest formulation, in which we do not take into account the convection
boundary conditions or the internal heat sources, the method consists of minimizing the temperature functional (in the
next formula, the Einstein summation convention is applied: repeated indices mean summation). The following variables
are introduced: the symmetric tensor of thermal conductivity kij , an imposed surface heat flux source q̄ and an outside
imposed temperature T̄e .
 
1
I (T ) = kij ∂i T ∂j T dD + q̄T dS , extremum. (1)
D 2 S2

The boundary S of the domain involves two parts, each one being possibly disjoint.
S = S1 + S2 . (2)
Two usual boundary conditions are related to these zones (the bars indicate that the quantity is imposed; ni is the normal
to the boundary surface S):

T = Te on S1
(3)
ni kij ∂j T + q̄ = 0 on S2 .
P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) – 3

The functional I (T ) is stationary under small perturbations δ T of the temperature field submitted to the boundary
conditions:

T = T̄e , δ T = 0 on S1 . (4)
Euler equations are derived from the variation of the functional T in the volume:

∂i kij ∂j T = 0.
 
(5)
Fourier’s law relates the temperature gradient to the heat flow vector:
qi = −kij ∂j T . (6)
From (3) and (5), we obtain the equilibrium equations in terms of heat flow:

−ni qi + q̄ = 0 on S2
(7)
−∂i qi = 0.
The functional of this principle of variation of temperature (1) is the sum of a dissipation functional

1
F (T ) = kij ∂i T ∂j TdD (8)
D 2
and a potential energy of prescribed thermal loads

P (T ) = q̄T dS . (9)
S2

2.2. Thermal flux

The dual problem is obtained by reciprocal transformation [9]. Fourier’s law is used to eliminate the temperature
gradients. After some transformations, we get:
 
1
J (⃗
q) = rim qi qm dD + nm qm Te dS , extremum. (10)
D 2 S1

It is the thermal analogue of the complementary energy principle of elasticity. In this principle, it is assumed that the
heat equilibrium equations are a priori satisfied in the domain D and on the boundary S2 (7). In short, expression (10) is the
sum of the dissipation functional (8) expressed in terms of heat flow through Fourier’s law:

1
F (⃗
q) = rim qi qm dD (11)
D 2
and a dual or complementary potential energy

Q (⃗
q) = nm qm Te dS . (12)
S1

The upper or lower bound character of the dissipation functional depends on the conjugated formulations of the
application. This problem has been broadly addressed in elasticity [10–15].

3. Two finite element models for thermal conduction

3.1. Cinematically admissible (CA) rectangular element

• Conductivity matrix
The calculation of the conductivity matrix of the first degree rectangular element can be completed explicitly. In the
first functional F (T ) of expression (1), the unknown function T is replaced by a polynomial approximation expressed in
dimensionless form to avoid numerical problems. The variable ti represents the temperature field at node i, they are called
nodal temperatures or, more generally, degrees of freedom (DOF ).
The nodal temperatures are defined as sequences that are the same for all the elements (Fig. 1). In the left square, the
numbers indicate the sequence in the element taken alone. These degrees of freedom are located at the four corners of
the rectangle. They are used to represent the temperature field of the element. They also ensure continuity through the
interfaces for which the nodal temperatures are the same. On the right part of Fig. 1, we observe the numbering of the DOF
and of the elements inside a rectangular domain (see also Table 2).
4 P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) –

Fig. 1. Local and global DOF of the cinematically admissible element CA.

Fig. 2. Local and global DOF of the statically admissible element SA.

Table 2
Localization matrix of the CA elements in the domain of Fig. 1.
Element numbers Connected structural nodes (Fig. 1)

1 1 4 5 2
2 2 5 6 3
3 4 7 8 5
4 5 8 9 6
5 7 10 11 8
6 8 11 12 9
7 10 13 14 11
8 11 14 15 12
9 13 16 17 14
10 14 17 18 15
11 16 19 20 17
12 17 20 21 18
13 19 22 23 20
14 20 23 24 21
15 22 25 26 23
16 23 26 27 24

In the local axes of the element (left part of Fig. 2), the temperature field is expressed as:
 x y x y xy  x y
T = 1− 1− t1 + 1− t2 + t3 + 1 − t4 (13)
a b a b ab a b
where a and b are the dimensions of the element. The temperature gradient G is:
 ∂T   
 t1
 ∂x 
  
gx 1 y−b b−y y −y t2 
G= =  ∂T  = . (14)
gy ab x − a −x x a − x t  3

∂y t4

The functional F (8) can now be written in matrix form by introducing the conductivity matrix C . The dissipation function,
discretized form of F , is a quadratic function of the nodal temperatures. The volume is the product of the area by the thickness
e.
In the isotropic case, the conductivity coefficient k is a scalar whose variation range is very important: from
0.028 W K−1 m−1 for polyurethane to 385 W K−1 m−1 for copper.

ke 1
F (T ) = t T GT G dxdy t = t T Ct . (15)
elem 2 2
From (15), the conductivity matrix is easily obtained. It does not depend on the size of the element, but only on its
thickness and aspect ratio d = a/b.
  2  
2 d + 1  ···  ··· SYM
ke  d2 − 2 2 d2 + 1
C =   2  ·· 
· ···  . (16)
1− 2d2  2 d2 + 1

6d −
 d + 21  ·2· · 

1 − 2d − d2 + 1 d2 − 2 2 d +1
P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) – 5

The sum of the terms of each column is equal to zero, which is a consequence of its singularity and also allows satisfying
the overall thermal equilibrium. For a square element:
 
4 ··· ··· SYM
ke −1 4 ··· ··· 
C = . (17)
6 −2 −1 4 ··· 

−1 −2 −1 4
The global conductivity matrix is built by locating each element in the domain (Fig. 2) using the localization matrix
defined in Table 2. In this presentation, the assembling task is performed from the DOF localization matrix, but, in general,
the elements have a variable geometry (e.g. triangles of different shapes). To calculate the conductivity matrix, it is necessary
to know the node coordinates. This is done by introducing a table with the nodes numbers and their x and y coordinates and
a localization matrix such as this of Table 2, which refers not to the DOF but to the geometric nodes from which the DOF
localization matrix is deduced.
• Thermal flow
The heat flow calculation is realized from Fourier’s law (6) and the definition (14) of the thermal gradients.
   
qx k
y−b b−y y −y
= −k G = − t. (18)
qy ab x − a −x x a−x

Because the temperature is discretized as a bilinear polynomial, we get the same result by calculating the average of the
flux or its value at the center of the element. For a square, we have:
     
qx q 1 k −1 −1 1
= x = t. (19)
qy
average
qy x=a/2 2a 1 1 −1 −1
y=a/2

• Thermal loads
To simplify the presentation, we restrict without loss of generality in considering only one side of the finite element. In
the expression of the potential energy of the prescribed thermal loads (9), q̄ is replaced by q̄ij , the load on the side (length lij )
connecting nodes i and j. This potential energy of prescribed thermal loads is then obtained by integration along the side of
the product of the imposed flow by the temperature field expressed as a linear function of the two values at the extremities:
   
1−s s
P (T ) = q̄ij T dS = e q̄ij ti + tj ds = fi ti + fj tj . (20)
ij ij lij lij
From this expression, we deduce the definition of the generalized thermal loads:
   
1−s s
q̄ij ds .
 
fi fj = e q̄ij ds e (21)
ij lij ij lij

They are collected in the vector f . In each node, there are contributions from the two adjacent sides. The functional I (1)
is then expressed in discrete form by adding (15)–(20):
 
1
⟨F (T ) + P (T )⟩min → t T Ct + f T t . (22)
2 min

The minimization of this expression with respect to the independent temperature parameters contained in the vector t
leads to the linear system:
f = −C t . (23)

3.2. Statically admissible (SA) rectangular element

• Conductivity matrix
A heat flow field, constant throughout the thickness of the rectangular (a × b) element and whose components normal
to the vertical and the horizontal sides are also constant can be written:
x
 
  γ1 + γ2
qx a.
= (24)

qy y
γ3 + γ4
b
The four parameters are related by the condition of continuity:
γ2 γ4
∇ · q⃗ = 0 → + = 0. (25)
a b
6 P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) –

Therefore, the thermal field in equilibrium inside the element is:


x x
   
γ1 + γ2 1 0 γ
   
qx a =  a  1
=  γ2 = Np. (26)

qy y   y
γ3 − γ2 0 − 1 γ3
a a
The matrix N defines the relationships between the components of the heat flow and the parameters p of the
discretization. The resultants of the normal flows on the sides of the element ensure the continuity (or the equilibrium)
on the interfaces. They are calculated in a double integral performed on the thickness and the length of the element sides.
  a     
qy y=b dx = a qy y=b
 0 
 a     
aγ3 − bγ2
     
f1 
− qy y=0 dx = −a qy y=0 
 0 −b a  
γ
 −aγ3 

f2   0 0 0 −a  1
γ2 = Bp. (27)

[f ] =   = −e   b

 = −e bγ1 + bγ2  = −e  b

f3 b 0 
( ) ( ) γ3
q dy = b q −bγ1
 
f4  x x =a x x=a  −b 0 0
 0 
 b 
− (qx )x=0 dy = −b (qx )x=0
0

The thickness e of the element is assumed constant. The sum of the terms in each column of B is zero. The discretized
form of the dissipation functional (11) is then:

1 1
er pT N T N p dxdy = pT R p .
 
⃗ =
F q (28)
el 2 2
The matrix R is preferably called core resistivity matrix because it is expressed in terms of the independent internal
parameters p and is therefore nonsingular. The application of principle (10) to an isolated element surrounded by a boundary
of S2 is equivalent to minimizing the expression (28) in which the p parameters are known only through the generalized
loads g. This can be achieved by introducing the constraint (27) by means of Lagrange multipliers t. The function to be
minimized is now:
1
pT R p − f T − pT BT t.
 
(29)
2
The conditions of minimum are:

f = Bp
. (30)
Rp + BT t = 0

By combining the two equations (30), we obtain:

f = −BR−1 BT t = −Ct . (31)

The second member f of Eq. (31) has been calculated in (27). Lagrange multipliers t are interpreted by expressing that
their product by the generalized loads f corresponds to the virtual work of the heat flow on the temperature.
  fij  1

T
f t = (qn )ij Tds = Tds → tij = Tds. (32)
edges ij l
edges ij ij lij ij

Finally:
a a b b
     
1 1 1 1
Tx=0 dy .
T
 
t = t1 t2 t3 t4 = Ty=b dx Ty=0 dx Tx=a dy (33)
a 0 a 0 b 0 b 0

The inversion of the resistivity matrix R is easily performed explicitly for this low order element. In other situations, it
can be inverted numerically without difficulty since it is positive definite [8].

4a2 + b2
 
··· SYM
k

6 6a 
.
−1
 
R =   −a 2a ···  (34)
2 2
eb a +b  2 2
b a + 4b

− b
2 6a
P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) – 7

Table 3
Localization matrix of the SA elements in the domain of Fig. 2.
Element numbers Connected structural nodes (Fig. 2)

1 4 3 6 1
2 5 4 7 2
3 9 8 11 6
4 10 9 12 7
5 14 13 16 11
6 15 14 17 12
7 19 18 21 16
8 20 19 22 17
9 24 23 26 21
10 25 24 27 22
11 29 28 31 26
12 30 29 32 27
13 34 33 36 31
14 35 34 37 32
15 39 38 41 36
16 40 39 42 37

The conductivity matrix is deduced from (27), (31) and (34). It does not depend on the size of the element, but only on
its thickness and its aspect ratio d = a/b.
 2  
4d + 21  ·2 · ·  ··· SYM
ked  2−d 4d + 1
C =    2· · 
· ···  . (35)
1+d 2 −3 −3 4d + 21  ·2 · · 

−3 −3 2−d 4d + 1
If the element is a square, d = 1, and:
 
5 ··· ··· SYM
ke  1 5 ··· ··· 
C = . (36)
2 −3 −3 5 ···

−3 −3 1 5
The calculation of the dissipation function is achieved by expressing in discrete form that the variation of the sum of the
dissipation function and the potential energy of the imposed thermal loads is zero.
 
1 T
t Ct +f t T
extremum. (37)
2
As in (23), we deduce the system to be solved:
f = −Ct . (38)
The structural matrix is built by locating each element into the domain (Fig. 2 and Table 3).
• Thermal flow
From (24), (26) and (30), we obtain the flux as a function of the mean temperatures (33):
 
qx
= NR−1 BT t . (39)
qy
For a square (a = b):
1 x 1 x 1 x 5 x
 
t1
 
3k  − − − + − +
qx a  t2  .
= − 2 a 2 a 6 a 6 (40)
qy a y 1 5 y
 t 
3y 1 y 1
− − + − − t4
a 6 6 a 2 a 2 a
The x component of the flow only depends on x and the y component only on y. The average value of the flow is equal to
its value at the center of the element.
        
qx 1 qx qx k 0 0 −1 1
= dS = = t. (41)
qy
average a2 el
qy qy x=a/2 a −1 1 0 0
y=a/2

• Thermal loads
In this formulation, the loading is enforced by the discretization of the heat flow field. In the analyzed situation, we only
have vertical or horizontal sides with constant normal flows. The thermal loads are then limited to constant values on the
vertical or horizontal sides.
8 P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) –

Fig. 3. Input data and boundary condition expressed in temperature formulation.

Fig. 4. Isotherms from 0 to 710 K with 10 K steps.

4. Computation procedure

All the results and examples have been calculated with a short Matlab⃝ R
procedure (Appendix). It is easy to use and
transform it in order to, for example, modify the application or define a new one. The procedure reflects the conventional
steps of a finite element program.
1. The mesh generation is limited to the construction of a structured grid in a rectangular domain.
2. Since all the elements are identical squares, the finite element generation is limited to a single calculation of the element
conductivity matrix.
3. The introduction of the boundary conditions is carried out by small easy to modify blocks of instructions.
4. The assemblies of the matrix and the second member are completed in a standard way using localization matrices, which
are different but identically managed in both models.
5. The solution of the system is obtained in a single statement of the Matlab⃝ R
formalism.

R
6. Postprocessing is performed with standard Matlab procedures dedicated to curves drawing or matrices representa-
tions.
To achieve a maximum condensation of the program, we chose to work only on a rectangular domain, which greatly
simplifies the mesh generation. Furthermore, using finite elements which all have the same shape reduces the generation
to a single element that has to be copied in different locations of the domain.
A thermal calculation as simple and standard as possible is carried out. The domain is submitted to Dirichlet conditions
(imposed temperature) on the vertical sides and Neumann conditions on the horizontal sides: constant flux on the half left
and zero flux on the half right.
This problem is solved in the Matlab formalism with a small number of instructions. The boundary conditions of Fig. 3, a
heat load of 1000 kW m−1 , a conductivity k = 100 W K−1 m−1 , a thickness t = 0.01 m and a 160 × 80 mesh give a dissipation
function equal to 554 213 W K. The isotherms of Fig. 4 are drawn, by steps of 10 K, between 0 K on the two vertical sides and
718 K near the central portions of the horizontal sides.
The CA model and its dual, the SA model, are programmed in the Matlab procedure of Appendix. For both models, we
use the same method based on the calculation of a conductivity matrix. The two sequences of calculation (lines 6–28 and
29–50) are almost identical. The localization of the element in the domain is carried out by the nodes in the first case and
by the sides in the second one. The boundary conditions are applied either on the nodes (CA) or on the sides (SA).
P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) – 9

Fig. 5. Temperature along the boundary of the symmetrical part of the domain, mesh 64 × 32.

Table 4
Convergence of CA and SA models.
d −d
Model number Mesh (nx × ny ) Dissipation: dCA (W K) Dissipation: dSA (W K) 2 dSA +dCA
SA CA

1 (2 × 1) 0.25000 0.58333 80%


2 (4 × 2) 0.46224 0.58333 23.16%
3 (8 × 4) 0.52747 0.56519 6.90%
4 (16 × 8) 0.54673 0.55791 2.02%
5 (32 × 16) 0.55220 0.55543 0.58%
6 (64 × 32) 0.55374 0.55465 0.17%
7 (128 × 64) 0.55416 0.55441 0.05%

To compare the results, one must take into account the nodal temperatures of the CA model and the sides mean
temperatures of the SA model. In the first case, interpolation is very easy to achieve and there is a very effective Matlab⃝R

procedure already used, for example, in Fig. 4, for rectangular grids. In the case of temperatures defined on the sides, it is
not difficult to calculate the extrapolation on adjacent nodes and then calculate the nodal values. This kind of procedure is
widely used in finite element codes, but we chose another method to avoid an alteration of the primary results due to this
postprocessing.
We prefer to superimpose on the same graph the direct results of the two calculations. For example, in Fig. 5, the CA
nodal temperatures are shown as continuous thin curve and SA side temperatures as dots in the middle of the sides. Both
solutions are fully consistent even for coarser meshes that can be tested with the procedure in Appendix. When moving
along the curve of Fig. 5, the temperature is the same as on the border of the upper part of Fig. 4.

5. Discussion

The previous academic application, originally designed to show the convergence behavior of the dual models [11], has
been proposed here for its easy implementation. In the two following paragraphs, some comments are given about the
convergence of the dissipation function related to the mesh refinement. The second paragraph shows a second application
with different boundary conditions. The last paragraph is addressed to more specialized readers interested by the stream or
stress function approaches.

5.1. Convergence properties of the dual solutions

The mesh refinement tests of the problem presented in Fig. 3 illustrate its excellent convergence behavior. The mesh
definition is given in the second column of Table 4. Its third and fourth columns provide the dissipation functions. The fifth
column is an estimate of the discretization error. Finally, it should be noted that uniform refinements are far from optimizing
the meshes. Therefore, to improve a solution, it is better to perform adaptive refinement [16].
10 P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) –

Fig. 6. CA (continuous) and SA (dotted) temperatures along the boundary.

5.2. Modification of the boundary conditions

The previous domain is again considered, but the way out of the channel is closed at the left side and both strong injection
and withdrawal of heat are added to disturb the main flow. These two flows are concentrated in the width of a single element
(1/128 of the width of the area).
Fig. 6 shows the evolution of the temperature along the limits of the domain. The maximum temperature, obtained where
the heat is injected, is equal to 575 K for the CA model and to 621 K for the SA model. The computed dissipation functions
are respectively equal to 89 336 W K for the CA model and 95 385 W K for the SA one. In this application, as observed in the
figure, a significant difference is observed between the CA and SA models in the zones where the high loads are applied. In
this case, the SA model exhibits better performances than the CA one. Even for the quite fine mesh 128 × 64, the error is
equal to 6.5%.

5.3. The possible formulations of the heat conduction problem

In mechanics, especially in linear elasticity, we used to consider whether the strain field or the stress field. These two
fields must satisfy their own equations: compatibility equations for the strains and equilibrium equations for the stresses,
these two fields are related by the constitutive equations of the concerned physical problem. In elasticity, Hooke’s law is
linking stresses to strains.
To satisfy the compatibility equations, it is sufficient to express the deformations as combinations of some derivatives of
the displacement field that must simply be continuous.
Similarly, to satisfy the equilibrium equations, it is sufficient to express the constraints as combinations of derivatives of
the stress functions, the Airy stress function for membranes and the Morera stress functions for plate bending.
This reveals four fields: stress or constraints, strains, stress functions and displacements. All of them may be discretized
so as to lead to four distinct finite element formulations. Two of them have been discussed above (Sections 3.1 and 3.2) in
detail. Unfortunately, the scope of the approach based on stress or stream functions is limited by their inability to deal with
three-dimensional problems.
According to previous publications [17,10] and other standard works in the area of potential flow and harmonic
functions [18], the above method can be applied to the case of potential flow concerned with ideal fluids and heat flows
in solids, these fields being both incompressible and irrotational. In these cases, the discretization is easier to implement
because the relevant fields are scalar. In heat conduction, the involved fields are the stream function, the heat flow, the
temperature gradient and the temperature.
These fields lead to four different possible discretized formulations with DOF either on the nodes or on the sides. However,
we have seen before that there are actually only two separate solutions.
We can now come back to the first application of Fig. 3. If the data are expressed in the same formalism of elements
with nodal degrees of freedom, for example: temperature and stream function, the problem expressed in terms of stream
function behaves fewer degrees of freedom (DOF ) than the equivalent temperature model (see columns 4 and 7 of Table 5).
This observation is obviously related to the application. Here, the most economical solution in terms of DOF is when the
stream function is discretized, because the Neumann boundary of the domain is twice as important as the Dirichlet one.
The weak formulations (36) of columns 5 and 6 contain asymptotically twice the degrees of freedom of the strong
formulations (17) of columns 4 and 7, two per node instead of one. In principle, they are more time consuming, but this
P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) – 11

Table 5
Number of DOF as a function of the formulation and the refinement.
Mesh Geometrical nodes Interfaces DOF CA DOF SAny (nx − 1) DOF ψ weak Formulation DOF ψ Model
nx × ny (nx + 1) (ny + 1) (nx + 1)ny (nx − 1) + nx (ny + 1) = CA (nx + 1)ny + (ny − 1)nx = SA (nx + 1)(ny − 1)
+ (ny + 1)nx (ny + 1)
1 2 3 4 5 6 7

2×1 6 7 2 5 3 0
4×2 15 22 9 18 14 5
8×4 45 76 35 68 60 27
16 × 8 153 280 135 264 248 119
32 × 16 561 1 072 527 1 040 1 008 495
64 × 32 2145 4 192 2079 4 128 4 064 2015
128 × 64 8385 16 576 8255 16 448 16 320 8127

Fig. 7. Dissipation function versus number of nodes.

is compensated by the fact that their matrices are sparse. The DOF are weakly coupled since they are defined on the sides
of the elements. If the solver is able to account for this property, the costs of the weak and the strong formulations are
similar [14].
The mean curve obtained by calculating the average of each pair of values is drawn in dashed line (Fig. 3). For small
numbers of DOF, this curve is pulled towards that of the CA model, showing clearly that this model converges slower than
the SA model (Fig. 7).

6. Conclusions and perspectives

We have seen how easy is the programming of a statically admissible element and its inclusion in a standard finite
element code. In practice, classical CA and new SA models can be managed in exactly the same way. Moreover, their input
data and results are equivalent.
After a conventional analysis, it is therefore possible to calculate the dual solution without significant additional effort.
This double analysis surrounds the exact solution and provides the best upper bound of the error estimation [12,14,15].
Another advantage of this solution is that it respects the equilibrium of the heat flow. It is especially important when
we are limited for reasons of computing time at relatively coarse meshes or when we must deal with very large 3D models.
Foreseen applications are the thermomechanical analysis of satellites and the thermal studies of urban neighborhoods.
Due to the connections of the SA elements, performed only on the edges or on the faces in 3D, these elements should
have an outstanding behavior in topology optimization where they are anticipated to help overcoming the problem of
checkerboard patterns configurations [7].
We hope to have contributed to a better understanding of the behavior of the finite element models by making available
to its programmers and users community a simple tool – less than one page of free code – to test different formulations,
various situations and to freely manipulate the boundary conditions to highlight the differences.
Visualizations rely on standard features of Matlab⃝ R
. In more complex situations, particularly in 3D, it is imperative to take
care of the results presentation [19] and to consider the temporal evolution [7]. For the treatment of mechanical problems,
the procedure is the same, but it requires greater programming effort.
12 P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) –

Appendix

The 66 lines Matlab procedure includes both weak and strong formulations. It can be used by simply using the copy and
paste function:

References

[1] B. Beckers, P. Beckers, in: B. Beckers (Ed.), Radiative Simulation Methods, in Solar Energy at Urban Scale, John Wiley and Sons, Inc., 2012, pp. 205–236.
(Chapter 10).
P. Beckers, B. Beckers / Computers and Mathematics with Applications ( ) – 13

[2] B. Beckers, P. Beckers, Sky vault partition for computing daylight availability and shortwave energy budget on an urban scale, Light. Res. Technol. 46
(2014) 716–728.
[3] P. Planas, D.C. Flett, ESARAD: From R&D to industrial utilization, ESA Bull. 93 (93) (1998) 61–67.
[4] B. Beckers, Taking advantage of low radiative coupling in 3D urban models, in: Eurographics Workshop on Urban Data Modelling and Visualization,
Girona, Spain, May 6–10, 2013, pp. 17–20.
[5] J.H. Bramble, L.E. Payne, A priori bounds in the first boundary value problem in elasticity, J. Res. Natl. Bur. Stand. Sec. B Math. Math. Phys. 65 (4) (1961).
[6] O. Sigmund, A 99 line topology optimization code written in Matlab, Struct. Multidiscip. Optim. 21 (2001) 120–127.
[7] R.W. Lewis, P. Nithiarasu, K.N. Seetharamu, Fundamentals of the Finite Element Method for Heat and Fluid Flow, John Wiley & Sons Ltd., 2004, p. 356.
[8] B.M. Fraeijs de Veubeke, M.A. Hogge, Dual analysis for heat conduction problems by finite elements, Internat. J. Numer. Methods Engrg. 5 (1) (1972)
65–82.
[9] R. Courant, D. Hilbert, Methods of Mathematical Physics Vol. 1, Wiley Interscience, New York, 1953, p. 575.
[10] P. Beckers, Les fonctions de tension dans la méthode des éléments finis (Doctoral thesis), University of Liège, Belgium, 1972.
[11] J.-F. Debongnie, H.G. Zhong, P. Beckers, Dual analysis with general boundary conditions, Comput. Methods Appl. Mech. Engrg. 122 (1–2) (1995)
183–192.
[12] P. Ladevèze, E.A.W. Maunder, A general methodology for recovering equilibrating finite element tractions and stress fields for plate and solid elements,
Comput. Assist. Mech. Eng. Sci. 4 (1997) 533–548.
[13] E.A.W. Maunder, H.G. Zhong, P. Beckers, A posteriori error estimators related to equilibrium defaults of finite element solutions for elastostatic
problems, Finite Elem. Anal. Des. 26 (1997) 171–192.
[14] M. Kempeneers, J.F. Debongnie, P. Beckers, Pure equilibrium tetrahedral finite elements for global error estimation by dual analysis, Internat. J. Numer.
Methods Engrg. 81 (4) (2010) 513–536.
[15] S. Pavot, E. Florentin, P. Rougeot, L. Champaney, Finite element verification in the case of missing data, Finite Elem. Anal. Des. 64 (2013) 90–96.
[16] P. Coorevits, P. Ladevèze, J.-P. Pelle, An automatic procedure with a control of accuracy for finite element analysis in 2D elasticity, Comput. Methods
Appl. Mech. Engrg. 121 (1995) 91–120.
[17] R.V. Southwell, On the analogues relating flexure and extension of flat plates, Quart. J. Mech. Appl. Math. 3 (3) (1950) 257–270.
[18] T. Needham, Visual Complex Analysis, Oxford University Press, 1997, p. 610.
[19] B. Beckers, P. Beckers, Reconciliation of Geometry and Perception in Radiation Physics, John Wiley and Sons, 2014, p. 192.

Вам также может понравиться