Uploaded by miloudbenz3

Résolution des équations Aux dérivées partielles Méthode des Différences Finies

advertisement
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
Chapitre 4 : Résolution des équations
Aux dérivées partielles
Méthode des Différences Finies
L’un des enjeux les plus importants du calcul scientifique est la résolution d’équations
aux dérivées partielles (qu’on abrègera en E.D.P). En effet, de très nombreux problèmes
issus des sciences physiques (physique quantique, électromagnétisme, conductivité
thermique) de la mécanique (mécanique des fluides, mécanique du solide, élasticité) de la
chimie (mécanismes de réaction diffusion) ou encore de la biologie (dynamique des
populations) et de la finance (pricing d’actifs) sont décrits à l’aide des E.D.P. Une E.D.P
fournit une relation entre les dérivées partielles d’une fonction de plusieurs variables (qui
peut ou non dépendre du temps). Il y a trois grandes classes des Parmi les E.D.P les plus
classiques des EDP, tels qu’EDP parabolique, EDP elliptique et EDP hyperbolique.
Il est noté que les solutions analytiques des équations EDP sont complexes d’une
part, limité (cas simple où 1D ou certainement 2D) et impossible d’autres part. Pour cela, le
recours aux méthodes numériques est indispensable. Parmi les méthodes numériques de
résolution, en peut citer la méthode des différences finies, des éléments finis et des volumes
finis. On s’intéresse dans ce chapitre à la résolution numérique (méthode des différences
finies) de ces trois classes d’EDP.
1. Présentation de la méthode des différences finies
La méthode des différences finies est une méthode numérique de résolution des
EDP. Sa formulation est basée sur l’approximation locale au voisinage d’un point donné des
fonctions dérivées. Ces dérivées sont approchées par des fonctions données par le
développement en série de Taylor. Alors, cette méthode transforme l’EDP en un système
d’équations aux différences finies. La résolution numérique de EDP par la méthode des
différences finies besoin de :
 Domaine de calculs D : On découpant le domaine étudie en un maillage de forme et
