Vous êtes sur la page 1sur 10

Université Hassan II - Casablanca

École Nationale Supérieure d’Arts et Métiers, ENSAM-Casablanca

MEC4122

TP2 :Eléments finis P2 conforme en 1D

12 Décembre, 2014

AKHARDID Salma - LAMZAOUEK Imane


Table des matières
1 Position du problème 2
1.1 Aspect physique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Aspect mathématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Problème discret 2
2.1 Maillage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Formulation discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 Système linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.4 Elément de référence : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.5 Calcul du système matriciel : . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.5.1 Calcul de la matrice de masse élémentaire : . . . . . . . . . . . . . . . 5
2.5.2 Calcul de la matrice de raideur élémentaire : . . . . . . . . . . . . . . . 5
2.5.3 Calcul du second membre élémentaire : . . . . . . . . . . . . . . . . . . 5

3 Approche numérique 6
3.1 Maillage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2 Calcul des matrices élémentaires et du second membre . . . . . . . . . . . . . 6
3.3 Assemblage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.4 Affichage des résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4 Résultats et commentaires 8

1
1 Position du problème
Considérons le problème de Dirichlet homogène en une dimension d’espace :
(
−∆u = f dans [0, L]
u(0) = u(L) = 0
u(0) = u(L) = 0 condition de dirichlet. Où L est une constante et f est une fonction continue.

1.1 Aspect physique


En analyse numérique, la MEF est utilisé pour résoudre numériquement des équations
aux dérivées partielles. Celles-ci peuvent représenter analytiquement le comportement dyna-
mique de certains systèmes physiques comme la mécanique, la thermodynamique, l’acous-
tique.

Elle est utilisée pour la résolution de nombreux problèmes et phénomène d’éléctrostatique


de propagation et de diffusion...tels que :
1. Équation donde
2. Équation de la chaleur Elle est également utilisée pourles probléatiques de phy
3. Electrostatique, la formulation classique (voir Équation de Poisson-Boltzmann) ex-
prime le potentiel électrique V associé à une distribution connue de charges ρ par la
relation :
ρ
∆V = − .
ε0
4. En gravitation universelle, le potentiel gravitationnel Φ est relié à la masse volumique
ρ par la relation
∆Φ = 4πGρ

1.2 Aspect mathématique


Le type de léquation est elliptique. La formulation variationnelle de ce problème s’écrit :
Trouver u ∈ V = H(a, b) telle que :
Z L Z L Z L
0 0
αu (x)v (x)dx + βu(x)v(x)dx = f (x)v(x)dx, ∀v ∈ H(a, b) (1)
0 0 0
L’existence et l’unicité de la solution du problème (1) se démontrent en utilisant le théorème
de Lax-Milgram.

2 Problème discret
Nous allons maintenant construire la méthode des éléments finis d’ordre élevé pour ré-
soudre numériquement le problème(1).

2
2.1 Maillage
Soit N ∈ IR, et soit x0 = 0 < x1 < · · · < xN +1 une discrétisation de l’intervalle [0; L] en
N + 1 éléments Ti = [xi ; xi+1 ]. Les éléments Ti n’ont pas forcément la même longueur. Soit
h = imax|xi+1 − xi |. Le paramètre h indique comment le maillage (Ti )i est fine.
On définit maintenant l’espace éléments finis V0h comme étant l’espace des fonctions conti-
nues sur [a; b], polynômes de degré deux par morceaux (polynôme de degrée 2 sur chaque
éléments Ti) et nulles aux bords x = 0 et x = L. Un polynôme de degré deux est déterminé
par ses valeurs en trois points, on prend alors les extrémités et le milieu de chaque élément
Ti . On est ainsi amené à considérer une discrétisation de [a; b] en N + 1 sous intervalles
comportant eux-mêmes trois points. Ce qui nous conduit globalement à une discrétisation
par 2N + 2 noeuds ou sommets de coordonnées xi .

V0h = {v ∈ C(0, L) : ∀i, 1 < i < 2N + 1, v|xi est polynôme de degré 2, et v(0) = v(L) = 0}

Introduisons les fonctions de base ou fonctions de forme φi ∈V0h , 1 < i < 2N + 1 qui
engendrent l’espace éléments finis V0h :
(
1, si i = j ;
φi (xj ) = δij =
0, si i 6= j.

Après des calculs élémentaires, on obtient :


1. φi correspondant à un point xi extrémité d’un élément :

(x−xi−2 )(x−xi−1 )

 (xi −xi−2 )(xi −xi−1 )
 si x ∈ [xi−2 , xi ] ;
φi (xj ) = (x−xi+1 )(x−xi+2 )
 (xi −xi+1 )(xi −xi+2 ) si x ∈ [xi−2 , xi ] ;


0 si x ∈/ [xi−2 , xi+2 ].
2. φi correspondent à un point milieu d’un élément :

(
(x−xi−1 )(x−xi+1 )
(xi −xi−1 )(xi −xi+1 ) , si x ∈ [xi−1 , xi+1 ] ;
φi (xj ) =
0 si x ∈/ [xi−1 , xi+1 ].

Toute fonction vh ∈V0h admet une unique représentation :


N
X +2
vh (x) = vi φi (x), ∀x ∈ [0, L]
i=1

Où vi = v(xi ). Autrement dit, chaque fonction vh ∈V0h est déterminé de manière unique par
la donnée de ses valeurs aux points xi , 1 < i < 2N + 1. L’espace V0h est de dimension finie
égale à 2N + 1 (nombre de noeuds interne).

2.2 Formulation discrete


La formulation variationnelle discrète de (1) est : Trouver uh ∈ V = H01 tel que :
Z L Z L Z L
0 0
αu (x)v (x)dx + βu(x)v(x)dx = f (x)v(x)dx, ∀v ∈ H(a, b) (2)
0 0 0

3
2.3 Système linéaire
Posons : Z L
Fi = f (x)φi (x)dx
0
Z L Z L
Aij = αφ0j (x)φ0i (x)dx + βφj (x)φi (x)dx
0 0
On remarque que le problème approché prend la forme d’un système linéaire qui s’écrit sous
la forme matricielle suivante :
AU = F
Où les inconnues sont les valeurs de u aux noeuds (xi )i représentées par le vecteur U =
(u1, ..., uN )t .
La matrice A apparaît comme la somme de deux matrice K et M .
K est appelée matrice de raideur. Elle est donée par :
Z L
Kij = α φ0j (x) φ0i (x)dx
0
M est la matrice de masse. Son expression est la suivante :
Z L
Mij = β φj (x) φi (x)dx
0

2.4 Elément de référence :


On obtient sans difficulté les contributions de chaque élément Ti aux matrices de raideur
et de masse, dites matrices de rigidités élémentaire en utilisant la technique de l’élément de
référence. Par le changement de variable Fi (t) = xi+1 + xi+22−xi t, on passe de t ∈ [−1, 1]
à x ∈ [xi , xi+2 ]. Les fonctions de base dans [xi , xi+2 ] s’expriment donc à l’aide des trois
fonctions définies sur [−1, 1] :

t(t − 1)
φ
c1 (t) =
2

c2 (t) = −(t − 1)(t + 1)


φ

t(t + 1)
φ
c3 (t) =
2
Nous avons :
φ 2i+k ◦ Fi k = −1, 0, 1.
c (t) = φ
k

L’expression des dérivées est donc :

c0 (t) = t − 1
φ 1
2

c0 (t) = −2t
φ 2

c0 (t) = 1 + 1
φ 3
2

4
2.5 Calcul du système matriciel :
2.5.1 Calcul de la matrice de masse élémentaire :
On calcule les coeffcients Mij en sommant les contributions des différents éléments comme
suit :
Z L N Z xk+1
X
Mij = β φj (x) φi (x)dx = β φj (x) φi dx
0 k=1 xk

La matrice élémentaire de masse est calculée par un changement de variable.


On a :
φ 2i+k ◦ Fi k = −1, 0, 1
c (t) = φ
k

Les coefficients de la matrice de masse pour l’élément [xi ; xi+2 ] sont :


Z 1
xi+2 − xi
β φbi (t)φbj (t)dt i, j = 1, 2, 3
2 −1

2.5.2 Calcul de la matrice de raideur élémentaire :


On calcule les coeffcients Kij en sommant les contributions des différents éléments comme
suit :
Z L N Z xk+1
φ0j (x) φ0i (x)dx φ0j (x) φ0i dx
X
Kij = α =α
0 k=1 xk

La matrice élémentaire de raideur est calculée par un changement de variable.


On a
dφ2i+k dφbk+2 dt
=
dx dt dx
pour k = −1, 0, −1 et i = 1, ..., N . Ainsi les coefficients dela matrice de raideur sont :
Z 1
2
α φb0 i (t)φb0 j (t)dt i, j = 1, 2, 3
xi+2 − xi −1

2.5.3 Calcul du second membre élémentaire :


Chaque composante Fi du vecteur second-membre global donnée par :
Z L
Fi = f (x)φi (x)dx
0

est également calculée par assemblage des contributions élémentaires Fik . On a :


N
X N Z x2k+1
X
Fi = Fik = f (x)φi (x)dx
k=1 k=1 x2k−1

Où les Fik désignent les contributions des éléments k. On utilise des formules d’intégration
numérique. Dans ce cas là nous allons opter pour la méthode de Gauss.

5
3 Approche numérique
Nous allons écrire un programme Matlab pour résoudre numériquement le problème (1)
par la méthode des éléments finis P2 conforme. Notre programme contient les fonctions
suivantes :

3.1 Maillage
function [X,T]=maillageP2(a,b,N) % X représente le tableau des coordonnées et
T celui de connectivité

function showmaillage(a,b,N) % fonction showmaillage pour représenter notre maillage 1D

La fonction maillageP2 qui nous permettera de calculer le tableau coord où seront placer
les coordonnées de tous les noeuds et le tableau de connectivité. La fonction showmaillage
affiche des noeuds sous forme Ni et les éléments sous forme Ti au milieu de chaque segment.

3.2 Calcul des matrices élémentaires et du second membre


function [x,w]=lgwt(N,a,b)

On utilisera la fonction lgwt pour calculer les matrices élémentaire à l’aide de la méthode
de Gauss. Cette fonction donne les poids et les sous forme de 2 tableaux, ce qui donne la
quadrature de gauss. Pour le calcul des matrices élémentaires K et M, on choisit N = 1
puisque la méthode est exacte pour les polynômes de degré 2N + 1. Elle fait appel à la
fonction function [x,w]=lgwt(N,a,b) Elle calcule les φbi (t).

function [elemK2] = elementK2(X,T,i)

Fonction pour construire la matrice élémentaire K.

function [elemM2] = elementM2(X,T,i)

Fonction pour construire la matrice élémentaire M.

function [elemf2] = secdm(X,T,i,f)

La matrice élémentaire du second membre. On appelle la fonction de gauss cette fois ci avec
N = 3.

3.3 Assemblage
function [A,F] = AssemblageP2(alpha,beta,a,b,N,f)

Cette fonction permet de faire l’assemblage des matrices élémentaires de masse et de rigidité
et de second membre.

6
3.4 Affichage des résultats
function [X,T,A,F,U]=solveP2(alpha,beta,a,b,N,f)
[X,T]=maillageP2(a,b,N);
[A,F]=AssemblageP2(alpha,beta,a,b,N,f);
U=A\F;

Cette fonction permet de trouver U . Elle fait appel à la fonction maillage et la fonction
d’assemblage.

7
4 Résultats et commentaires
Pour valider le programme, nous avons integré au niveau de solve une fonction test qui
nous peremettra de faire une comparaison entre une solution théorique proposée U et celle
obtenue par notre approximation U = A.

%Validation du programme pour alpha=1, beta=0, [a b]=[0 pi], f(x)=sin(x)


%Solution théorique: u(x)=sin(x)
x = 0:pi/100:pi;
y=sin(x);
%Courbe comparant les 2 solutions
plot(X,U,’-o’,x,y,’r’);
title([’Résolution P2 1D’]);

Nous obtenons donc le graphe suivant :

Nous constatons donc que l’espace polynomial P 2 nous permet d’obtenir une forte approxi-
mation.

Pour les éléments finis de degré 1, nous obtenons :

8
Si on compare ce résulat avec celui obtenu avec les élements finis de degré 1 (voir le graphe
ci-dessous) on constate que les éléments finis de degré 2 donnent un résultat plus précis et
plus proche.

Vous aimerez peut-être aussi