Méthode des éléments finis en 1D

Transcription

Méthode des éléments finis en 1D
1
Chapitre 3
Méthode des éléments finis en
1D
3.1 Première approche
Marc Buffat
1
UFR de Mécanique
Université Claude Bernard, Lyon I
13 mars 2007
On veut calculer la température T (x) dans un barreau de longueur L, de section S et
de conductivité k, dont l’extrémité gauche est isotherme (i.e T (0) = Te ), et l’extrémité
droite reçoit un flux de chaleur φe . En plus de la conduction dans le solide (le flux de
chaleur par conduction dans une section s’écrit φ1 = −kS dT
dx ), le barreau échange de la
chaleur par convection avec l’air ambiant à la température Ta sur toute sa longueur. En
notant h le coefficient d’échange par convection par unité de surface, le flux de chaleur
par convection s’écrit pour un élément de longueur dx : φ2 = h dx p (T − Ta ) (où p est
le périmètre de la section du barreau)).
En notant K = kS, et α = h p, l’équation d’équilibre s’écrit : trouver T (x) solution
du système (3.1 )
d
− dx
(K dT
dx ) + αT = αTa
(3.1)
T (0) = Te , −K dT
dx (L) = φe
φ2
Ta
φ1
Te
L
F IG . 3.1 – Température dans un barreau
1 avec
l’aide précieuse de Bernard Gay et Hamda BenHadid
Marc BUFFAT, UFR Mécanique, UCBLyon
φe
2
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
3
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
3.1.1 Formulation faible
S1
La formulation faible de ce problème s’obtient en multipliant l’équation par une
fonction test v(x), et en intégrant sur le domaine d’étude. Il vient :
x k−1
Z L
0
(−
d
dT
(K
) v(x) dx +
dx dx
Z L
0
αT (x) v(x) dx =
Z L
0
0
K
dT
dT dv
dx − [K
v(x)]L0 +
dx dx
dx
Z L
0
αT (x) v(x) dx =
Z L
0
(3.3)
3.1.2 Interpolation par éléments finis
Pour résoudre le problème (3.2) (dont il n’existe en général pas de solution analytique), on recherche une solution numérique approchée T h (x). En éléments finis, cette
solution approchée est construite à partir de 2 données :
1. un maillage M h du domaine de calcul Ω,
2. un choix d’interpolation P k sur ce maillage.
Marc BUFFAT, UFR Mécanique, UCBLyon
f2
f1
f3
On remarque que dans cette formulation, seule la condition au limite en x = 0
est imposé de façon explicite. On parle alors de condition forte. La condition en x = L
n’est pas imposée explicitement, mais est prise en compte dans la formulation intégrale.
C’est une condition naturelle.
Exercice : Montrer que la formulation faible (3.2) est équivalente au problème de
minimisation (3.3)
Trouvez T (x) avec T (0) = Te qui réalise le minimum de
R
RL
1 RL
2
2
J(T ) = 12 0L K( dT
dx ) dx + 2 0 αT (x) dx − 0 αTa T (x) dx + φe T (L)
x
xk
αTa v(x) dx
L
Si le problème est bien posé, le terme de bord [K dT
dx v(x)]0 doit pouvoir se calculer
en fonction des conditions aux limites. Pour cela on interprète la fonction test v(x)
comme une variation δT (x) de la solution T (x). Si on fixe la valeur de la solution en un
point (condition de Dirichlet), sa variation est nulle et la fonction test v(x) doit s’annuler
en ce point. Pour notre problème, on doit donc imposer à v(x) de s’annuller en x = 0
puisque la valeur de T (x) est fixée en ce point. Par contre en x = L, on impose aucune
contrainte sur v(x) et on utilise la condition de flux pour calculer le terme de bord.
C’est une condition à la limite naturelle ou condition de Neuman. Avec ces conditions,
le terme de bord se réduit à φe ∗ v(L), et la formulation faible s’écrit :

T (0) = Te t.q.
 RTrouvez T (x) avec
R
R
L dT dv
(3.2)
K dx dx dx + 0L αT (x) v(x) dx = 0L αTa v(x) dx − φe v(L)
0

pour toute fonction test v(x) vérifiant v(0) = 0
S2
F IG . 3.2 – élément ek
αTa v(x) dx
Pour tenir compte des conditions aux limites et symétriser le problème, on effectue
une intégration par partie sur les termes de plus haut degré :
Z L
élément k
x=0
S0
f4
1/2
3/4
1
S1
S2
S3
F IG . 3.3 – Maillage et interpolation P 1
Pour notre domaine de calcul unidimensionnel Ω = [0, L], le maillage correspond à un
découpage de Ω en ne segments :
Ω=
ne
[
[xi−1 , xi ]
i=1
Sur chaque segment, on choisit une interpolation polynômiale. Le type de l’interpolation dépend du problème à traiter. Pour notre problème elle doit en particulier
respecter les points suivants :
1. les intégrales dans la formulation faible (3.2) ou variationnelle (3.3) doivent exister, sans que le problème dégénère,
2. on cherche d’autre part une solution approchée globalement continue.
calcul de l’interpolation par éléments finis
La première condition impose que sur chaque élément le polynôme d’interpolation
p(x) soit au moins de degré 1 pour pouvoir calculer les dérivées premières de la solution
qui interviennent dans la formulation faible (3.2). Sur chaque élément ek = [xk−1 , xk ],
la solution approchée est donc un polynôme P(x) de degré l ≥ 1.
Pour un polynôme d’ordre 1 sur [xk−1 , xk ] (éléments finis P 1 ), on utilise 2 points
d’interpolation : les 2 extrémités du segment {S1 = xk−1 , S2 = xk } (figure 3.2).
Exercice : déterminer les points d’interpolation pour un polynôme de degré 2, puis
3.
Marc BUFFAT, UFR Mécanique, UCBLyon
4
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
1
5
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
erreur d’interpolation
On rappelle que l’erreur entre une fonction f (x) et son polynôme d’interpolation P(x) de degré l sur l’intervalle [a, b] passant par les l + 1 points d’interpolation
{x j } j=1,l+1 s’écrit :
2
0.8
1
0.6
0
0.2
0.4
0.4
x
0.6
0.8
–2
0.4
x
0.6
0.8
f (x)−P(x)
∏l+1
j=1 (x−x j )
∏l+1
j=1 (t − x j ),
démontrer la formule précédente.
Pour une approximation linéaire sur un segment ek = [xk−1 , xk ], l’erreur d’interpolation s’écrit
0.2
0.2
∏l+1
j=1 (x − x j ) (l+1)
f
(χ) avec χ ∈ [a, b]
(l + 1)!
Exercice : en étudiant la fonction W (t) = f (t) − P(t) −
–1
0
f (x) − P(x) =
1
1
F IG . 3.4 – Interpolation éléments finis d’une fonction (à gauche) et de sa dérivée (à
droite) sur un maillage de 3 segments avec des polynômes P1
Considérons par exemple le maillage du domaine Ω = [0, 1] de la figure (3.3) suivant :
1 [1 3 [ 3
[ , ] [ , 1]
2
2 4
4
M h = [0, ]
L’interpolation f h (x) par éléments finis P 1 d’une fonction f (x) s’écrit :

 2( f1 − f0 )x + f0 si x ≤ 12
h
f (x) =
4( f2 − f 1)x − 2 f2 + 3 f1 si 12 ≤ x ≤ 43

(4 f3 − 4 f2 )x − 3 f3 + 4 f2 si 34 ≤ x ≤ 1
On vérifie que l’erreur s’annulle aux points d’interpolation et est proportionnelle à
la dérivée seconde de f (x).
A partir de cette relation locale, on peut déduire par calcul directe les majorations
d’erreurs suivantes pour la norme du maximum et la norme moyenne de l’erreur sur
l’intervalle [xk−1 , xk ] de longueur h = xk − xk−1.
max (| f (x) − p(x)|)
sZ
(3.4)
C’est une fonction constante par morceau et discontinue aux points de maillage.
Exercice : calculer pour ce même maillage l’interpolation par éléments finis P 2
Sur la figure (3.4), on a tracé l’interpolation par éléments finis de la fonction f (x) =
sin(0.8πx) et de sa dérivée sur ce maillage de 3 segments en utilisant des polynômes
de degré 1. On constate que l’approximation P 1 est bien continue, mais que la dérivée
est discontinue aux points de maillage.
Marc BUFFAT, UFR Mécanique, UCBLyon
(x − xk )(x − xk−1 ) d 2 f
(χ)
2
dx2
x∈[xk−1 ,xk ]
où { f0 , f1 , f2 , f3 } sont les valeurs nodales de f aux points de maillage {0, 12 , 43 1}.
C’est une fonction linéaire par morceau et continue sur l’intervalle d’étude Ω. Sa dérih
vée ddxf s’écrit :

 2( f1 − f0 ) si x < 12
d fh
(x) =
4( f2 − f 1)x si 21 < x < 43

dx
(4 f3 − 4 f2 )x si 34 < x < 1
f (x) − P(x) =
xk
xk−1
( f (x) − p(x))2 dx
≤
≤
d2 f
h2
(χ)|)
max (|
8 [xk−1 ,xk ] dx2
s
Z
xk d 2 f
h2
√
( 2 (χ))2 dx
xk−1 dx
2 30
Exercice : en intégrant l’erreur d’interpolation, démontrer ces formules
On vérifie que l’erreur moyenne d’approximation par éléments finis P 1 est en
i.e. est proportionnelle au carré de la longueur des éléments en un point de
l’intervalle.
Exercice : montrez que l’erreur avec des éléments finis P 2 est en θ(h3 )
θ(h2 ),
3.1.3 Approximation par éléments finis :
L’approximation par éléments finis est définie de façon locale sur chaque élément
(3.4). De façon à pouvoir la manipuler plus facilement, on va l’exprimer de façon globale. Pour cela on détermine une expression générique de l’approximation sur un élément ek = [xk−1 , xk ].
Fonctions de forme
Pour ce faire on introduit une transformation géométrique qui permet de passer
d’un élément quelconque [xk−1 , xk ] à un élément de référence [−1, 1], sur lequel on va
définir l’approximation de manière générique.
Marc BUFFAT, UFR Mécanique, UCBLyon
6
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
7
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
fonctions de forme P1
1
Tk
S1
S2
ek
x k−1
xk
F IG . 3.5 – Transformation T
Cette transformation affine T
(
T
k
S1
S2
−1
+1
x
k
k
ξ
0.8
1+ξ
: x = xk−1 1−ξ
2 + xk 2
0.6
s’écrit :
[xk−1 , xk ] ⇐⇒ [−1, 1]
x−xk−1
+ xk 1+ξ
−1
2 ⇐⇒ ξ = 2 x −x
x = xk−1 1−ξ
2
k
0.4
(3.5)
k−1
Pour une approximation P 1 , on a 2 points d’interpolation et tout polynôme de degré 1 P(ξ) s’écrit sur l’intervalle de référence comme combinaision linéaire des 2 polynômes de Lagrange N1 et N2 associés à ces 2 points d’interpolations :
0.2
–1
P(ξ) = P(−1) N1 (ξ) + P(1) N2 (ξ)
–0.8 –0.6 –0.4 –0.2 0
0.2
0.4
0.6
0.8
1
xi
F IG . 3.6 – fonctions de forme P 1 (N1 en rouge, N2 en vert)
avec
N1 (ξ) =
1−ξ
1+ξ
et N2 (ξ) =
2
2
(3.6)
1
Ce sont les deux “fonctions de forme” de l’élément P . Le tracé de ces fonctions
de forme est donné sur la figure (3.6).
Exercice : déterminer les 3 fonctions de formes pour un élément P 2
En utilisant le changement de variable ξ = ξ(x) (3.5), un polynôme de degré 1 en x
sur un élément [xk−1 , xk ] s’écrit :
P(x) = P(xk−1 ) N1 (ξ(x)) + P(xk ) N2 (ξ(x))
Attention : lorsque l’on calcule la dérivée de l’approximation élément finis, la dérivée dans l’élément [xk−1 , xk ] n’est pas égale à la dérivée dans l’élément de référence.
Il faut tenir compte du changement de variable :
dP dξ
dξ 2
dP
(x) =
(ξ)
avec
= et h = xk − xk−1
dx
dξ
dx
dx h
Pour un polynôme de degré 1, on obtient :
dP
(x)
dx
dN1 2
dN2 2
+ P(x j )
dξ h
dξ h
=
P(xk−1 )
=
1
(P(xk ) − P(xk−1 ))
h
Exercice : calculer la dérivée d’une approximation élément finis P 2
Marc BUFFAT, UFR Mécanique, UCBLyon
Fonctions de base
Avec ces nouvelles notations, l’approximation élément finis f h de la fonction f(x)
dans la relation (3.4) s’écrit

 f0 N1 (4x − 1) + f1N2 (4x − 1) si x ≤ 21
h
f (x) =
f N (8x − 5) + f2N2 (8x − 5) si 21 ≤ x ≤ 34
 1 1
f2 N1 (8x − 7) + f3N2 (8x − 7) si 43 ≤ x ≤ 1
on constate que f h est une fonction linéaire des 4 valeurs nodales { f0 , f1 , f2 , f3 }.
On peut donc écrire f h (x) comme une combinaison linéaire de ces valeurs :
f h (x) = f0 Φ0 (x) + f1 Φ1 (x) + f2 Φ2 (x) + f3 Φ3 (x)
où les fonctions {Φ0 , Φ1 , Φ2 , Φ3 } sont définies par
1
2
1
Φ1 (x) = N2 (4x − 1) si x ≤
2
1
3
Φ2 (x) = N2 (8x − 5) si ≤ x ≤
2
4
3
Φ3 (x) = N2 (8x − 7) si ≤ x ≤ 1
2
Φ0 (x) = 0 sinon
Φ0 (x) = N1 (4x − 1) si x ≤
Φ1 (x) = N1 (8x − 5) si
1
2
≤x≤
3
4
Φ1 (x) = 0 sinon
Φ2 (x) = N1 (8x − 7) si
3
2
≤x≤1
Φ2 (x) = 0 sinon
Marc BUFFAT, UFR Mécanique, UCBLyon
Φ3 (x) = 0 sinon
(3.7)
8
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
Fonctions de base P1
9
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
On notera {Ti }i=0,3 les valeurs nodales {T (0), T ( L2 ), T ( 3L
4 ), T (1)}, ce qui permet
d’écrire T h sous la forme :
1
3
0.8
T h (x) = ∑ Ti Φi (x)
0.6
La solution du problème (3.2) doit vérifier les conditions aux limites fortes ( Dirichlet), i.e. :
i=0
T h (x = 0) = T0 = Te
La valeur nodale T0 est donc fixée, et T h s’écrit :
0.4
3
T h (x) = Te Φ0 (x) + ∑ Ti Φi (x)
0.2
0
(3.9)
i=1
0.2
0.4
0.6
0.8
Le problème discrétisé possède donc 3 degrés de liberté (ou inconnues) : les 3
valeurs nodales {Ti }i=1,3 . De façon générale après application des nc conditions aux
limites fortes, la solution élément finis possède n = nn − nc degré de liberté. Pour un
maillage de ne éléments P 1 , on a n = ne + 1 − nc.
En remplaçant la solution exacte par la solution approchée (3.9) dans l’équation
(3.2) il vient la formulation faible discrète :
1
F IG . 3.7 – fonctions de base P : ϕ0 (rouge), ϕ1 (vert), ϕ3 (bleu), ϕ4 (cyan)
1
Ces fonctions Φi sont appelées “fonctions de base” de l’approximation éléments finis
P 1 . Elles sont tracées sur la figure (3.7) .
Z L
Exercice : pour ce même maillage, déterminer les fonctions de base P 2
Ces fonctions de base vérifient les propriétés importantes suivantes :
0
1. à chaque noeud Si du maillage, on associe une fonction de base Φi
2. la fonction de base Φi vaut 1 au noeud Si du maillage et 0 sur tout les autres
noeuds {S j } j6=i
Φi (S j ) = δi j
(3.8)
K Te
3
dΦ j
dΦ0
+ ∑ Tj
dx
dx
j=1
L
2
L 3L
3L
] ∪ [ , L]
2 4
4
M h = [0, ] ∪ [ ,
On choisit ensuite sur ce maillage une approximation par élément finis P 1 de la
solution approchée T h de (3.2). Pour ce maillage de ne = 3 éléments, le nombre de
points nodaux est égale à nn = 4, et T h s’écrit :
3L
L
T h (x) = T (0)Φ0 (x) + T ( )Φ1 (x) + T ( )Φ2 (x) + T (L)Φ3 (x)
2
4
Marc BUFFAT, UFR Mécanique, UCBLyon
dvh
dx +
dx
Z L
0
3
!
α Te Φ0 + ∑ T j Φ j vh dx
j=1
=
Z L
0
αTa vh dx − φe vh (L)
(3.10)
Ayant la forme (3.9) de la solution approchée T h = T h (T1 , T2 , T3 ), on peut en déduire les fonctions tests vh (x) associées, puisque ce sont des variations δT h de T h qui
s’écrivent :
3.1.4 Formulation faible discrète
Nous allons maintenant chercher une approximation par éléments finis de la solution du problème (3.2). Pour cela on choisit le maillage suivant du domaine de calcul
Ω = [0, L] (c’est le même maillage que précédemment, mais sur le domaine de calcul
de longueur L du problème (3.2)) :
!
3
vh (x) = δT h = ∑ δTi Φi (x)
(3.11)
i=1
On vérifie que ces fonctions tests s’annullent en x = 0 (condition de Dirichlet). Ces
fonctions tests sont des combinaisons linéaires des 3 fonctions de base {Φi (x)}i=1,3
associées aux 3 degrés de liberté {Ti }i=1,3 .
En choisissant comme fonctions tests vh dans (3.10), respectivement les 3 fonctions de base {Φi (x)}i=1,3 , on obtient les 3 équations qui permettent de calculer les 3
inconnues {Ti }i=1,3 :
Z L
0
K(Te
3
dΦ j dΦ1
dΦ0
+ ∑ Tj
)
dx +
dx
dx dx
j=1
Marc BUFFAT, UFR Mécanique, UCBLyon
Z L
0
3
α(Te Φ0 + ∑ T j Φ j )Φ1 dx
j=1
10
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
=
Z L
0
Z L
0
K(Te
3
dΦ j dΦ2
dΦ0
+ ∑ Tj
)
dx +
dx
dx dx
j=1
Z L
0
0
3
dΦ j dΦ3
dΦ0
+ ∑ Tj
)
dx +
dx
dx dx
j=1
Z L
0
Φi
αTa Φ1 dx − φe Φ1 (L)
j=1
Z L
x=0
i−1
 RL
B=
R L dΦ2
(K dx
R0L dΦ
(K dx2
R0L dΦ
2
(K
dΦ1
dx
dΦ2
dx
dΦ3
dx dx
+ αΦ2 Φ1 )dx
+ αΦ2 Φ2 )dx
+ αΦ2 Φ3 )dx
RL
3
K( dΦ
dx
R0L
3
K( dΦ
0
dx
RL
dΦ3
0
K(
dΦ1
dx
dΦ2
dx
dΦ3
dx dx


T1

X = T2 
T3
αTa Φ3 dx − φe Φ3 (L) − Te
0
(K

+ αΦ3 Φ1 )dx
+ αΦ3 Φ2 )dx 
+ αΦ3 Φ3 )dx
(3.12)
dΦ1
dx
dΦ2
dx
dΦ3
dx dx

+ αΦ0 Φ1 )dx
+ αΦ0 Φ2 )dx 
+ αΦ0 Φ3 )dx
L
dΦ j dΦi
dx +
αΦ j Φi dx et
dx
dx
0
0
Z L
Z L
dΦ0 dΦi
Bi =
αTa Φi dx − φe Φi (L) − Te
(K
+ αΦ0 Φi )dx
dx dx
0
0
Z L
K
j+1
Z
Pour le calcul des coefficients Ai j et Bi , nous allons tout d’abord donner quelques
propriétés des fonctions de base Φi (voir figure 3.8) :
1. la fonction de base Φi (x) associé au noeud Si est non nulle uniquement sur les
éléments du maillage auxquels appartient le noeud Si , c’est à dire sur une toute
petite partie du maillage. On dit que Φi (x) a un support compact. Pour une fonction de forme Φi (x) de type P 1 , ce support est le segment [xi−1 , xi ] ∪ [xi , xi+1 ].
2. en conséquence, le produit Φi (x)∗ Φ j (x) de 2 fonctions de formes est en générale
toujours nulle, sauf si l’intersection des supports est non vide (ce qui est rare car
les supports sont petits). Dans ce dernier cas le produit est non nul uniquement
sur l’intersection des 2 supports. Pour les fonctions de forme P 1 , on vérifie que :
Assemblage de la matrice
D’après la relation (3.13), la calcul de Ai j fait intervenir 2 types d’intégrale. On
décompose alors A en 2 matrices :
i, j = 1, 2, 3
(3.13)
On remarque que la matrice A est symétrique puisque la formulation faible est elle
même symétrique en T et v.
La solution de la formulation faible discrète (3.10) s’obtient donc par résolution
d’un système linéaire. Il nous reste à calculer la matrice A et le second membre B.
Connaissant l’expression des fonctions de base (3.7), un calcul directe des intégrales
permettrait d’obtenir la matrice A et le vecteur B. Cette approche n’est possible que
pour un petit nombre de degré de liberté, et on préfère utiliser une approche systématique pour le calcul de A et B , qui s’appelle l’assemblage.
Marc BUFFAT, UFR Mécanique, UCBLyon
j
Ni (x) ∗ N j (x) = 0 si |i − j| > 1
soit sous forme générique :
Ai j =
j−1
3.1.5 Assemblage
αTa Φ3 dx − φe Φ3 (L)
R
0
αT Φ dx − φe Φ1 (L) − Te 0L (K dΦ
dx
R0L a 1
R L dΦ
0
αT
Φ
dx
−
φ
Φ
(L)
−
T
e 2
e 0 (K dx
R0L a 2
R L dΦ0
0
i+1
j=1
Z L
C’est un système linéaire de 3 équations à 3 inconnues, qui s’écrit après regroupement des termes sous la forme matricielle : A.X = B, où la matrice A, le second
membre B et le vecteur inconnu X sont donnés par :
0
i
F IG . 3.8 – fonctions de base Φi et Φ j
3
0
1 dΦ1
(K dΦ
dx dx + αΦ1 Φ1 )dx
R0
1 dΦ2
A =  0L (K dΦ
dx dx + αΦ1 Φ2 )dx
R L dΦ
1 dΦ3
0 (K dx dx + αΦ1 Φ3 )dx
x=L
αTa Φ2 dx − φe Φ2 (L)
α(Te Φ0 + ∑ T j Φ j )Φ3 dx
=
 RL
Φj
3
0
K(Te
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
α(Te Φ0 + ∑ T j Φ j )Φ2 dx
=
Z L
11
A = K + M avec Ki j =
Z L
0
K
dΦ j dΦi
dx, Mi j =
dx dx
Z L
0
αΦ j Φi dx
la matrice K est appelée matrice de rigidité (ou de raideur) et M matrice de masse.
Pour calculer ces intégrales on décompose l’intégrale sur le domaine [0, L] en somme
d’intégrales élémentaires sur chaque élément [xk−1 , xk ].
ne
Ki j =
∑
Z xk
k=1 xk−1
K
ne
dΦ j dΦi
dx et Mi j = ∑
dx dx
k=1
Z xk
xk−1
αΦ j Φi dx
On est donc ramené à un calcul d’intégrales élémentaires sur chaque élément. En
utilisant les propriétés des fonctions de base Φi , chaque intégrale élémentaire est non
nulle sur un élément [xk−1 , xk ] si et seulement si les noeuds Si et S j appartiennent tous
les deux à cet élément. Pour des éléments P 1 , on a 4 cas possibles :
– soit i = k − 1 et j = k − 1 ou k
Marc BUFFAT, UFR Mécanique, UCBLyon
12
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
e1
x=0
L/2
S0
e2
S1
e4
3L/4
S2
L
S3
F IG . 3.9 – maillage élements finis et code de couleur pour les éléments
– soit i = k et j = k − 1 ou k
Pour un élément P 1 , on a donc à calculer uniquement 4 intégrales élémentaires sur un
élément k, que l’on peut écrire sous forme matricielle :
k
K pq
=
M kpq
Z xk
K
xk−1
=
Z xk
xk−1
dΦnq dΦn p
dx pour p = 1, 2 q = 1, 2
dx dx
(3.14)
αΦnq Φn p dx pour p = 1, 2 q = 1, 2
(3.15)
où n1 = k − 1 et n2 = k sont les numéros des 2 sommets de l’élément k.
Avec ces notations, et en utilisant les codes de couleur de la figure (3.9) pour les
éléments du maillage, le premier élément de la matrice A (3.12) s’écrit
13
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
Ces deux matrices élémentaires sont symétriques. De plus la somme des coefficients des lignes (et donc des colonnes) de Kl est nulle parce que la somme des fonctions de forme N1 (ξ) + N2 (ξ) est égale à 1.
Exercice : démontrer que la somme des lignes (et des colonnes) de la matrice de
rigidité est nulle
Pour des coefficients K et α constants, ces 2 matrices élémentaires s’écrivent, après
le calcul simple des intégrales :
1 1 K
1 −1
et Mk = αhk 13 61
Kk =
hk −1 1
6
3
Exercice : démontrer les expressions précédentes
En notant que les éléments du maillage ont pour longueur : h1 = L2 , h2 = L4 , h3 = L4 ,
on obtient la matrice A suivante (en coloriant en rouge, vert et bleu les contributions
des éléments 1,2 et 3) :



2 + 4 −4
0
K

A=
−4 4 + 4 −4 + αL 
L
0
−4
4
1
6
1
+ 12
1
24
1
12
0
1
24
+
1
24
0
1
12
On vérifie la symétrie de la matrice.
A11 = K 122 + M 122 + K 211 + M 211
1
24
1
12


(3.17)
assemblage du second membre
puisque le noeud 1 a pour support les éléments [x0 , x1 ] (k = 1) et [x1 , x2 ] (k = 2 ).
Par contre l’élément A12 s’écrit :
A12 = K 212 + M 212
Le calcul du second membre procède de la même démarche. Le calcul des intégrales se fait élément par élément en tenant compte des propriétés des fonctions de
base. L’expression du second membre B de (3.13) contient 2 types de termes :
Bi =
On a donc l’expression de A sous la forme :

1 + K2
K22
11

2
A=
K21

0
2
K12
2
3
K22
+ K11
3
K21
 
1 + M2
0
M22
11

3 
2
+ 
K12
M21
 
3
K22
0
2
M12
2
3
M22
+ M11
3
M21
0
3
M12
3
M22




Il reste donc à calculer ces matrices élémentaires pour calculer A. Pour ce faire on
revient à la définition (3.7) des fonctions de base Φi (x) en fonction des fonctions de
forme Nq (ξ) en effectuant le changement de variable (3.5) sur l’élément de référence.
Sur un élément ek =[xk−1 , xk ] (de longueur hk ), on a :
1+ξ
1−ξ
et Φk (x) = N2 (ξ) =
(3.16)
2
2
En effectuant le changement de variables x = x(ξ) (3.5) dans l’intégrale, il vient :
Φk−1 (x) = N1 (ξ) =
k
K pq
=
hk
2
Z +1
−1
K(
dNq 2 dN p 2
hk
) (
) dξ et M kpq =
dξ hk dξ hk
2
Marc BUFFAT, UFR Mécanique, UCBLyon
Z +1
−1
α N p Nq dξ p, q = 1, 2
Z L
|
0
αTa Φi dx − φe Ni (L) − Te
| {z }
{z
} cdt limite x=L |
Z L
(K
0
terme source
dΦ0 dΦi
+ αΦ0 Φi )dx
dx dx
{z
}
cdt limite x=0
1. un terme source à calculer sur tous les éléments,
2. deux termes liés aux conditions aux limites en x = 0 et x = L, que l’on ne calcule
que pour certains éléments.
Pour calculer le terme source, on le décompose en une somme d’intégrales élémentaires :
Z L
0
αTa Φi dx =
ne
∑
Z xk
k=1 xk−1
αTa Φi dx
et on utilise les propriétés des fonctions de base Φi . Pour des éléments P 1 , ces
intégrales élémentaires sur un élément ek sont non nulles uniquement si i = k − 1 ou
i = k . On a donc à calculer 2 intégrales élémentaires par élément, qui s’écrivent sous
la forme d’un vecteur second membre élémentaire :
Marc BUFFAT, UFR Mécanique, UCBLyon
14
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
Bkp =
Z xk
xk−1
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
φe Φ3 (L) = φe
αTa Φn p dx pour p = 1, 2
où n1 = k − 1 et n2 = k sont les 2 numéros des sommets de l’éélment ek .
Avec cette notation, le terme source du second membre B s’écrit :
 1

B2 + B21
2
1

B = B2 + B3  + C.L.
B23
Pour le calcul des seconds membres élémentaires, on utilise le changement de variable x = x(ξ) (3.5) sur l’élément de référence. En utilisant la relation (3.16), il vient :
Bkp =
15
Z
hk +1
2
−1
αTa N p−1 dξ
Si le coefficient α et la température de l’air Ta sont constants, le second membre
élémentaire s’écrit :
1 Bkp = αTa hk 21
Le second membre complet s’écrit alors :
 1 1  

−(K121 + M121 )Te
4+8
1  
1


B = αTa L 8 + 8 +
0
1
−φ
e
8
3.1.6 Résolution
Pour la résolution numérique, on considère un barreau d’aluminium de longueur
L = 3 m , de diamètre D = 2 cm, dont le coefficient de conductivité thermique vaut
k = 6000W /m/K. Il est maintenu à une température Te = 60◦C en x = 0 et on impose
un flux de φe = 32W en x = L. Il est refroidit dans l’air à température ambiante Ta =
25◦C par convection forcée avec h = 50W /m2 /K (pour de la convection naturelle h ≃
10W /m2 /K).
Pour vérifier le calcul précédent, nous allons tout d’abord ne pas tenir compte de la
convection (i.e. α = 0). Dans ce cas la solution exacte de l’équation (3.1) est triviale.
La répartition de température est linéaire et vérifie :
2
Exercice : démontrer l’expression précédente.
On en déduit la contribution du terme source dans le second membre B
 1 1 
4+8
B = αTa L  18 + 18  + C.L.
1
8
La contribution des termes liés aux conditions aux limites n’interviens que sur certaines composantes de B. La contribution de la condition au limite en x = 0 fait intervenir le produit de la fonction de base Φ0 par une fonction de base Φi . Comme il a été
indiqué dans les propriétés des fonctions de base, ce produit est non nul uniquement
pour i = 1 (et on a donc uniquement une contribution dans B1 ). L’intégrale se calcule
sur l’élément [x0 , x1 ] :
Te
Z L
0
(K
dΦ0 dΦ1
+ αΦ0 Φ1 )dx = Te
dx dx
Z x1
x0
(K
dΦ0 dΦ1
+ αΦ0 Φ1 )dx
dx dx
Ce terme correspond justement aux intégrales élémentaires (3.14) et (3.15) pour
l’élément e0 = [x0 , x1 ] multiplié par Te :
Te
Z L
0
(K
Φ0 dΦ1
1
1
+ αΦ0 Φ1 )dx = (K21
+ M21
)Te
dx dx
La contribution de la condition aux limites en x = L fait intervenir Φi (L), qui est
non nul uniquement pour i = 3. On a donc uniquement une contribution dans B3 qui
s’écrit :
Marc BUFFAT, UFR Mécanique, UCBLyon
(3.18)
T (x) = Te +
φe
x
K
Le système linéaire discret s’écrit :


 

376.99 −251.33
0
T1
7539.82
 −251.33 502.65 −251.33   T2  = 

0
0
−251.33 251.33
T3
−32.00
ce qui donne après résolution la répartition de température suivante :

 

T1
59.74
 T2  =  59.61 
T3
59.49
C’est exactement la solution analytique aux noeuds du maillage (x = 12 , 43 , 1). On
constate ainsi que si la solution exacte est linéaire, la solution par éléments finis est
égale à la solution exacte. Cela est naturelle, car l’approximation par élément finis P 1
approche exactement une solution linéaire. On note aussi que la variation de température dans la barre est très faible dans ce cas (de l’ordre 0.5◦C), car le flux de chaleur en
sortie φe est faible .
Dans le cas α 6= 0 et avec des coefficients constants, on peut encore déterminer la
solution analytique. Les calculs sont un peu plus complexes, et on donne le programme
Maple 3.1.6 ci dessous qui permet de calculer cette solution.
programme Maple 3.1.6: Solution annalytique
Marc BUFFAT, UFR Mécanique, UCBLyon
16
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
17
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
x
Temperature en convection force
derivee de la temperature en convection libre
60
3
0
58
–2
56
54
–4
52
–6
T
50
T
–8
48
46
–10
44
–12
42
0
0.5
1
1.5
x
2
2.5
3
F IG . 3.10 – Solution exacte (en rouge) et solution approchée (en bleu)
CHAP3/annalytique.ms
Avec ce programme, on obtient l’expression suivante pour la solution exacte T (x) :
T (x) = 20 + 3.066 e0.4082x + 36.93 e−0.4082x
En remplaçant les valeurs numériques dans la matrice (3.17) et le second membre
(3.18), on obtient le système suivant pour la solution approchée par éléments finis :


 

400.56 −247.40
0.0
T1
7775.44
 −247.40 518.37 −247.40   T2  =  471.24 
0.0
−247.40 259.18
T3
203.62
ce qui donne après résolution la répartition de température approchée T h :

 

T1
45.51
 T2  =  42.26 
T3
41.12
La solution analytique pour ces mêmes points de calcul vaut :

 

T1
45.67
 T2  =  42.42 
T3
41.28
La solution exacte étant de type exponentielle, l’approximation par éléments finis
ne peut pas donner la solution exacte. On constate cependant que dans ce cas la solution
élément finis est très précise, puisque l’erreur nodale est inférieure à 0.1◦C (i.e. un écart
relatif de ≃ 0.4% ).
Quelques remarques :
Marc BUFFAT, UFR Mécanique, UCBLyon
–14
F IG . 3.11 – Dérivée de la solution exacte (en rouge) et approchée (en bleu)
1. Même si la solution par élément finis approche la solution exacte aux noeuds
du maillage, entre les noeuds l’approximation est linéaire. Donc l’erreur entre la
solution exacte et la solution élément finis peut être grande comme le montre la
figure (3.10).
2. Si on calcule la dérivée de la solution approchée, elle est constante par élément
(voir figure (3.11)). On en déduit immédiatement que la condition au limite en
x = L n’est pas vérifiée par la solution approchée :
−K
dT h
T4 − T3
= −K
= 285 6= φe = 32
dx
L/4
On montrera dans la suite que les conditions aux limites naturelles sont vérifiées
exactement par la solution approchée que lorsque le maillage devient très fin : i.e. à la
limite quand la solution approchée tends vers la solution exacte.
3.2 Éléments finis P 1
Nous allons maintenant étudier l’approximation par éléments finis P 1 , en particulier ses propriétés en terme de précision et de convergence. Nous donnerons en même
temps le programme Maple correspondant.
Pour cela nous allons traiter le cas d’une équation générale du type (3.1) sur le
domaine Ω = [0, L] :
d
d
(K(x) dx
u(x)) + α(x)u(x) = f (x)
− dx
(3.19)
u(0) = ue , −K(L) du
dx (L) = βu(L) + φ0
Cette équation traduit un phénomène de diffusion avec un coefficient de diffusion
K(x) variable, couplé à un terme source fonction de la solution u et d’un coefficient
Marc BUFFAT, UFR Mécanique, UCBLyon
18
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
α(x) variable. Le second membre f (x) traduit la partie du terme source indépendant de
u. En x = 0, on impose une condition de Dirichlet, et en x = L une condition de Fourier
(ou condition de Robin, ou condition mixte) qui impose que le flux de chaleur φe en
x = L soit une fonction de la solution u(L) (et non pas uniquement constant comme
dans l’exemple précédent) :φe = βu(L) + φ0
19
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
T4
1
2
3
4
5
6
7
8
x
1
2
3
4
5
6
7
8
3.2.1 Formulation faible
K(x)
0
du
du dv
dx − [K(x) v(x)]L0 +
dx dx
dx
Z L
0
α(x)u(x) v(x) dx =
Z L
f (x)v(x) dx
0
Le calcul du terme de bord se fait en utilisant les conditions aux limites et en imposant à la fonction test v(x) d’être une variation de la solution u(x). Comme on impose la valeur de u en x = 0 (u(0) = ue ), sa variation doit être nulle en ce point. La
fonction test v doit donc s’annuler en x = 0. et le terme de bord K(0) du
dx (0)v(0) s’annulle. Le second terme de bord se calcule à l’aide de la seconde condition aux limites :
du
−K(L) dx (L) = βu(L) + φ0. La formulation faible de (3.19) s’écrit alors :



 RL
0



Trouvez u(x) avec u(0) = ue t.q.
R
dv
dx + 0L α(x)u(x) v(x) dx + βu(L)v(L) =
K(x) du
dx (x) dx (x)
RL
0 f (x)v(x) dx − φ0 v(L)
pour toute fonction test v(x) vérifiant v(0) = 0
(3.20)
Exercice : montrez que cette formulation faible est équivalente à la formulation
variationnelle suivante :
Trouvez u(x) avec u(0) = ue minimisant
R
RL
1 RL
1
2
2
2
J(u) = 21 0L K(x)( du
dx ) dx + 2 0 α(x)u(x) dx + 2 βu(L) − 0 f (x)u(x) dx + φ0 u(L)
3.2.2 Approximation par éléments finis
Pour construire l’approximation par éléments finis P 1 , on crée un maillage M
domaine de calcul constitué de ne segments de coordonnées [xk , xk+1 ] :
M h=
ne
[
h
F IG . 3.12 – transformation : T 4 : x =
1−ξ
1+ξ
2 x4 + 2 x5
et T 7 : x =
1−ξ
1+ξ
2 x7 + 2 x8
commencent à 1 et non pas à 0. D’autre part, contrairement au “calcul à la main”
précédent, nous ne chercherons pas à éliminer la valeur au premier noeud de façon à
conserver une approche générale.
Sur ce maillage, l’approximation uh (x) par éléments finis P 1 de la solution est
définie par ses valeurs uh (xi ) = ui aux nn = ne + 1 points nodaux {xi }i=1,nn , correspondant aux extrémités des segments du maillage. Cette approximation possède donc
nn = ne + 1 degrés de liberté {ui } correspondant aux nn noeuds d’interpolation {xi }.
Sur chaque élément ek cette approximation est définie à partir des 2 fonctions de
forme {N1 , N2 } de l’élément P 1 (3.6) et du changement de variable ξ = ξ(x) (3.5) :
uh (x) = uk N1 (ξ(x)) + uk+1 N2 (ξ(x)) pour x ∈ ek = [xk , xk+1 ]
x − xk
−1
ξ(x) = 2
xk+1 − xk
L’approximation globale est la somme de ces approximations élémentaires et s’écrit
en fonction des fonctions de base Φi (x) :
nn
uh (x) = ∑ ui Φi (x)
i=1
La fonction de base Φi (x) est associée au noeud Si du maillage et est définie à partir
des fonctions de forme Nq par les relations :
du
[xk , xk+1 ] avec x1 = 0, xne+1 = L
k=1
On note ek = [xk , xk+1 ], l’élément k du maillage de longueur hk = xk+1 − xk .
Remarque : on a choisit de numéroter les noeuds du maillage de 1 à ne + 1,
contrairement à l’exemple précédent, où on les avait numéroté de 0 à Ne . Ce choix sera
justifier par la suite,lorsque l’on programmera la méthode. En effet dans de nombreux
langage de programmation ( entre autre Maple et Matlab), les indices de tableaux
Marc BUFFAT, UFR Mécanique, UCBLyon
2
χ=1
T7
Pour obtenir la formulation faible de (3.19), on procède comme précédemment. On
multiplie l’équation (3.19) par une fonction test v(x), on intègre sur le domaine D , puis
on effectue une intégration par partie sur les termes de plus haut degré. Il vient :
Z L
χ
1
χ=−1
9
x=L
x=0
Φi (x) = N1 (ξ)
Φi (x) = N2 (ξ)
Φi (x) = 0
si
si
sinon
x ∈ ei
x ∈ ei−1
Le programme 3.2.2 implémente sous Maple l’interpolation éléments finis P 1 sur
un maillage de Ne éléments.
programme Maple 3.2.2: Approximation éléments finis P1
CHAP3/approxP1.ms
Marc BUFFAT, UFR Mécanique, UCBLyon
20
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
1
21
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
1
k f − f h k2ek =
0.8
0.5
0.6
0
0.5
1
1.5
x
2
2.5
3
0.4
–0.5
0.2
0
0.5
1
1.5
2
2.5
–1
3
hk
2
Z +1
−1
( f (x(ξ) − (F[k] ∗ Φ1 (ξ) + F[k + 1] ∗ Φ2(ξ))2 dx
Le calcul de cette intégrale est laissé à Maple. Pour cela on a utilisé la fonction
d’intégration int sous sa forme directe d’intégration numérique i.e. eval f (Int(..)) (ligne
33). Cela évite que Maple cherche tout d’abord à effectuer une intégration analytique,
puis calcule ensuite la valeur numérique. On gagne ainsi un factor 5 à 10 en temps de
calcul, ce qui n’est pas négligeable pour des maillages importants.
La fin du programme est un exemple d’interpolation d’une fonction f (x) = sin(2x)
sur un maillage de 10 éléments de [0, 3]. Les fonctions de base et l’interpolation sont
données sur la figure (3.13). L’erreur d’interpolation vaut dans ce cas :k f − f h k =
0.0606
Exercice : calculer l’erreur d’interpolation pour des maillages de plus en plus fins.
F IG . 3.13 – Fonctions de base Φi et interpolation sur le maillage (3.12)
3.2.3 Formulation faible discrète
Le programme est écrit de façon modulaire et général, de telle sorte que l’on puisse
très facilement implémenter une interpolation de degré d quelconque. Pour cela on
introduit comme variable le degré d du polynôme d’interpolation (ligne 8), et on distingue les noeuds du maillage, que l’on note X p (ligne 6), des points d’interpolation,
que l’on note X (ligne 8). On introduit ensuite 2 fonctions (ligne 10) : la fonction
num(k) qui pour un élément k renvois les numéros des points d’interpolation de l’élément, et la fonction long(k) qui calcul simplement la longueur hk de l’élément k. On
calcule ensuite les fonctions de forme de l’élément {N p (ξ)} comme polynômes de
Lagrange en utilisant la fonction Maple interp (lignes 12,13). La transformation de
l’élément k vers l’élément de référence x = x(ξ) est noté Xi(ξ, k) (ligne 15) :
La solution approchée uh par éléments finis P 1 de (3.20) s’écrit sous la forme :
uh (x) =
nn
∑ u j Φ j (x)
j=1
Elle doit vérifier les conditions aux limites fortes ( i.e. la condition de Dirichlet en
x = 0 : uh (0) = ue ). En notant à nouveau que les fonctions de bases vérifient Φi (x j ) =
δi j , cette condition impose la valeur nodale de uh au noeud x1 = 0 du maillage :
uh (x) =
nn
∑ u j Φ j (x)
avec u1 = ue
(3.21)
j=1
x = X p[k] ∗ N1(ξ) + X p[k + 1] ∗ N2(ξ)
On écrit ensuite une fonction Interpol( f ) qui calcul le vecteur F des valeurs d’une
fonction f(x) aux points d’interpolation : F[i] = f (X[i])i=1,nn (lignes 17 à 23).
Enfin on écrit une fonction Erreur( f , F) qui calcule la norme de l’erreur entre une
fonction f (x) et son approximation f h sur le maillage élément finis. On choisit comme
norme, l’intégrale du carré de la différence (norme L2 ) :
k f − f h k2 =
Z L
0
( f (x) − f h (x))2 dx
Cette norme mesure l’erreur moyenne sur le domaine de calcul. Pour cela on calcule
l’intégrale élément par élément, en éffectuant pour chaque élément la transformation
vers l’élément de référence. Pour une approximation P 1 sur un élément ek = [xk , xk+1 ],
on a :
f h (ξ) = F[k] ∗ Φ1 (ξ) + F[k + 1] ∗ Φ2(ξ)
Les fonctions tests associées vh étant des variations de uh , elles doivent donc s’annuller en x = 0. Elles s’écrivent sous la forme générale suivante :
nn
vh (x) = ∑ vi Φi (x) car v1 = 0
(3.22)
i=2
Ces fonctions tests sont des combinaisons linéaires des nn − 1 fonctions de base
{Φi (x)}i=2,nn . En remplaçant dans la formulation faible (3.20) la solution exacte u par
la solution approchée uh donnée par (3.21) et la fonction test v par une de ces nn − 1
fonctions de base {Φi (x)}i=2,nn , on obtient la formulation faible discrète :
nn
∑ uj
j=1
Z
L
K(x)
0
dΦ j dΦi
dx +
dx dx
Z L
0
α(x)Φ j (x)Φi (x) dx + βunn Φi (L)
| {z }
Z L
et l’erreur sur un élément s’écrit :
0
f (x)Φi (x) dx − φ0 Φi (L)
| {z }
termeC.L. sur B
Marc BUFFAT, UFR Mécanique, UCBLyon
Marc BUFFAT, UFR Mécanique, UCBLyon
=
termeC.L sur A.
(3.23)
22
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
L
Pour obtenir cette relation on a permuté la sommation ∑nn
i=1 et l’intégration 0 et on
a sortie les coefficients ui des intégrales. D’autre part on a remplacé uh (L) par sa valeur
unn . L’équation (3.23) écrite pour i = 2, nn est un système linéaire de nn − 1 inconnues
{ui }i=2,nn (en notant que u1 = ue est fixé par la condition aux limites), qu’il suffit de
résoudre pour obtenir la solution approchée uh . De façon à construire un programme
le plus général possible, on considérera que l’on a nn inconnues ui , qui sont données
par les nn − 1 équations (3.23) auxquelles on ajoute l’équation supplémentaire u1 = ue .
Dans cette approche on construit un système linéaire de nn inconnues à nn équations.
Dans un premier temps cela permettra de construire la matrice A et le second membre
B du système linéaire sans tenir compte des conditions aux limites et donc de façon
générique. Puis dans un second temps, on appliquera les conditions aux limites sur le
système linéaire : i.e. on remplacera la première équation par l’équation u1 = ue et on
introduira le terme lié à la conditions aux limites en x = L
Les coefficients génériques de A et de B s’écrivent :
23
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
R
Ai j
Bi
=
Z L
K(x)
=
Z L
f (x)Φi (x) dx
0
0
dΦ j dΦi
dx +
dx dx
Z L
0
α(x)Φ j (x)Φi (x) dx
Pour calculer ces coefficients, on effectue un calcul élément par élément en déterminant les matrices élémentaires et les second membres élémentaires sur un élément
el . Les calculs des intégrales font intervenir des coefficients variables K(x) et α(x) et
nous utiliserons Maple pour calculer les intégrales faisant intervenir ces coefficients.
Une autre approche consisterait à calculer une approximation éléments finis de ces
coefficients sur chaque élément, ou à choisir une valeur moyenne par élément.
Exercice : comparer le calcul de la matrice élémentaire de raideur avec une approximation de K(x) constante, P 1 et exacte dans le cas où K(x) est un polynôme de
degré 1 et 2.
Pour le second membre f (x) , nous utiliserons une approximation P 1 sur le maillage
éléments finis :
nn
f h (x) = ∑ fi Φi (x)
N1
Φn2
Φn1
N2
Tk
S1
S2
ek
x
n1=k−1
n2=k
S2
S1
−1
ξ
+1
F IG . 3.14 – élément P 1
{n p} p=1,d+1 pour définir un polynôme de degré d , et que l’on a donc d + 1 fonctions
de forme {N p (ξ)} p=1,d+1.
Avec ces notations, de façon générique (i.e. valable pour un approximation P 1 ,
P 2 ,. . . P d ), les matrices élémentaires s’écrivent :
Kkpq =
Mkpq =
2
hk
hk
2
Z +1
−1
Z +1
−1
K(ξ)
dN p dNq
dξ ( p, q = 1, d + 1)
dξ dξ
α(ξ)N p (ξ)Nq (ξ) dξ ( p, q = 1, d + 1)
(3.24)
(3.25)
Le programme 3.2.4 ci-dessous implémente le calcul de la matrice de rigidité, en
programmant la relation (3.24) comme une procédure Maple. On laisse Maple effectuer
les intégrations des fonctions de formes. On note enfin que pour renvoyer la valeur de
la matrice élémentaire (et non son nom), on utilise la fonction evalm.
programme Maple 3.2.4: Calcul de la matrice de rigidité élémentaire
CHAP3/matrigid.ms
Si la fonction K(x) est contante, on retouve pour des éléments P 1 la matrice élémentaire suivante :
K
1 −1
Kk = k
−1 1
h
De même le programme 3.2.4 ci-dessous implémente le calcul de la matrice de
masse, en programmant la relation (3.25) .
i=1
programme Maple 3.2.4: Calcul de la matrice de masse élémentaire
3.2.4 Matrice élémentaire
Sur un élément ek la matrice élémentaire est la somme d’une matrice de rigidité Kk
et d’une matrice de masse Mk , qui pour des éléments finis P 1 sont des matrices 2*2
puisqu’il y a 2 fonctions de forme {N1 , N2 } associées aux 2 points d’interpolations de
numéros {n1 , n2 } (figure3.6) :
N1 (ξ) =
1+ξ
1−ξ
, N2 (ξ) =
, n1 = k, n2 = k + 1
2
2
CHAP3/matrimas.ms
Si la fonction α(x) est constante, on retouve pour des éléments P 1 la matrice élémentaire suivante :
1/3 1/6
Mk = αhk
1/6 1/3
De façon générale, pour des éléments finis P d , les matrices élémentaires sont des
matrices (d + 1) ∗ (d + 1) puisqu’il faut d + 1 de points d’interpolation (de numéros
Marc BUFFAT, UFR Mécanique, UCBLyon
Marc BUFFAT, UFR Mécanique, UCBLyon
24
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
25
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
3.2.5 Second membre élémentaire
Le calcul du second membre élémentaire procède de la même démarche. Pour un
élément P 1 , de sommets n1 , n2 , l’approximation de f (x) sur un élément ek s’écrit en
variable ξ :
A4,5 = A4,5 + A41,2,
A5,4 = A5,4 + A42,1 ,
A5,5 = A5,5 + A42,2
De façon générale, pour un élément k de degré d dont les numéros des noeuds d’interpolation sont notés {n p } p=1,d+1, la matrice élémentaire Ak de dimension (d + 1, d + 1)
a une contribution dans les coefficients An p ,nq de la matrice globale A de dimension
(nn, nn). Plus précisément le coefficient (p, q) de la matrice élémentaire Ak intervient
dans le calcul du coefficient (n p , nq ) de la matrice globale A, puisque n p est le numéro global du point d’interpolation p de l’élément k, et nq le numéro global du point
d’interpolation q .
f h (ξ) = fn1 N1 (ξ) + fn2 N2 (ξ)
Pour un élément de degré d, l’approximation de f (x) s’écrit :
f h (ξ) =
A4,4 = A4,4 + A41,1 ,
d+1
∑ fnq Nq (ξ)
q=1
d’où l’on déduit le second membre élémentaire générique :
Blp
d+1
hk
= ∑ f nq
2
q=1
Z +1
−1
An p ,nq ← An p ,nq + Alp,q
Nq (ξ)N p (ξ) dξ pour p = 1, d + 1
(3.26)
Le programme 3.2.5 ci-dessous implémente le calcul de ce vecteur élémentaire, en
programmant la relation (3.26)
programme Maple 3.2.5: Vecteur second membre élémentaire
CHAP3/smbelem.ms
Dans le cas d’une approximation P 1 , on trouve l’expression :
hk 2 fk + fk+1
Bk =
fk + 2 fk+1
6
Exercice : démontrer cette dernière relation.
3.2.6 Assemblage
Le calcul de la matrice globale A et du second membre B s’effectue par une procédure générale d’assemblage, qui calcule les matrices élémentaires élément par élément
et ensuite insère les coefficients de ces matrices à la bonne place dans la matrice globale.
Pour un élément ek de type P 1 ayant comme numéro de sommets {n1 , n2 }, la matrice élémentaire Ak de dimension (2, 2) contribue aux coefficients de la matrice globale A suivants :
An1 ,n1 ← An1 ,n1 + Ak1,1 , An1 ,n2 ← An1 ,n2 + Ak1,2
An2 ,n1 ← An2 ,n1 + Ak2,1 , An2 ,n2 ← An2 ,n2 + Ak2,2
L’algorithme d’assemblage général (1) est donnée ci dessous ainsi que le programme Maple 3.2.6 associé. On notera que l’on a fait varier les indices p et q à partir
de 1 (et non de 0), pour tenir compte du fait que sous Maple (et Matlab) les indices des
tableaux commencent à 1.
Algorithme 1 Assemblage de la matrice et du second membre
d ← 1 {dimension de l’interpolation}
A ← 0, B ← 0 {initialisation de la matrice A et du second membre B}
pour k = 1 to ne faire {boucle sur les éléments}
Ke ← Kl , Me ← Mk ,Be ← Bk {matrices élémentaires}
noi ← num(k) {calcul des numéros des noeuds de l’élément}
pour p = 1 to d + 1 faire {début de l’assemblage}
ni ← noi[p]
pour q = 1 to d + 1 faire
n j ← noi[q]
A[ni, n j] ← A[ni, n j] + Ke[p, q] + Me[p, q] {assemblage de la matrice}
fin pour
B[ni] ← B[ni] + Be[p] {assemblage du second membre}
fin pour
fin pour
A l’issue de cet assemblage la matrice A et le second membre B calculée avec les
paramètres de l’exemple précédent
L = 3 m, D = 2 cm, h = 50W/m2 /K, k = 6000W/m/K, Te = 60C, Ta = 20C, φe = 32W
s’écrivent pour un maillage de ne = 8 éléments :
Par exemple, sur le maillage de la figure (3.12), la matrice élémentaire A4 sur l’élément 4 contribue aux 4 coefficients suivants de A :
Marc BUFFAT, UFR Mécanique, UCBLyon
Marc BUFFAT, UFR Mécanique, UCBLyon
26
27
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D







A=






507.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 507.0
B = [118.0, 236.0, 236.0, 236.0, 236.0, 236.0, 236.0, 236.0, 118.0]
Cette matrice est symétrique et tri diagonale (car avec l’interpolation P 1 , une fonction de base associée à un noeud ou degré de liberté xi est non nulle sur l’intervalle
[xi−1 , xi+1 ]).
Exercise : démontrer cette propriété
programme Maple 3.2.6: Assemblage de la matrice et du second membre
CHAP3/assemblage.ms














CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
qui est non nul uniquement pour i = nn. Il faut donc modifier uniquement le dernier
terme de B :
Bnn ← Bnn − φ0
Le petit programme Maple 3.2.7 correspondant s’écrit :
programme Maple 3.2.7: Application des conditions et résolution
CHAP3/climit.ms
Après application des conditions aux limites, la matrice A s’écrit :

1.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
 −501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0

 0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0

 0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0

0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
A=
 0.0
 0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0

 0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0

 0.0
0.0
0.0
0.0
0.0
0.0
−501.0 1010.0 −501.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
−501.0 507.0
et le second membre B :
B = [60.0, 236.0, 236.0, 236.0, 236.0, 236.0, 236.0, 236.0, 85.8]
3.2.7 Prise en compte des conditions aux limites
On constate que la matrice A n’est plus symétrique, à cause de la façon d’implémenter la condition aux limites de Dirichlet. Nous verrons dans le chapitre suivant
comment imposer cette condition en conservant la symétrie.
Le calcul précédent est générique et ne tiens pas compte des conditions aux limites.
Pour la condition aux limites de Dirichlet en x = 0, on remplace la première équation
par la condition :
3.2.8 Résultats
T1 = Te
ce qui reviens à annuler la première ligne de la matrice A, puis à mettre un 1 sur le
terme diagonale A11 , et Te dans B11 . Pour la condition aux limites en x = L (condition
mixte), il faut rajouter un terme dans la matrice A correspondant à :
Avec les paramètres suivants donnés dans le programme Maple 3.2.8 ci-dessous,
pour un maillage de 8 éléments
programme Maple 3.2.8: Paramêtres du problème
CHAP3/param.ms
la solution obtenue vaut :
βuNn Φi (L) = β δi,Nn uNn
qui est non nul uniquement pour i = nn. Il faut donc modifier uniquement le terme
diagonale Ann,nn :
Ann,nn ← Ann,nn + β
Pour le second membre B, il faut rajouter le terme
−φ0 Φi (L) = −φ0 δi,Nn
Marc BUFFAT, UFR Mécanique, UCBLyon
X = [60.0, 55.3, 51.3, 48.2, 45.7, 43.8, 42.4, 41.6, 41.3]
La comparaison de cette solution éléments finis avec la solution exacte est donnée
sur la figure (3.15). On constate que l’erreur moyenne est très faible et vaut 0.083
(soit 0.1% en relatif), mais l’approximation de la dérivée en x = L reste encore assez
mauvaise : on trouve 158 au lieu de 32 (soit 390 % d’erreur), ce qui est cependant
meilleur qu’avec 3 éléments où on obtiens 374. A titre de comparaison, avec le maillage
de 3 éléments non régulièrement espacés du paragraphe 3.1, la solution est meilleure
puisque l’on trouve un flux de 285. On intuite ici l’intérêt en élément finis d’utiliser
des maillages adaptés au problème.
Marc BUFFAT, UFR Mécanique, UCBLyon














28
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
29
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
solution avec Ne=8
erreur relative en fonction de n
erreur relative sur la C.L. en L fonction de n
60
58
.1e–1
56
.1e2
54
err
52
err
5.
.1e–2
T
50
.1e–3
48
1.
5.
.1e2
n
46
1e–05
44
1.
42
5.
.1e2
n
.5e2
0.5
1
1.5
x
2
2.5
3
F IG . 3.15 – Solution éléments finis pour ne=8
Legend
erreur elts finis
pente –2
erreur elts finis
pente –1
F IG . 3.16 – Erreur relative en fonction de ne (elt P 1 )
Tk
3.2.9 Etude de la précision
e
e
k
Pour étudier la précision de la méthode des éléments finis P 1 , nous avons calculer
l’erreur relative moyenne :
sR
L
h 2
||u − uh||
0 (u − u ) dx
=
RL
2 dx
||u||
u
0
et l’erreur relative sur la condition aux limites en x = L :
h
| − K du
− φe |
dx
L
|φe |
en fonction du nombre d’éléments ne du maillage pour des maillages régulièrement
espacés (i.e. la taille h des éléments est proportionnelle à 1/ne). Les résultats sont
tracés en échelle logarithmique sur la figure (3.16). On constate que l’erreur relative
moyenne varie en ne12 (i.e. en θ(h2 )) (comparaison avec une droite de pente −2), et que
1
(i.e. en θ(h) ). Ce résultat montre
l’erreur relative sur la condition aux limites varie en ne
que l’approximation par éléments finis uh converge vers la solution exacte et que cette
convergence est d’ordre 2. Ce résultat est cohérent avec l’erreur d’interpolation, qui
comme nous l’avons vu est d’ordre 2 pour une approximation P 1 . On peut en fait
démontrer que l’erreur par éléments finis est majoré par cette erreur d’interpolation.
3.3 Éléments finis P 2
L’approximation par éléments finis P 2 consiste à utiliser une interpolation polynomiale de degré 2 sur l’élèment de référence ê. On utilise les 3 points d’interpolations
Ŝ1 (ξ = −1), Ŝ2 (ξ = 1), Ŝ3 (ξ = 0) sur ê associés à 3 points sur l’élément ek : les 2
Marc BUFFAT, UFR Mécanique, UCBLyon
.1e3
.1e3
Legend
0
.5e2
.5
S1
S3
S2
S1
S
−1
0
3
S2
x
n1
n3
n2
ξ
+1
F IG . 3.17 – éléments finis P 2
extrémités du segment S1 , S2 , et le milieu du segment S3 . On notera {n1 , n2 , n3 } les
numéros de ces 3 noeuds (figure 3.17).
Sur l’élément de référence, on définit donc 3 fonctions de formes :
N1 (ξ) =
ξ(ξ + 1)
ξ(ξ − 1)
, N2 (ξ) =
, N3 (ξ) = 1 − ξ2
2
2
qui sont tracées sur la figure ci dessous (figure 3.18).
3.3.1 Interpolation P 2
Une approximation par éléments finis P 2 sur un maillage de ne éléments nécéssite
2ne + 1 = nn points nodaux : les ne + 1 extrémités de segment et les ne milieux. On
numérote ces points de 1 à nn, et donc un élément ek a pour extrémités les sommets
S1 et S2 de numéro n1 = 2k − 1 et n2 = 2k + 1, et pour noeud milieu le sommet S3 de
numéro n3 = 2k. Les 3 fonctions de base {Φnq (x)}q=1,3 associées à ces 3 sommets de
numéro {nq }q=1,3 sont définies en fonction des fonctions de formes Nq (ξ) à l’aide de
la transformation vers l’élèment de référence (figure 3.19).
L’approximation f h par éléments P 2 d’ne fonction f (x) s’écrit globalement :
nn
f h (x) = ∑ fi Φi (x)
i=1
et sur chaque élément ek de sommets (n1 , n2 , n3 ) du maillage :
Marc BUFFAT, UFR Mécanique, UCBLyon
30
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
31
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
Approximation P2 de cos(2x)
1
1
0.8
0.5
0.6
1
0
0.4
0.5
1
1.5
x
2
2.5
3
0.8
0.2
–0.5
0.6
0
0.4
0.5
1
1.5
x
2
2.5
3
–1
F IG . 3.20 – Fonctions de base et interpolation P 2 sur un maillage ne = 4
0.2
–1
–0.8
–0.6
–0.4
–0.2
0
0.2
0.4
0.6
0.8
1
xi
f h (x) = fn1 Φn1 (x) + fn2 Φn2 (x) + fn3 Φn3 (x)
2
F IG . 3.18 – Fonctions de forme P : N1 (rouge), N2 (vert), N3 (bleu)
où les fonctions de base Φnq (x) sont définies à partir des fonctions de forme Nq (ξ)
par transformation vers l’élément de référence ê :
Φn1 (x) = N1 (ξ), Φn2 (x) = N2 (ξ), Φn3 (x) = N3 (ξ)
Le programme Maple 3.3.1 ci dessous implémente cette interpolation P 2 .
programme Maple 3.3.1: Approximation par éléments finis P2
CHAP3/approxP2.ms
Φn1
Φn3
N1
Φn2
k
S1
S3
S2
x
n1=2k−1
n3=2k
N
3
N2
Tk
e
n2=2k+1
F IG . 3.19 – élément P 2
Marc BUFFAT, UFR Mécanique, UCBLyon
S3
S1
−1
0
S2
+1
ξ
Dans ce programme, les ne + 1 points du maillage (extrémités des segments) sont
notés Xp, alors que les 2ne + 1 points nodaux (i.e. degré de liberté) sont notés X et sont
calculés en fonction de Xp (ligne 11). La numérotation des 3 points d’interpolation
pour un élément k est donnée par la fonction num (ligne 15). Les 3 fonctions de forme
sont calculées comme polynômes de Lagrange (lignes 17,18,19). Le changement de
variable vers l’élément de référence est définie à la ligne 21, et la fonction d’interpolation à la ligne 23 (ce sont les mêmes que pour l’interpolation P 1 ). Par contre le calcul
de l’erreur moyenne d’interpolation (ligne 31) est différente de la fonction P 1 , puisque
l’on fait explicitement intervenir les fonctions de forme par élément.
Les fonctions de base pour un maillage avec ne = 4 éléments (et donc le même
nombre de degré de liberté nn = 9 que dans l’example du paragraphe 3.2.2 avec des
éléments P 1 ) sont tracées sur la figure (3.20) , ainsi que l’interpolation P 2 de la fonction f (x) = cos(2x) , que l’on comparera avec l’interpolation P 1 de la figure (3.13) sur
un maillage identique. On constate que l’approximation P 2 est meilleure que l’approximation P 1 , ce qui est confirmée par la valeur de l’erreur moyenne :k f − f h k = 0.024
(soit plus de 2,5 fois plus faible).
Marc BUFFAT, UFR Mécanique, UCBLyon
32
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
33
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
3.3.2 Approximation par éléments finis P 2
T2
En suivant l’approche générale précédente, l’approximation P 2 de la solution u(x)
du problème (3.20) s’écrit :
x=0
1
2
4
3
x
uh (x) = ∑ ui Φi (x)
1
2
3
4
5
6
7
8
χ=1
χ=−1
x=L
nn
1
9
χ
3
2
i=1
Elle vérifie la formulation faible discrète (3.23), qui est équivalente à un système
linéaire de dimension nn :
A[u j ] = B
F IG . 3.21 – maillage P 2 et transformationT 2 : x =
L’expression des coefficients de A et B est la même que dans la relation (3.23),
mais les fonctions Φi sont maintenant les fonctions de base P 2 définies précédemment.
Comme avec les éléments finis P 1 du paragrape 3.2, nous construirons tout d’abord
la matrice A et le second membre B sans tenir compte des conditions aux limites, en
calculant des matrices et des seconds membres élémentaires, puis nous appliquerons
les conditions aux limites.
Matrices élémentaires
Les matrices élémentaires de raideur Kk et de masse Mk pour un élément ek sont
données par les relations (3.24) et (3.25) avec d = 2. Ce sont des matrices 3 ∗ 3 dont le
calcul général est éffectué par les 2 fonctions Maple MatRigidite (programme 3.2.4)
et MatMasse (programme 3.2.4).
Dans le cas où le coefficient K(x) est constant par élément, la matrice élémentaire
de raideur P 2 s’écrit :

 7
+ 6 + 61 − 43
2
Kk = K  + 16 + 67 − 43 
hk
− 43 − 34 + 83
De même si le coefficient α(x) est constant par élément, la matrice élémentaire de
masse P 2 s’écrit :


4
1
2
+ 15
− 15
+ 15
hk
4
2 
1
Mk = α  − 15
+ 15
+ 15
2
2
2
+ 15
+ 16
+ 15
15
Exercice : démontrer les deux résultats précédents.
Second membre élémentaire

hk 
B = 
2
k



Exercice : démontrer cette relation.
Assemblage
La procédure d’assemblage reprend l’algorithme général (3.2.6). Ainsi pour le
maillage de ne = 4 éléments et nn = 9 noeuds de la figure 3.21, la matrice élémentaire A2 de l’élémentaire e2 contribue aux éléments suivants de la matrice A :
A3,3 ← A3,3 + A21,1
A4,4 ←
A5,5 ←
A4,4 + A23,3
A5,5 + A22,2
A3,5 ← A3,5 + A21,2
A4,3 ← A4,3 + A23,1
A5,3 ← A5,3 + A22,1
A3,4 ← A3,4 + A21,3
A4,5 ← A4,5 + A23,2
A5,4 ← A5,4 + A22,3
On notera que la numérotation des noeuds sur l’élément e2 est dans l’ordre 3, 4, 5
alors que sur l’élément de référence la numérotation est 1, 3, 2 (on numérote d’abord
les extrémités puis le milieu). On a a donc n1 = 3, n2 = 5 et n3 = 4.
Conditions aux limites
Les conditions aux limites sont imposées de la même façon qu’au paragraphe 3.2.7,
et on utilise le programe Maple (programme 3.2.7).
En utilisant ces programmes Maple avec d = 2, sur le maillage de la figure (3.21)
Le second membre élémentaire pour un élément ek est donné par la relation générale (3.26) avec d = 2. Pour le calcul on utilise la fonction Maple SmbElem (programme 3.2.5). L’expression obtenue pour ce second membre élémentaire en P 2 s’écrit :
Marc BUFFAT, UFR Mécanique, UCBLyon
4 f n1 − f n2 +2 f n3
15
− f n1 +4 f n2 +2 f n3
15
2 f n1 2 f n2 +16 f n3
15
1−ξ
1+ξ
2 x3 + 2 x5
Marc BUFFAT, UFR Mécanique, UCBLyon
34
35
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
qui contient ne = 4 éléments (soit nn = 9 inconnues), on obtiens la matrice A suivante :

1.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
 −669.0 1350.0 −669.0
0.0
0.0
0.0
0.0
0.0
0.0

 83.0
−669.0 1180.0 −669.0
83.0
0.0
0.0
0.0
0.0

 0.0
0.0
−669.0 1350.0 −669.0
0.0
0.0
0.0
0.0

0.0
83.0
−669.0 1180.0 −669.0
83.0
0.0
0.0
A=
 0.0
 0.0
0.0
0.0
0.0
−669.0 1350.0 −669.0
0.0
0.0

 0.0
0.0
0.0
0.0
83.0
−669.0 1180.0 −669.0
83.0

 0.0
0.0
0.0
0.0
0.0
0.0
−669.0 1350.0 −669.0
0.0
0.0
0.0
0.0
0.0
0.0
83.0
−669.0 590.0
et un second membre B :
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
erreur relative en fonction de n (elt P2)
.1e–1
erreur relative sur la C.L. en L fonction de n (elt P2)
5.














.5e2
.1e3
.1
.1e–2
.1e–1
err
err
.1e–2
.1e–3
.1e–3
1.
5. n
.1e2
Legend
Legend
pente –3
erreur elts finis
B = [60.0, 314.0, 157.0, 314.0, 157.0, 314.0, 157.0, 314.0, 46.5]
n
.1e2
1.
erreur elts finis
pente –3
F IG . 3.22 – Erreur relative en fonction de Ne (elt P2)
La solution obtenue vaut :
Φ2
X = [60.0, 55.3, 51.4, 48.2, 45.7, 43.8, 42.4, 41.6, 41.3]
Ta
Les valeurs nodales de la solution sont très proche de la solution exacte, ce que
confirme le calcule de l’erreur moyenne qui est encore plus faible qu’avec l’approximation P 1 ( 0.0054 au lieu de 0.083). Mais la grande différence avec l’approximation
P 1 se trouve sur le calcul du flux en x = L : on trouve un flux égale à 30.16 (au lieu de
158 en P 1 ), très proche de la valeur exacte 32. Dans ce cas l’approximation P 2 apporte
une meilleure précision sur la dérivée en x = L, que l’approximation P 1 .
3.3.3 Etude de la précision
||u−uh ||
||u||
Pour quantifier cette étude, nous avons tracé l’erreur relative moyenne
et
l’erreur relative sur la condition aux limites en x = L en fonction du nombre d’éléments
ne du maillage. Les résultats sont tracés en échelle logarithmique sur la figure (3.22)
que l’on comparera avec la figure(3.16). On constate que l’erreur relative moyenne varie en ne13 (soit en θ(h3 )) (comparaison avec une droite de pente −3), et que l’erreur
relative sur la condition aux limites varie en ne13 (soit aussi en θ(h3 )) . La précision
de l’approximation P 2 est donc d’ordre 3, i.e. en θ(h3 ), alors que la précision de l’approximation P 1 est d’ordre 2, i.e. en θ(h2 ) (on a noté h la taille caractéristique des
L
éléments h = Ne
)
Exercice : modifier le programme Maple précédent pour faire l’étude avec des
3
éléments P . Montrez que dans ce cas la précision de l’approximation est d’ordre 4,
i.e. en θ(h4 ).
Φe
Φ1
Te
L
F IG . 3.23 – Température dans un barreau de section variable
S = S(x), et l’extrémité x = L est à l’air libre. Ce problème est un problème classique
d’ailette de radiateur, qui permet d’évacuer la chaleur d’un support à une température
Te par échange convectif avec l’air ambiant à température Ta .
Dans ce cas le flux de chaleur φe à l’extrémité s’écrit : φe = hS(T −Ta ), et l’équation
d’équilibre s’écrit :
d
(K(x) dT
− dx
dx ) + α(x)T = αTa
T (0) = Te , −K(L) dT
dx (L) = α(L) (T (L) − Ta )
Nous allons traiter avec les programmes précédents 3 cas correspondants à 3 ailettes
de section rectangulaire variable. Ces 3 ailettes ont une longueur L = 0.1 m, une largeur
H = 0.2 m, mais une épaisseur variable telle que :
1. une section S(x) = H ∗ D(x) croissante d’épaisseur D(x) = 0.025 + 0.050 Lx
2. une section S(x) = H ∗ D(x) décroissante d’épaisseur D(x) = 0.075 − 0.050 Lx
3. une section S(x) = H ∗ D(x) constante d’épaisseur D(x) = 0.05 m
Pour terminer cette étude, nous allons appliquer la méthode des éléments finis pour
résoudre le problème précédent dans le cas où la section du barreau est variable : i.e.
L’épaisseur moyenne étant la même pour les 3 ailettes, elles ont un même volume
V = 10−3 m3 , mais des surfaces d’échange différentes.
Le programme Maple 3.4 ci-dessous donne les paramètres du problème dans le cas
d’une convection forcée avec h = 104 W /m2 /K.
Marc BUFFAT, UFR Mécanique, UCBLyon
Marc BUFFAT, UFR Mécanique, UCBLyon
3.4 Applications au cas de coefficients non constants
36
CHAPITRE 3. MÉTHODE DES ÉLÉMENTS FINIS EN 1D
Repartition de temperature dans une ailette
60
55
50
T
45
40
35
0
0.02
0.04
x
0.06
0.08
0.1
Legend
section 1
section 2
section 3
exacte (3)
F IG . 3.24 – Solution P 1 pour les 3 sections d’ailette
programme Maple 3.4: Paramétres pour le calcul de l’ailette à section variable
CHAP3/param1.ms
En utilisant un maillage de ne = 16 éléments P 1 , on obtiens les résultats suivants
pour les 3 types d’ailette que l’on a tracé sur la figure (3.24). A titre de comparaison,
on a aussi tracé la solution analytique obtenue avec Maple pour le cas 3 (ailette de
section constante). Cela nous permet de vérifier que la solution éléments finis P 1 avec
un maillage de ne = 16 éléments est suffisamment précise, puisque la solution exacte
et la solution approchée sont quasiment confondues.
On constate sur cette figure (3.24) que la température à l’extrémité de l’ailette est
la plus faible dans le cas 1, et la plus grande dans le cas 2. Cela peut s’expliquer par
une surface d’échange plus grande à l’extrémité de l’ailette dans le cas 1 que dans le
cas 2 ( 3 fois plus petite), et dans le cas 3 (2 fois plus petite).
Cependant si l’on calcul le flux de chaleur φ = −kS( dT
dx )x=0 évacué par l’ailette, on
trouve les résultats suivants :
φ1 = 178650W, φ2 = 18620W, φ3 = 19350W
ce qui montre que dans ce cas l’ailette la plus efficace est l’ailette 3 de section
constante. En effet même si dans le cas 1 la température dans l’ailette est plus faible, et
donc le gradient de température plus important, la section en x = 0 est plus faible que
dans le cas 3, et donc globalement le flux est plus petit. C’est exactement le contraire
pour l’ailette 2.
Marc BUFFAT, UFR Mécanique, UCBLyon