de dimensions adaptées à chaque problème.
 L’approximation des dérivées par des différences finies.
 Etablissement de l’équation EDP discrétisée.
 Conditions aux limites (conditions de frontière)
 Conditions initiales (pour les problèmes d'évolution).
 Résolution du système d’équations linaire obtenus de la discrétisation.
Page 1
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
1.1 Domaine de calculs
Les calculs par différences finies sont effectués suivant un maillage obtenu par un double
réseau de parallèles aux axes et régulièrement espacés. L'intersection de 2 droites du
maillage définit un nœud M de cordonnées xM , y M  . Si les parallèles à l'axe x sont
espacées de x  h et les parallèles à l'axe y de y  k , le nœud a comme coordonnées
xM  ix  ih et y M  iy  ik ou d'une manière condensée (i, j ) . Ainsi la fonction U ( x, y)
prend au point M ( xM , y M ) la valeur U (ix, jy)  U (ih, jk ) ou U ij (Figure 1).
Nœuds de frontière
Domaine D
Y
∆Y=k
Nœuds internes
i  1, j
Ligne j
i, j  1
i, j
i  1, j
M
Ligne i
i, j  1

  h
Figure 1. Domaine de calcul, nœuds internes et de frontières.
1.2 Approximation des dérivées
Soit U ( x, y) une fonction de deux variables indépendantes que nous supposerons
suffisamment différentiable. Si nous écrivons son développement en séries de Taylor en un
point x  h, y  k  , nous avons :
U x  h, y  k   U ( x, y)  h
U
U
h 2  2U
( x, y)  k
( x, y) 
( x, y)  ....
x
y
2! y 2
1  
 
 h  k 

(n  1)!  x
y 
( n 1)
U ( x, y )  .Rn
(1)
Avec le résidu Rn donné par :
1 
 
Rn   h  k 
n!  x
y 
Encore:

Rn  O  h  k 
n
( n 1)
U ( x  h, y  k )   0,1 ,  0,1
(2)

(3)
Cette équation signifie qu'il existe un nombre positif constant M tel que:

Rn  M  h  k 
n

(4)
Page 2
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
Le nœud ix, jy  est entouré par les nœuds avoisinants montrés sur la figure 1. En
développant en séries de Taylor pour U i 1, j U i 1, j , U i  2, j et U i  2, j autour de la valeur
centrale U i , j , nous obtenons :
h2
h3
h4
U xx  U xxx  U xxxx  R5
2!
3!
4!
(5)
h2
h3
h4
 hU x  U xx  U xxx  U xxxx  R ' 5
2!
3!
4!
(6)
U i 1, j  U i , j  hU x 
U i 1, j  U i , j
U i 2, j  U i , j  2hU x  2h 2U xx 
8h 3
2h 4
U xxx 
U xxxx  R '' 5
6
3
(7)
U i  2, j  U i , j  2hU x  2h 2U xx 
8h 3
2h 4
U xxx 
U xxxx  R ''' 5
6
3
(8)
Ux 

 2U
U
, U xx 
Etc... et toutes les dérivées sont évaluées au nœud U (i, j ) .
x
x 2
Approximation à l'ordre 1 en h de la dérivée première
En négligeant les termes d'ordre 2 et plus dans les équations (5) et (6) nous obtenons :
U i 1, j  U i , j
U

 O ( h)
(9)
x i , j
h
U
x

U i , j  U i 1, j
i, j
h
 O ( h)
(10)
Nous avons donc approché U x par des différences finies d'ordre 1 progressives (ou à
droite) et régressives (ou à gauche) respectivement.

Approximation à l'ordre 2 en h de la dérivée première par les différences centrées
En soustrayant (5) de (6) et en négligeant les termes d'ordre 4 et plus nous obtenons :
U i 1, j  U i 1, j
U

 O( h 2 )
(11)
x i , j
2h
C'est l'approximation de U x par des différences finies centrées d'ordre 2.

Approximation à l'ordre 1 en h de la dérivée seconde
En multipliant l'équation (6) par 2, en ajoutant le résultat à l'équation (8), et en
négligeant les termes d'ordre 3 et plus, nous obtenons :
 2U
x 2

i, j
U i , j  2U i 1, j  U i  2, j
h
2
 O( h 2 )
(12)
C'est l'approximation de la dérivée seconde à l'ordre 1 en h par les différences à
droite. De même, en utilisant les équations (5) et (7), nous obtenons l'approximation à
l'ordre 1 en h de U xx par les différences à gauche :
Page 3
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
 2U
x 2


Master en Energétique
A.U. 2016/2017
U i , j  2U i 1, j  U i  2, j
h
i, j
 O( h 2 )
2
(13)
Approximation à l'ordre 2 en h de la dérivée seconde
En ajoutant les équations (5) et (6) et en négligeant les termes d'ordre 4 et plus, nous
obtenons :
 2U
x 2

U i 1, j  2U i , j  U i 1, j
i, j
h
 O( h 2 )
2
(14)
C'est l'approximation de la dérivée seconde à l'ordre 2 en h par les différences centrées.

Approximation à l'ordre 2 en h de la dérivée première par les différences à droite ou à
gauche :
De l'équation (6) nous pouvons tirer :
U i 1, j  U i , j h
U

 U xx
x i , j
h
2
U
x

i, j

 3U i , j  4U i 1, j  U i  2, j
2h
i, j
h2
U xxx
6
i, j
 O( h 3 )
 O( h 2 )
(15)
(16)
C'est l'approximation à l'ordre 2 en h de la dérivée première U x par les différences
à droite. De même en utilisant les équations (5) et l’approximation de U xx (i,j) à l'ordre 1 en
h par les différences à gauche, nous obtenons l'approximation à l'ordre 2 en h de U x par les
différences à gauche :
U
x


3U i , j  4U i 1, j  U i 2, j
i, j
2h
 O( h 2 )
(17)
Approximation de U y et U yy
Les approximations de U y et U yy sont obtenues de la même façon que celles de U x et
U xx sont données ci-dessous :
U
y
U
y
U
x
U
y 2

i, j

i, j
U i , j 1  U i , j
U
 O( k ) ,
y
k
i, j
i, j
U i , j 1  U i , j 1
U
 O( k ) ,
x
2k
U i , j  U i , j 1
 O( k )
k

i, j
 3U i , j  4U i , j 1  U i , j 2
 O( k 2 )
2k

3U i , j  4U i , j 1  U i , j 2
 2U
 O( k 2 ) , 2
2k
y

U i , j  2U i , j 1  U i , j 2
U
 O( k 2 ) , 2
2
k
y
i, j
2

i, j
(19)

U i , j  2U i , j 1  U i , j 2
 O( k 2 )
2
k
(20)

U i , j 1  2U i , j  U i , j 1
 O( k 2 )
2
k
(21)
i, j
2
(18)
Page 4
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL

Master en Energétique
A.U. 2016/2017
Approximation de la dérivée croisée U xy :
 2U
xy
U
xy

i, j
2

i, j
 2U
1
U i1, j  U i1, j1  U i1, j1  U i1, j1  O(hk )

yx i , j 4hk
  U 

y  x  i , j
U
x

i , j 1
U
x
i , j 1
2k
 O( k 2 )
(22)
(23)
En utilisant l'approximation de U x par des différences finies centrées d'ordre 2, nous
obtenons :
U
x
U
x

U i1, j 1  U i1, j 1
 O( h 2 )
2h
(24)

U i1, j 1  U i1, j 1
 O( h 2 )
2h
(25)
i , j 1
i , j 1
Finalement :
 2U
xy

i, j
 2U
1
U i1, j  U i1, j1  U i1, j1  U i1, j1  O(hk )

yx i , j 4hk
(26)
1.3 Etablissement des équations aux différences finies
En remplaçant es dérivées par les leurs différences finies approchées dans l’équation EDP
de base gouvernant un tel phénomène, pour obtenir l’équation discrétisée. Cette équation
pourra être valide que pour les nœuds situés à l’intérieur du domaine de calculs.
Pour obtenir une approximation numérique de la solution de ce problème nous devons
approcher les dérivées partielles de l'E.D.P en chaque nœud du domaine discrétisé
(maillage). En utilisant les valeurs de la variable dépendante en ce nœud et aux nœuds
avoisinants.
1.4 Conditions aux limites
Il existe trois types de conditions aux limites pour les équations aux dérivées partielles
EDP :
- Condition de type Dirichlet, lorsque la variable est prend des valeurs définies sur la
frontière (Exemple : température imposée pour les parois isotherme).
- Condition de type Neumann, lorsque la dérivée de la variable est définies sur les
frontière ou un flux de variable est imposé à la frontière (exemple : parois
adiabatique T / X  0 ).
-
Condition de type Fourrier ou mixte, lorsque les deux conditions se présentent à la
fois c’est-à-dire une la variable est une équation différentielle (mélange des deux
types de conditions).
Page 5
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
1.5 Conditions initiales
Ce type de condition concerne les phénomènes d’évolution (régime variable ou
instationnaire). Là où la variable doit être définie au temps initiale (   0 ).
2.6 Résolution du système d’équations
Les équations relatives à l’ensemble des nœuds forment un système linéaire de n
équations à n inconnues U ij . Pour consoler l’écriture on convient de désigner la variable du
nœud (i, j ) par un seul indice k, U ij devient U k k  1, n . Les équations résultantes pour les
nœuds internes peuvent se mettre sous la forme matricielle suivante :
 a11 a12 ..... a1n  U1   b1 
a
    
 21 a22 ...... a2 n  U 2  b2 
(27)
. .
.  .    . 
 .
 .
. ...... .   .   . 
a
    
 n1 an 2 ....... ann  U n  bn 
Lorsque le nombre de nœuds n’est pas trop grand, on peut résoudre facilement le
système d’équation manuellement. Mais pour des problèmes plus complexe, de très grand
nombre de nœuds, beaucoup des méthodes numériques peuvent être utilisées pour
résoudre ce système d’équations (méthode de Gauss, Gauss-Seidel, …).
3. Résolution des EDP paraboliques
Il existe essentiellement trois types de méthodes de base pour résoudre les E.D.P.
paraboliques : méthodes explicites, implicites et du type Crank-Nicholson. Nous exposerons
chacune d'elles en prenant l'exemple d'une équation linéaire à une variable d'espace x.
 U  2U



t
x 2

U ( x,0)  f ( x)
U (0, t )  g (t )
0

U (1, t )  g 1 (t )
0  x 1
0 x T
0t T
, 0 t T
(28)
0t T
Où T est le temps où on veut la solution.
L'équation (28) décrit par exemple, en coordonnées adimensionnelles, la conduction
transitoire de la chaleur dans une barre isolée avec une distribution de température au
temps t = 0 et ayant les extrémités maintenues à des températures qui peuvent être
fonction du temps. Les condition initiale et g0(t) et g1(t) sont les conditions aux limites qui
sont du type Dirichlet.
3.1 Méthode de résolution explicite
Afin de résoudre l'équation (1) par les différences finies, nous diviserons l'intervalle
[0, 1] en M intervalles Δx = h = 1/M par les points x0 = 0, x1,…., xM = 1, et l'intervalle [0 , T] en
Page 6
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
N intervalles N. Δt = k = 1/N par les points t0 = 0, t1,…., tN où M et N sont des nombres entiers
arbitrairement choisis. Le maillage obtenu est représenté sur les figures 2a-b.
Figure 2a. Maillage dans le cas génér
n est l’indice du temps.
Figure 2b. La méthode explicite.
Pour chaque nœud intérieur au domaine (c'est-à-dire les nœuds qui n'ont pas i = 0, i
= M ou n = 0) les dérivées de l'équation (28) sont remplacées par les approximations
suggérées. Ainsi, en désignant par Ui,n la valeur approchée de la fonction U au nœud (i, n) et
en utilisant les différences à droite pour la dérivée par rapport à t et les différences centrées
pour la dérivée spatiale, nous obtenons :
U in 1  U in U in1  2U in  U in1

k
h2
(29)
Ou en définissant   t / x   k / h 2 , alors;
2
U in1  U in1  (1  2 )U in  U in1
(30)
Dans la figure 1b, les croix et les cercles indiquent les nœuds intervenant dans la
discrétisation de Ut et Uxx respectivement. Si tous les Uin sont connus à l'instant tn, l'équation
(30) permet à Uin+1 d'être calculé directement (c'est-à-dire explicitement) à l'instant tn+1 pour
1≤M ≤1. Pour les nœuds des frontières i = 0, i = M, nous avons d'après les conditions aux
limites.
U 0n 1  g 0 (t n 1 )
U Mn 1  g1 (t n 1 )
(31)
Puisque les conditions initiales de U sont imposées au temps t = 0 par:
U i0  f ( xi )
Les valeurs de U peuvent évidemment être obtenues dans tous les nœuds par
l’application répétée de (30) et (31). Nous devons calculer toutes les valeurs de U à l’instant
n avant d'avancer à l'instant n + 1.
Page 7
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL

Master en Energétique
A.U. 2016/2017
Condition de convergence de la méthode explicite
n
L’erreur de discrétisation locale win est la différence de la valeur exacte U i au nœud
i, n et la valeur approchée U in obtenue par la méthode des différences finies :
n
win  U i  U in
Nous dirons que le schéma des différences finies (30) converge si l’erreur win tend
vers 0 lorsque Δx et Δt tendent vers zéro. Du développement en série de Taylor, en
supposant que U possède un nombre suffisant de dérivées partielles, nous avons :
k2
n1
n
(32)
U i  U i1  kUt  U tt  O(k 3 )
2!
U
n1
i
h2
h3
h4
h5
 U  hU t  U xx  U xxx  U xxxx  U xxxxx  O(h6 )
2!
3!
4!
5!
n
i
(33)
Dans (10) et (11) les dérivées sont évaluées en ix, nt  .
En utilisant l’équation 1, U t  U xx avec (32) et (33) nous aboutirons à :
Uin1  U in1  (1  2 )U in  U in1  Zin
(34)
Où :
Z in h
h2
 U tt  U xxxx  O(k 2 )  O(h 4 )
k
2
12
En soustrayant (30) de (34) et en appliquant (31), nous obtenons :
Wi n1  Win1  (1  2 )Wi n  Win1  Zin
(35)
(36)
Maintenant supposons que 0    1/ 2 ; les coefficients  et (  1) sont positifs et
nous avons donc l’inégalité :
Wi n1   Win1  (1  2 ) Wi n   Win1  Zin
(37)
(n)
(n)
 max Wi n , Z MAX
 max Zin 1  i  M  1.
Posons WMAX
On a alors :
(n)
(n)
(n)
WMAX
 Wmax
 Z max
(38)
En particulier, puisque max( 0)  0 :
(n )
Wmax ( N )  N .Z où Z  max( Z MAX
)
C’est-à-dire :
Wmax ( N )  T


t
(x) 2
2
U tt 
U xxx  O t   O(x) 4 
2
12
max
(39)
Donc si   0,1 / 2 l’erreur de discrétisation est en O(h 2 ) et la méthode converge
lorsque h  0 .
Finalement, puisque
U tt  U txx  U xxt  U xxxx Alors pour le choix spéciale de
  1/ 6 l’erreur de discrétisation est en O(h 4 ) et la méthode converge encore plus vite.
Page 8
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
L'inconvénient de la méthode explicite est donc qu'elle nécessite de choisir Δt
suffisamment petit (de telle façon à satisfaire la condition 0 ≤ λ ≤ 1/2) sinon la solution de
l'équation II-1 devient instable. A cause de ce risque d'instabilité, il est préférable d'utiliser
l'une des méthodes suivantes.
3.2 Méthode Implicite
L'équation explicite (30) a été obtenue en écrivant les deux membres de (28) à
l'instant tn, où la solution est connue. Nous obtenons une équation implicite en écrivant les
deux membres de (28) à l'instant tn+1 où la solution n'est pas connue, ce qui donne :
U in 1  U in U in11  2U in 1  U in11

k
h2
Ou encore:
 U in11  (1  2 )U in1  U in11  U in
(40)
Les noeuds intervenant dans la discrétisation de U t et U xx sont montrés que la figure 2.
Figure 3.
L'equation (40) ecrite pour chaque point 1  i  M  1 resulte en un systeme de M-1
equations simultanées à M+1 inconnues U 0n1 ,....,U Mn1 . le nombre d'inconnues est ensuite
reduit à M-1 en incorporant les conditions aux limites:
U 0n1  g 0 (tn1 )
(41)
U Mn1  g1 (tn1 )
On obtient alors le systeme à matrice tridiagonle:
(1  2 )U1n1  U 2n1  U in  g0 (ti 1 ) pour i  1
 U ii11  (1  2 )U1n1  U in11  U in
pour 2  i  M  2
(42)
 U Mi 12  (1  2 )U Mn11  U Mn 1  g1 (t i 1 ) pour i  M  1
Ce système peut être résolu par une méthode quelconque de résolution des
systèmes algébriques linéaires. La méthode la plus adaptée pour ce type de systèmes est en
fait le double balayage de Choleski.

Convergence de la méthode Implicite
On peut montrer, en procédant comme dans le cas de la méthode explicite, que la
méthode implicite est inconditionnellement stable, c'est à dire qu'elle converge qu'elle que
soit la valeur de λ.
Page 9
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
3.3 Methode de Crank-Nicholson (implicite)
La méthode de Crank-Nicholson consiste à écrire les deux membres de l’équation (II1) au temps n + 1/2 (montré par un cercle sur la figure 4).
Figure 4.
Le premier membre est approché par les différences centrées et le second est
exprimé comme la demi-somme des approximations aux instants n et n + 1. Nous obtenons
alors :
U in1  U in 1 2 n1 1 2 n
  x Ui   x Ui
k
2
2

1 U in11  2U in1  U nn11  1 U in1  2U in  U in1 
 2

2 
h2
h2



C’est - à - dire:  Uin11  2(1   )Uin1  Uin11  Uin1  2(1   )Uin  Uin1
(43)
Le second membre de (43) étant connu, on remarque que (43) est en fait une
équation implicite, qui se traite exactement comme il a été indiqué à la section précédente
(concernant la méthode implicite).
L'avantage de ce schéma est que pour une valeur donnée de Δx, l'erreur de
troncature sur le terme Δt est nettement plus petite que dans les méthodes implicite et
explicite. Ce gain est obtenu au prix d'une complication mineure des calculs.
La méthode de Crank-Nicholson est inconditionnellement stable et converge quel que soit la
valeur du rapport λ.
4- Schémas explicites inconditionnellement stables
Alors que la méthode explicite familière n'est stable qu’avec la condition 0 ≤ λ ≤ 1/2,
ils existent plusieurs autres méthodes explicites qui sont libres de cette restriction. Des
exemples de telles méthodes sont illustrés ci-dessous pour la résolution de l'équation Ut =
Uxx mais toutes peuvent être généralisées à plus d'une dimension d'espace.
4.1 Méthode de Dufort -Frankel
Figure 5.
Page 10
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
U in1  U in1 U in1  U in1  U in1  U in1

2t
x 2
(44)
Cette methode dait intervenir trois niveaux de temps comme montré sur la figure 5.
4.2 Methode de Saul'yev
Elle consiste à effectuer successivement deux types d'approximations, en portant U in et en
procedant dans le sens des x positives, nous obtenus les U in1 en utilisant les schéma:
U in1  U in U in11  U in1  U in  U in1

t
x 2
(45)
Nous obtenous ensute les U in 1 en procedant dans la direction x negatives en utilisant le
scema suivant:
U in2  U in1 U in11  U in1  U in2  U in12

t
x 2
(46)
5. Application des methodes explicite et implicite au cas génral d'une equation au
dérivées partielles linaires:
Soit, à resoudre l'EDP:
(47)
La discrétisation par la methode explicite donne:
(48)
ou :
(49)
On peut montrer que la condition de stbilité de ce schema est:
 2 Ai

 2  Ci t  1
 x

(50)
La methode s’applique, sans aucune modification de principe, aux equations dont les
coefficients A, B, C, D depndent non seulement de x, mais aussi de t et de f ainsi qu’aux
fonctions de plusieure variable d’espace. L’application de la methode implicite à l’equation
(47) donne :
1 n1
 fi  fi n   Ai 2  fin11  2 fi n1  fin11   B  fin11  fin11   Ci fi n1  Di
(51)
t
x
2x
Ou encore:
Page 11
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
Bi  n1  1 2 Ai
Bi  n1  f i n

 Ai
 n1  Ai

f



C
f


f i1    Di 
i i
2
 x 2 2x  i1  t x



 x 2x 
 t

(52)
Ce schéma est universellement stable. Il peut facilement être généralisé au cas où les
coefficients A, B, C, D dépendent de t. Aussi, on peut l'adapter au cas ou ces cœfficients de f:
il faut dans ce cas résoudre à chaque instant tk de l'équation (52) par itération: on se donne
une fonction f 0 ( x) qu'on injecte dans A, B, Cet D, la résolution de (52) donne alors une autre
fonction f 0 ( x) , etc .. Jusqu’à la convergence.
4. Méthodes de résolution des EDP elliptique
La discrétisation d'une E.D.P elliptique à l'aide des différences finies comporte les
étapes suivantes :
1. On définit un maillage qui couvre le domaine et sa frontière.
2. On approche les dérivées partielles, à l'aide des différences finies, dans tous les
nœuds intérieurs au domaine : les équations algébriques obtenues contiennent des
valeurs de la fonction aux points appartenant à la frontière.
3. On utilise les conditions aux limites pour éliminer les valeurs aux points de la
frontière.
Nous obtiendrons alors un système de N équations à N inconnues dont la résolution est
faite par l'une des méthodes données ci-dessous.
Exemple : Déterminer la fonction f(x, y) dans le domaine rectangulaire 0 ≤ x ≤ a, 0 ≤ y ≤ b
(Figure 5). f satisfait à l’équation de Laplace avec les conditions aux limites suivantes :
f ( x  0, y)  f 0
f ( x  a, y)  f a
f (c  x  a, y  0)  f a
(53)
f
( x  c, y  0)  f a
y
f
( x, y  b )  0
y
Figure 5.
Page 12
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
Solution :
1. On définit un maillage (Figure 6) qui coïncide avec les frontière du domaine : on
utilise n+1 pas sur x (0 ≤ i ≤ n+1) de la valeur Δx = a/(n+1). Le pas Δx est choisi comme
sous multiple de a et (a-c) de façon que x = c correspond au p ieme pas sur x. on
utilise aussi m+1 pas sur y (0 ≤ k ≤ m+1) de la valeur Δy = a/(m+1).
Figure 6.
2. Dans chaque nœud intérieur (0 ≤ i ≤ n+1, 0 ≤ k ≤ m+1) on approche l’équation Δf = 0 à
l’aide des différences finies, ce qui donne :
f i1,k  2 f i ,k  f i1,k f i ,k 1  2 f i ,k  f i ,k 1

0
x 2
y 2
(54)
3. Les conditions aux limites sur les frontières i = 0, i = k+1 et k = m+1 sont maintenant
incorporées dans les équations des nœuds situes sur les lignes i = 1, i = n, k = 1 et k
= m respectivement.
Nœuds (i, 1), i=1, n
Pour i =1 la condition aux limites imposée est f‘x sur l'axe y = 0 et f  f 0 sur l'axe x = 0.
1
 f0,1  2 f1,1  f 2,1   1 2  f1,0  2 f1,1  f1,2   0
(55)
2
x 
y 
f y'  0  3 f1, 0  4 f1,1  f1, 2  0  f1, 0 
4
1
f1,1  f1, 2
3
3
(56)
f 0,1  f 0
(57)
1
 2 f1,1  f 2,1   2 2  f1,1  f1, 2    1 2 f0
2
(x)
3(y)
(x)
(58)
Page 13
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
Pour i= 2 à p-1 On obtient :
1
 fi1,1  2 f1i1  fi1,1   2 2  fi ,0  2 fi ,1  fi ,2   0
2
(x)
3(y)
(59)
f y'  0  3 fi , 0  4 fi ,1  fi , 2  0
(60)
1
 fi1,1  2 fi ,1  fi1,1   2 2  fi ,1  fi , 2   0
2
x 
3y 
(61)
Soit ;
On continue ainsi à incorporer les conditions aux limites, ce qui donne : pour p ≤ i ≤ n-1
1
 fi1,1  2 fi ,1  fi1,1   1 2  2 f n,1  f n,2    1 2  f a
2
x 
y 
 y 
(62)
1
 f n1,1  2 f n,1   1 2  2 f n,1  f n, 2    1 2  1 2  f a
2
x
y
 x y 
(63)
Pour i = n :
La même méthode est utilisée pour les nœuds (i, m), (1, k) et (n, k). Nous obtiendrons
ainsi un système de n équations linéaires pour chaque ligne k (1≤ k ≤ m) soit au total m x n =
N équations à N inconnues. Les inconnues sont les valeurs de f aux nœuds intérieurs du
domaine.
La condition aux limites f’y sur la frontière k = m est approchée en utilisant les différences à
gauche et non pas les différences à droite comme nous l'avons fait pour les nœuds (i, k = 1).
1. Méthode de résolution directe
Le système obtenu peut être résolu par la méthode d’élimination de Gauss comme
illustrée par l’exemple suivant :
Exemple : Déterminer le champ des valeurs prises par la fonction T(x, y) dans le domaine et
avec les conditions aux limites suivantes :
 2T  2T

0
x 2 y 2
Dans un carré de côté C
T 0
Le long de x = 0 et y = 0
T  x3
Le long de y = C
T  16 y
le long de x = C
Ce problème correspond, par exemple, au cas concret suivant : détermine la
température à l'intérieur d'une plaque carrée (ou dans une barre infinie ou parfaitement
Page 14
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
isolée à chaque extrémité de section carré) où 2 côtés sont à 0 °C et les 2 autres sont à
températures imposées suivant les lois T  x3 et T  16 y
Solution
En choisissant le même pas dans les deux directions h  x  y , la discrétisation
pour les nœuds à l'intérieur du maillage donne :
Ti1,k  2Ti ,k  Ti1,k Ti ,k 1  2Ti ,k  Ti ,k 1

0
h2
h2
Soit :
Ti1,k  Ti1,k  4Ti ,k  Ti ,k 1  Ti ,k 1  0
L'application de ce schéma aux points à l'intérieur du domaine dans le cas d'un maillage
4x4 donne les équations :
Les quantités :
et
sont
connues d'après les conditions aux limites. On a donc un système d'équations linéaires: 9
équations à 9 inconnues. En posant :
On peut écrire :
Page 15
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
Figure 7.
Le problème essentiel de la méthode directe est la place mémoire avec en
conséquence un temps élevé d'accès aux mémoires périphériques. Ceci devient dans la
pratique prohibitive si le nombre de variables indépendantes est supérieur à deux.
Par rapport à la méthode itérative exposée ci-dessous, la méthode directe possède les
avantages et inconvénients suivants :
 Avantage :
1. temps calcul en général plus petit pour une même précision
2. dans certains cas la méthode itérative peut ne pas converger.
 Inconvénients :
1. Occupation mémoire importante
2. Risque d'erreur d'arrondi importante si certains pivots sont trop petits, problème
qu'on ne rencontre en pratique pas dans la méthode itérative.
3. La méthode directe n'est pas applicable aux équations non - linéaires.
Page 16
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
3. Méthode itérative de Gauss Seidel
Après multiplication par Δx2 et regroupement des termes, l’équation (54), s’écrit :
f i1,k  f i1,k
2
2
  x  2 
 x 
 x 
 21     f i ,k    f i ,k 1    f i ,k 1  0
 y 
 y 
  y  
Ou :
2
2


 x 
 x 
 f i 1,k  f i 1,k    f i ,k 1    f i ,k 1 
 y 
 y 


f i ,k  
(64)
2

 x  
2  2  
 y  

Le procédé itératif est alors appliqué au système d'équations (64) comme suit :
I. On se donne une distribution f(0) i,k avec i =1, n et k =1, m.
II.
On calcule pour chaque couple (i, k) une nouvelle valeur f (1)i,k à l'aide des valeurs
f(0)i,k choisies ou f(1)h,1, h et 1 étant les indices des nœuds avoisinants de (i, k).
III.
on continue à calculer f(2)i,k, et f(3)i,k.. etc. de la même façon jusqu'à la
convergence, c.-à-d. :

f i ,(kj 1)  f i ,(kj )

f i ,(kj )
(65)
Où j est le numéro d'itération, et ε est le critère de convergence.
Dans le cas de l'équation de Laplace, la méthode de Gauss-Seidel converge toujours.
Pour d'autres E.D.P plus compliquées elle pourra diverger. Cette méthode est en général
préférable aux méthodes directes car elle est plus facile à programmer. Aussi, elle demande
moins de place mémoire et peut être appliquée à des matrices de grande taille et à des
équations algébriques non linéaires.
La convergence peut être accélérée en utilisant un facteur de sur relaxation  , avec
0    1/ 2 :
Soit f i ,(kj ) la valeur de f i ,k à la j ieme itération, l’introduction du f i ,(kj ) dans l’équation(64)
donne f i ,(kj 1) : au lieu d’utiliser f i ,(kj 1) pour l’itération suivante, on utilise f i ,(kj 1)* donnée par :
fi ,(kj 1)*  fi ,(kj )    fi ,(kj 1  fi ,(kj ) 
0    1/ 2
(66)
5. Méthodes de résolution des EDP hyperbolique
Il existe deux méthodes de résolution des équations aux dérivées partielles hyperboliques :
1. la méthode des différences finies
2. la méthode des caractéristiques
La méthode des différences finies est appliquée pour les équations dont les solutions sont
continuées. Lorsqu'une fonction ou l'une de ses dérivées est discontinue en un point de la
frontière, on sait que cette discontinuité se propage le long des caractéristiques passant par
Page 17
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
ce point. Dans ce cas nous devons utiliser impérativement la méthode des caractéristiques
car elle donne des résultats plus précis que la méthode des différences finies.
Les méthodes des différences seront exposées pour une équation simple Elles restent
entièrement valables pour des équations plus compliquées.
5.1 Méthodes explicite
Soit à résoudre l’équation des ondes :
1 2 f
2 f

 x 2 c 2 . t 2

0 xa
 f ( x, t  0)  F ( x)
0 xa
 f ( x, t  0)

 G ( x)
t

(67)
Ou c est une constante.
On choisit un maillage de l’espace (x,t) correspondant à des x et t (Figure ). En
supposant f ( x, t ) connue jusqu’à l’instant k, la discrétisation par les différences centrées au
nœud (i,k) donne :
2 f
1
 2  f i ,k 1  2 f i ,k  f i ,k 1 
2
t
t
2
 f
1
 2  f i1,1  2 f i ,k  f i1,k 
2
x
x
En portant dans le système, on obtient :
c 2 t 2
 fi1,k  2 fi ,k  fi1,k 
f i ,k 1  2 f i ,k  f i ,k 1 
x 2
Ou encore, en regroupant les termes :
 f i ,k 1   f i ,k 1  2(1   ) f i ,k    f i1,k  f i1,k 

(68)

c 2 t 2
 
2
x

Si f est connue pour tout x = iΔx Jusqu’en t = kΔt, le second membre de l’équation est
connu ce qui détermine f i ,k 1 . Le problème du démarrage reste à régler car en mettant k = 0
dans l’équation discrétisée, on voit clairement sur la figure qu’il est nécessaire de connaitre
f i , 0 et f i ,1 .
f i , 0 est obtenu de la condition initiale : fi , 0  FI
f i ,1 est déterminée par la donnée de la dérivée à t = 0. En approchant cette dérivée
par les différences centrées, nous aurons :
f
1
 fi,1  fi ,1 

t i , 0 2t
(69)
Le système discrétisés écrit en k = 0 devient alors, en tenant compte des conditions au
limites et initiales :
Page 18
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
 f i ,1   f i , 1  2(1   ) Fi   Fi1  Fi1 

2t.GI  f i ,1  f i , 1
(70)
L’élimination de f i ,1 entre ces deux équations donne f i ,1 pour tout i. on pourra alors calculer
facilement f i ,1 (il suffit de mettre i = 1 à n).
Ayant calculé les valeurs aux nœuds (i ,1), nous passons aux nœuds (i, 2). Pour cela, il faut
appliquer l’équation discrétisé en k = 1 : on voit alors que f i , 2 ne peut être déterminée que
pour i = 2 à n-1. De même pour les nœuds (i, 3), f i , 3 peut être déterminée seulement pour i
=3 à n-2 et ainsi de suite. De sorte que le domaine ou f peut être déterminée se rétrécit
lorsque t croit (figure 8).
La solution eut être déterminée complètement (c’est-à-dire pour tout t > 0 et tout x tel
que 0  x  a ) que si l’on impose des conditions aux limites en x =0 et x = a par exemple :
 f ( x  0, t )  H 0 (t )

 f ' x  a, t )  H a (t )
(71)
En effet, avec ces conditions on peut appliquer l’équation discrétisée pour toutes les
valeurs de i (i = 1 à n) quel que soit k. on peut montrer que la solution n’est pas stable si Δt
>(Δx/c). C’est la raison pour laquelle il faut employer les méthodes implicite si on désire
calculer f en des pas assez grands dans le temps.
Figure 8
5. 2 Méthode implicite
 2 f 
La dérivée par rapport à t approchée comme dans la méthode explicite  2  est
 x i ,k
cependant évaluée en prenant la demi-somme des valeurs de cette dérivée en k-1 et k+1 on
écrit dont (figure 9):
Page 19
Cours de Méthodes Numériques Approfondies
Département de Mécanique, UATL
Master en Energétique
A.U. 2016/2017
1   2 f 
 2 f 
 2 f  
 2    2    2  
 x i ,k 2  x i ,k 1  x i ,k 1 
C’est-à-dire :
(72)
1
 2 f 
 fi1,k 1  fi,k 1  fi1,k 1    fi1,k 1  2 fi,k1  fi1,k 1 
 2 
2
 x i ,k 2x
(73)
Figure 9.
En portant dans l’équation (67), il vient :
f i ,k 1  2 f i ,k  f i ,k 1 
On  

2
 f
i 1,k 1
 f i ,k 1  f i1,k 1    f i1,k 1  2 f i ,k 1  f i1,k 1 
(74)
c 2 t 2
, on obtient en réarrangeant les termes :
x 2


2
f i1,k 1  (1   ) f i ,k 1 

2
f i1,k 1  2 f i ,k 

2
f
i 1,k 1
 f i ,k 1  f i1,k 1 
(75)
On obtient un système à matrice tri diagonale qui peut être résolu par double
balayage, ou par méthode itérative, à condition de connaître les conditions aux limites, par
exemple en x = 0 et x = a : ceci n'était pas nécessaire dans la méthode explicite.
L'avantage principal de la méthode implicite est qu'elle est stable quel que soit Δt : on peut
donc utiliser des pas sur le temps plus importants que dans la méthode explicite, ce qui
permet de gagner du temps, au prix d'une complication mineure des calculs.
Page 20
Download