projet de deuxième année ensimag calcul …jmonnie/enseignement/...une boîte à outils pour le...
TRANSCRIPT
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
1
Juin 2003
Projet de deuxième année ENSIMAG
Calcul Scientifique Vassilissa Lebacque et Didier Hébert
Encadrant : Jérôme Monnier
Fidimag Finite Difference Method IMAG
Une boîte à outils pour le calcul
différences finies
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
2
TABLE DES MATIERES
Table des matières ..................................................................................................................... 2
1. Introduction....................................................................................................................... 4
1.1 Qu’est-ce que FIDIMAG ? ...................................................................................... 4
1.2 Utilisation de Fidimag .............................................................................................. 4
1.3 Choix et Présentation des schémas ......................................................................... 4
1.4 Notations ................................................................................................................... 5
2. Equation de Transport ...................................................................................................... 6
2.1 Présentation de l’équation....................................................................................... 6
2.2 Schémas numériques................................................................................................ 6 2.2.1 Schéma de Lax................................................................................................... 6 2.2.2 Schéma de Lax-Friedrich................................................................................... 6 2.2.3 Schéma de Lax-Wendroff .................................................................................. 7 2.2.4 Schéma leap-frog ou saute-mouton.................................................................... 7 2.2.5 Schéma de Crank-Nicholson décentré ............................................................... 7 2.2.6 Schéma de Crank-Nicholson centré ................................................................... 7 2.2.7 Schéma implicite centré ..................................................................................... 8
2.3 Comparaison des schémas ....................................................................................... 8
3. Equation de Diffusion..................................................................................................... 14
3.1 Présentation de l’équation..................................................................................... 14
3.2 Schemas numériques.............................................................................................. 14 3.2.1 Schéma Euler explicite ..................................................................................... 14 3.2.2 Schéma de Crank-Nicholson............................................................................ 15 3.2.3 Schéma Euler Implicite .................................................................................... 15
3.3 Comparaison des schémas ..................................................................................... 15
4. Equation de Convection-Diffusion-dissipation.............................................................. 17
4.1 Présentation de l’équation..................................................................................... 17
4.2 Schémas numériques.............................................................................................. 17 4.2.1 Schéma leap-frog ou saute-mouton.................................................................. 17 4.2.2 Schéma de Crank-Nicholson décentré ............................................................. 17 4.2.3 Schéma de Crank-Nicholson centré ................................................................. 17 4.2.4 Schéma implicite centré ................................................................................... 18
4.3 Comparaison des schémas..................................................................................... 18
5. Equation parabolique non linéaire................................................................................. 20
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
3
5.1 Présentation de l’équation..................................................................................... 20
5.2 Schémas numériques.............................................................................................. 20 5.2.1 Schéma explicite .............................................................................................. 20 5.2.2 Schéma implicite avec semi- linéarisation........................................................ 20 5.2.3 Schéma Leap Frog............................................................................................ 20 5.2.4 Schéma implicite avec méthode de Newton .................................................... 21
5.3 Test des schémas..................................................................................................... 21
6. Equation Hyperbolique non linéaire : Equation de Burger.......................................... 24
6.1 Présentation de l’équation..................................................................................... 24
6.2 Schémas numériques.............................................................................................. 24 6.2.1 Schéma de Lax-Wendroff ................................................................................ 24 6.2.2 Schéma implicite linéarisé sous « forme delta » centré ................................... 25
6.3 Comparaison des deux schémas ............................................................................ 25 6.3.1 Onde de choc .................................................................................................... 25 6.3.2 Onde de détente ................................................................................................ 26
7. Tests de convergence et de validité: Verification des resultats theoriques pour la convection diffusion dissipation ............................................................................................. 29
7.1 Tests de la convergence en espace......................................................................... 29
7.2 Test de la convergence en temps ........................................................................... 31
7.3 Cas de coefficients non constants .......................................................................... 32
7.4 Test de stabilite ....................................................................................................... 32
Références................................................................................................................................ 35
Table des Illustrations............................................................................................................. 36
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
4
1. INTRODUCTION
1.1 QU’EST-CE QUE FIDIMAG ?
Fidimag est un programme Matlab permettant de résoudre numériquement des équations aux dérivées partielles en dimension 1 en utilisant des schémas numériques différences finies. On propose la résolution des équations de transport, convection, convection-diffusion-dissipation, parabolique non linéaire et hyperbolique non linéaire. Ce programme pourra être utilisé pour illustrer un cours traitant des différences finies. Les schémas proposés pour ces résolutions sont décrits plus loin ainsi que leurs avantages et inconvénients.
1.2 UTILISATION DE FIDIMAG
Le fichier contenant les programmes permettant d’utiliser Fidimag peut être téléchargé depuis le site http://www-lmc.imag.fr/lmc-edp/Jerome.Monnier/home.html dans la rubrique « La boîte à outils du numéricien ». La commande Matlab qui lance Fidimag est fidimag. Pour obtenir une aide, il est possible d’utiliser la commande standard d’aide en tapant help fidimag.
1.3 CHOIX ET PRESENTATION DES SCHEMAS
De nombreux choix de schémas sont proposés pour chaque modèle. Certains peuvent ne pas paraître pertinents au vu de leurs résultats numériques. En effet, les schémas explicites sont conditionnellement stables et si l’on s’éloigne de cette condition de stabilité, l’approximation des solutions se dégrade. Cependant, ces schémas sont plus simples à coder, ce qui se révèle important en dimension supérieure à 1. De plus, ils ne font pas apparaître dans le calcul des solutions de matrice à inverser comme le font les schémas implicites ou de Crank-Nicholson. Cela rend le temps de calcul légèrement moins important en dimension 1, et beaucoup moins important en dimensions supérieures pour lesquelles la taille des matrices à inverser est plus importante. Les schémas implicites présentent peu d’avantages en dimension 1 par rapport aux schémas de Crank-Nicholson car ils sont souvent d’ordre de convergence inférieur en temps, mais ils sont bien plus simples à coder en dimension supérieure à 1. Les schémas seront présentés ici de la façon suivante : - Une présentation succincte des propriétés des schémas - Un test effectué avec l’ensemble des schémas et les différentes courbes obtenues.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
5
1.4 NOTATIONS
Nous utilisons dans ce rapport des notations standard pour les équations aux dérivées partielles. L’intervalle en espace est noté [0,L]. Il est subdivisé en I intervalles. L’intervalle en temps est noté [0,T]. Il est subdivisé en N intervalles. La valeur approchée des fonctions au point ),( tnxi ∆∆ du maillage sera notée n
iu .
Les dérivées en temps et en espace sont notées respectivement xx ∂
∂=∂ ,
2
2
xxx ∂∂
=∂ ,
txtx ∂∂∂
=∂2
, tt ∂
∂=∂ et
2
2
ttt ∂∂
=∂
Pour une écriture plus lisible des schémas numériques, nous utilisons les notations suivantes :
xuu
uni
nin
i ∆−
= −+
2)( 11δ
2112
)(2
)(x
uuuu
ni
ni
nin
i ∆+−
= −+δ
xuu
uni
nin
i ∆−
= −− 1)(δ
xuu
uni
nin
i ∆−
= ++ 1)(δ
Elles correspondent aux approximations classiques des dérivées en espaces du premier et second ordre. La première approche la dérivée première en espace à l’ordre 2, la seconde au même ordre la dérivée seconde. Les deux dernière approchent la dérivée première à l’ordre 1.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
6
2. EQUATION DE TRANSPORT
2.1 PRESENTATION DE L’EQUATION
Le problème considéré est le suivant :
],0[],0[),()()0,(
),()(
0
TLtxxuxu
txfuxvu xt ×∈
=
=∂+∂
Dans le cas où v est constant et f nulle, la solution peut être calculée de façon exacte à partir de la condition initiale. En notant ),()(0 txuxu = on obtiendrait pour ℜ∈x :
)(),( 0 vtxutxu −= . Cette solution correspond au transport de la condition initiale à la vitesse v.
2.2 SCHEMAS NUMERIQUES
2.2.1 Schéma de Lax
Le Schéma de Lax est un schéma d’ordre 1 en espace et 1 en temps aussi appelé Upwind. C’est un schéma explicite et conditionnellement stable. Sa formulation est la suivante :
ni
nii
nii
ni
ni fuxvuv
tuu
=∆−+∆−+
)()( 21
δδ
Ce schéma doit être utilisé sous la condition de stabilité :
( ) 1max ≤∆∆
xt
vii
Ce schéma a pour propriété d’être diffusif. Plus on s’approchera de sa condition de stabilité et plus les solutions données par ce schéma seront proches de la solution exacte.
2.2.2 Schéma de Lax-Friedrich
Le schéma de Lax-Friedrich est d’ordre 1 en temps et 2 en espace. C’est un schéma explicite et conditionnellement stable. Sa formulation est la suivante :
ni
nii
ni
ni
ni fuvuuu
t=+
+−∆ −+
+ )()(211
111 δ
Ce schéma doit être utilisé sous la condition de stabilité :
( ) 1max ≤∆∆
xt
vii
Ce schéma a pour propriété d’être diffusif.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
7
Plus on s’approchera de sa condition de stabilité et plus les solutions données par ce schéma seront proches de la solution exacte.
2.2.3 Schéma de Lax-Wendroff
Le schéma de Lax-Wendroff est d’ordre 2 en temps et 2 en espace. C’est un schéma explicite et conditionnellement stable. Sa formulation est la suivante :
( ) ni
nii
nii
ni
ni fu
tvuv
tuu
=∆
−+∆−+
)(2
)( 221
δδ
Ce schéma doit être utilisé sous la condition de stabilité :
( ) 1max ≤∆∆
xt
vii
Ce schéma a pour propriété d’être diffusif. Il est cependant moins diffusif que les
deux précédents car un terme de correction ( ) nii u
tv )(
222 δ
∆− a été ajouté pour limiter
ce phénomène. Plus on s’approchera de sa condition de stabilité et plus les solutions données par ce schéma seront proches de la solution exacte.
2.2.4 Schéma leap-frog ou saute-mouton
Le schéma leap-frog est d’ordre 2 en temps et 2 en espace. C’est un schéma explicite et conditionnellement stable. Sa formulation est la suivante :
ni
nii
ni
ni fuv
tuu
=+∆− −+
)(2
11
δ
Ce schéma doit être utilisé sous la condition de stabilité :
( ) 1max ≤∆∆
xt
vii
Plus on s’approchera de sa condition de stabilité et plus les solutions données par ce schéma seront proches de la solution exacte. Si la solution exacte présente des irrégularités, des oscillations peuvent apparaître dans leur voisinage.
2.2.5 Schéma de Crank-Nicholson décentré
Le schéma de Crank-Nicholson décentré est d’ordre 2 en temps et 1 en espace. C’est un schéma inconditionnellement stable. Sa formulation est la suivante :
( ) ( ) ( )ni
ni
ni
ni
ini
ni
ini
ni ffuu
xvuu
vt
uu+=+
∆−++
∆− +++
+12121
1
21
)()(2
)()(2
δδδδ
2.2.6 Schéma de Crank-Nicholson centré
Le schéma de Crank-Nicholson centré est d’ordre 2 en temps et 2 en espace. C’est un schéma inconditionnellement stable. Sa formulation est la suivante :
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
8
( ) ( )ni
ni
ni
ni
ini
ni ffuu
vt
uu+=++
∆− ++
+11
1
21
)()(2
δδ
Si la solution exacte présente des irrégularités, des oscillations peuvent apparaître dans leur voisinage.
2.2.7 Schéma implicite centré
Le schéma implicite centré est d’ordre 1 en temps et 2 en espace. C’est un schéma inconditionnellement stable. Sa formulation est la suivante :
1121
)( +++
=+∆− n
inii
ni
ni fuv
tuu
δ
Si la solution exacte présente des irrégularités, des oscillations peuvent apparaître dans leur voisinage.
2.3 COMPARAISON DES SCHEMAS
Pour comparer ces schémas, nous avons choisi l’équation
===
×∈=∂+∂
2),10(2),0(
)()0,(
]10,0[]10,0[),(05,0
0
tutu
xuxu
txsuruu xt
avec tout d’abord une condition initiale est définie par :
∈+−
∈−
=sinon
xsix
xsix
xu2
]5.3,5.2]3710
]5.2,5.1]1310
)(0
Figure 1: Condition initiale à dérivée non continue
Cette solution est intéressante car elle présente plusieurs discontinuités de sa dérivée première mais est continue.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
9
Pour que la solution exacte de l’équation soit facile à calculer, nous avons donc choisi une vitesse de propagation constante, 5.0)( =xv et une fonction ),( txf nulle. La solution exacte de cette équation est )5.0(),( 0 txutxu −= . Elle est donc toujours supérieure à 2. Cet exemple permet de mettre en évidence les différentes propriétés des schémas numériques énoncées ci-dessus. En effet on observe de très légères oscillations aux points de discontinuité de la dérivée de u pour les schémas de Lax-Wendroff, Leap-Frog, Crank-Nicholson centré et Implicite centré (une seule figure a été agrandie pour pouvoir voir ces oscillations). On constate que ces oscillations font descendre la solution numérique en dessous de 2, mais donnent une solution très proche de la solution exacte. Les schémas diffusifs donnent des résultats moins satisfaisants dans la mesure où ils donnent des solutions numériques moins satisfaisantes : elles ont perdu les discontinuités de la dérivée première. Voici les courbes correspondants aux différents schémas numériques pour un nombre de points en temps égal à 3001 et un nombre de points en espace égal à 2001.
Figure 2: Explicite décentré
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
10
Figure 3: Lax-Friedriech
Figure 4: Crank-Nichoson Décentré
Figure 5: Lax-Wendroff
Figure 6: Leap- Frog
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
11
Figure 7: Crank-Nicholson centré
La deuxième condition initiale que nous avons choisie est un créneau :
∈
=sinon
xsixu
2]5.3,5.1[12
)(0
Figure 8: Condition Initiale
qui n’est cette fois pas continue. On retrouve à nouveau des oscillations aux points de discontinuité, mais elles sont cette fois beaucoup plus accentuées.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
12
Une fois encore, ces schémas seront à préférer aux schémas diffusifs malgré les oscillations car les solutions numériques fournies permettent de retrouver les discontinuités de la solution exacte. Les figures ci-dessous représentent les solutions numériques obtenues en t=10 pour 3001 points en temps et 2001 en espace.
Figure 9: Explicite décentré
Figure 10: Lax-Friedrich
Figure 11: Lax-Wendroff
Figure 12: Leap Frog
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
13
Figure 13:Crank-Nicholson
Décentré
Figure 14:Crank-Nicholson Centré
Figure 15: Implicite
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
14
3. EQUATION DE DIFFUSION
3.1 PRESENTATION DE L’EQUATION
Le problème considéré est le suivant :
],0[],0[),(
)(),()(),0(
)()0,(
),(
0 TLtx
thtLutgtuxuxu
txfuau xxt
×∈
===
=∂−∂
La solution de cette équation possède plusieurs propriétés qualitatives intéressantes qu’il est important de retrouver dans les solutions numériques apportées par les différents schémas.
- La première est qu’elle vérifie le principe du maximum : si on note )0,()(0 xuxu = la condition initiale, on a :
∞≤ 0
),(),( utxuMax
tx.
- Contrairement à l’équation de transport, la solution en un point x à l’instant 0>t dépend de toute la donnée initiale.
- Le terme ua xx∂− a une action régularisante sur les solutions de l’équation : on
a une solution ∞C dès que 0>t et ce quelle que soit la condition initiale.
3.2 SCHEMAS NUMERIQUES
3.2.1 Schéma Euler explicite
Le schéma Euler explicite est d’ordre 1 en temps et 2 en espace. C’est un schéma explicite et conditionnellement stable. Sa formulation est la suivante :
ni
ni
ni
ni fua
tuu
=−∆−+
)( 21
δ
Ce schéma doit être utilisé sous la condition de stabilité :
21
2≤
∆∆xt
a
Cette condition est plus sévère que la condition de stabilité des schémas conditionnellement stables choisis pour l’équation de transport. Elle oblige a choisir un pas de temps de l’ordre du pas d’espace au carré, ce qui rend important le nombre des itérations en temps si l’on souhaite utiliser un pas fin en espace.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
15
3.2.2 Schéma de Crank-Nicholson
Le schéma de Crank-Nicholson est d’ordre 2 en temps et 2 en espace. C’est un schéma inconditionnellement stable. Sa formulation est la suivante :
( ) ( )ni
ni
ni
ni
ni
ni ffuu
at
uu+=+−
∆− ++
+1212
1
21
)()(2
δδ
3.2.3 Schéma Euler Implicite
Le schéma Euler Implicite est d’ordre 1 en temps et 2 en espace. C’est un schéma inconditionnellement stable. Sa formulation est la suivante :
1121
)( +++
=−∆− n
ini
ni
ni fua
tuu
δ
Ce schéma est moins performant que le précédent, sa complexité de calcul étant similaire et son ordre en temps inférieur, mais il pourra être préféré en dimension supérieure à 1 pour sa plus grande facilité d’implémentation.
3.3 COMPARAISON DES SCHEMAS
Quelle que soit la condition initiale, les trois schémas donnent des résultats quasiment identiques. Les tests ont été effectués avec 2001 points en temps et 201 en espace pour le problème suivant :
∈
=×∈
===
=∂−∂
onxsi
xuavectx
tLutu
xuxu
txuu xxt
sin0]6,4[10
)(]10,0[]10,0[),(
0),(0),0(
)()0,(
)cos(325.0
00
Figure 16: Condition Initiale
Les valeurs choisies pour les pas d’espaces et de temps nous placent sur la condition de stabilité du schéma explicite, ce qui permet de ne pas faire trop de calculs. On ne peut pas distinguer à l’œil nu les résultats des différents schémas. Les
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
16
seules choses qui les différencient restent donc le temps d’exécution et l’ordre de convergence. Les courbes obtenues sont les suivantes :
Figure 17: Résultat de tous les schémas avec 25 images
On constate la régularisation de la donnée initiale due à l’opérateur uxx∂
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
17
4. EQUATION DE CONVECTION-DIFFUSION-DISSIPATION
4.1 PRESENTATION DE L’EQUATION
Le problème considéré est le suivant :
],0[],0[),(
)(),()(),0(
)()0,(
),()()(
0 TLtx
thTLutgtuxuxu
txfuxcuxvuau xxxt
×∈
===
=+∂+∂−∂
Cette équation regroupe les 2 phénomènes précédents. L’opérateur ua xx∂− régularise toujours les solutions comme il le faisait pour les solutions de l’équation de convection. Le terme uc est le terme de dissipation.
4.2 SCHEMAS NUMERIQUES
4.2.1 Schéma leap-frog ou saute-mouton
Le schéma leap-frog est d’ordre 2 en temps et 2 en espace. C’est un schéma explicite et conditionnellement stable. Sa formulation est la suivante :
ni
nii
nii
ni
ni
ni fucuvua
tuu
=++−∆− −+
)()(2
211
δδ
4.2.2 Schéma de Crank-Nicholson décentré
Le schéma de Crank-Nicholson décentré est d’ordre 2 en temps et 1 en espace. C’est un schéma inconditionnellement stable. Sa formulation est la suivante :
( )
( ) ( ) ( ) ( )ni
ni
ni
ni
ini
ni
ini
ni
i
ni
ni
ni
ni
ffuuc
uuxv
uuv
uua
tuu
+=+++∆
+++
+−∆−
++++
++
112121
2121
21
2)()(
2)()(
2
)()(2
δδδδ
δδ
4.2.3 Schéma de Crank-Nicholson centré
Le schéma de Crank-Nicholson centré est d’ordre 2 en temps et 2 en espace. C’est un schéma inconditionnellement stable. Sa formulation est la suivante :
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
18
( )
( ) ( ) ( )ni
ni
ni
ni
ini
ni
m
ni
ni
ni
ni
ffuuc
uuv
uua
tuu
+=++++
+−∆−
+++
++
111
2121
21
2)()(
2
)()(2
δδ
δδ
4.2.4 Schéma implicite centré
Le schéma implicite centré est d’ordre 1 en temps et 2 en espace. C’est un schéma inconditionnellement stable. Sa formulation est la suivante :
111121
)()( +++++
=++−∆− n
inii
ni
ni
ni
ni fucuviua
tuu
δδ
4.3 COMPARAISON DES SCHEMAS
Il est important de noter que si le coefficient de convection est très important par rapport au coefficient de diffusion, on pourra voir apparaître les mêmes types d’oscillations qui existaient pour une condition initiale irrégulière pour les schémas de Crank-Nicholson centré et implicite centré que l’on voyait apparaître sur les solutions numériques de l’équation de transport. Nous avons effectué nos comparaisons à partir du problème suivant :
]10,0[]10,0[),(
)cos()10cos(),10()cos(),0()cos()0,(
)cos()sin()sin()cos()cos()cos(2)3()]cos()5([25.0 2
×∈
===
−−=+∂−+∂−∂
txavec
tTuttuxxu
txtxtxuxuxxxuu xxxt
On observe qu’au voisinage de x=10, le coefficient de transport )cos()5( xxx − est très supérieur au coefficient de diffusion. De plus, la condition de Dirichlet en x=10 impose une solution qui serait discontinue dans le cas d’un transport pur. C’est pour cela que l’on obtient des oscillations pour les schémas de Crank-Nicholson centré et Implicite centré au voisinage du point x=10.
0 1 2 3 4 5 6 7 8 9 10-20
-10
0
10
20
30
40
50
x
v
vitesse
Figure 18: Coefficient de diffusion
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
19
Nous obtenons les courbes :
Figure 19: Crank-Nicholson
Décentré
Figure 20: Crank-Nicholson centré
Figure 21: Implicite Centré
Figure 22: Implicite pour t=10
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
20
5. EQUATION PARABOLIQUE NON LINEAIRE
5.1 PRESENTATION DE L’EQUATION
Le problème considéré est le suivant :
],0[],0[),(
)(),()(),0(
)()0,(
)(
0 TLtx
thtLutgtuxuxu
ufuau xxt
×∈
===
=∂−∂
Le terme )(uf de l’équation est non linéaire. Pour approcher ce terme, nous utilisons la méthode de semi-linéarisation et la méthode de Newton pour les schémas implicites.
5.2 SCHEMAS NUMERIQUES
5.2.1 Schéma explicite
Le schéma explicite est conditionnellement stable, mais la condition de stabilité est fonction de )(uf . La formulation de ce schéma est la suivante :
)()( 21
ni
ni
ni
ni ufua
tuu
=−∆−+
δ
Ce schéma ne demande l’inversion d’aucune matrice, il est donc plus rapide que les schémas implicites.
5.2.2 Schéma implicite avec semi-linéarisation
La formulation de ce schéma est la suivante :
( ) 13121
)( +++
−=−∆− n
ini
ni
ni
ni uuCua
tuu
δ
On doit à chaque itération inverser une matrice différente,ce qui entraîne un coût de calcul plus important que pour le schéma explicite.
5.2.3 Schéma Leap Frog
Ce schéma est explicite et conditionnellement stable suivant )(uf . La première itération est celle du schéma explicite normal. La formulation du schéma Leap Frog est la suivante :
)()(2
1211
−−+
=−∆− n
ini
ni
ni ufua
tuu
δ
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
21
Pour le rayonnement corps noir, la condition de stabilité semble plus contraignante que pour le schéma explicite.
5.2.4 Schéma implicite avec méthode de Newton
La formulation de ce schéma est la suivante :
)()( 1121
+++
=−∆− n
ini
ni
ni ufua
tuu
δ
On a ici un système non linéaire à résoudre à chaque itération. On utilise la méthode de Newton. Il sera alors demandé, avant de lancer le calcul, la dérivée de f(u) par rapport à u, la précision ε souhaitée à chaque itération et le nombre d’itérations maximal pour éviter de boucler. Si on note a et b deux itérés consécutifs de la méthode de Newton, lorsque ε≤−
∞ba ou lorsque le nombre maximal d’itérations
est atteint, on sort de la boucle correspondant à la méthode de Newton. Si le nombre maximal d’itérations est atteint, un message dans la fenêtre d’exécution de Matlab s’affichera. Durant la méthode de Newton, les matrices à inverser sont tridiagonales. Comme une partie de ces matrices est la même tout le long du schéma, cette partie est additionnée à chaque fois à la partie qui évolue selon l’itération en temps et selon l’itération dans la méthode Newton. Pour le problème du rayonnement corps noir, c’est à dire pour 4)( uuf = , et pour une précision de 310− , la méthode de Newton à chaque itération en temps converge rapidement en quelques itérations. Malgré cela, ce schéma reste le plus lent.
5.3 TEST DES SCHEMAS
On cherche à la fois à tester la validité des schémas proposés et les différences de temps d’exécution entre les schémas. Pour cela, nous avons choisi de tester nos schémas sur un problème du type rayonnement du corps noir . Prenons le nombre de points en espace égal à 2001 et le nombre de points en temps égal à 2001, l’intervalle d’espace [0,10], l’intervalle de temps [0,0.04], 25.0=a et
43)( uuf −= . Considérons les conditions Dirichlet nulles en 0 et 10 et considérons la condition initiale :
≤−>−−−+
≤−
sinon
xetxsix
xsi
0
1532
5))2)5(3cos(1(5
32
510
π .
0 1 2 3 4 5 6 7 8 9 100
1
2
3
4
5
6
7
8
9
10
x (à t=0)
u
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
22
On obtient des résultats de temps CPU qui confirment bien les résultats attendus. Le temps CPU du Leap-Frog n’apparaît pas car ce schéma n’est pas stable pour les paramètres considérés.
96.8213.5889.5
)10:( 3
secondesentempsCPU
précisionNewtonImplicite
ionlinéarisatsemiImpliciteExplicite −−
Le schéma Implicite Newton est bien le plus long en temps CPU. Nous voyons que le fait de modifier la matrice à inverser à chaque itération coûte cher en temps : le temps d’exécution du schéma explicite est alors beaucoup plus court que les deux autres. Les représentations graphiques qui correspondent contribuent à affirmer la validité des codes :
Figure 23: Schéma explicite
Figure 24:Schéma implicite semi-linéaire
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
23
Figure 25:Schéma implicite Newton
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
24
6. EQUATION HYPERBOLIQUE NON LINEAIRE : EQUATION DE BURGER
6.1 PRESENTATION DE L’EQUATION
Le problème de considéré est le suivant :
=
ℜ×=∂+∂
0)0,(
[,0]0
uxu
Tsuruuu xt
Il s’agit d’une équation de Burger non visqueuse. Le lecteur intéressé par une étude formelle de ce problème pourra se référer à E.Godlewski, P.A Raviart « Numerical Approximation of hyperbolic systems of conservation laws », Springer, 1996
6.2 SCHEMAS NUMERIQUES
Si dans le cas d’une détente, on n’a pas unicité de la solution faible du problème de Riemann
[,0]),(
00
)0,(
)1(02
2
Ttxpour
xpouruxpouru
xu
uu xt
ℜ×∈
><
=
=
∂+∂
+
−
Mais la solution physique de ce problème est connue. On s’intéressera donc aux schémas sous forme conservative qui nous donne cette solution. Nous avons choisi d’en coder deux : le schéma de Lax-Wendroff et le schéma implicite linéarisé sous « forme delta » centré.
6.2.1 Schéma de Lax-Wendroff
Le Schéma de Lax-Wendroff est un schéma explicite d’ordre 2 en espace et 2 en temps. C’est un schéma explicite et conditionnellement stable. Sa formulation est la suivante :
( ) ( )( ) 022 12/112/12
111
=−−−∆∆
−∆−
+∆−
−−++−+
+n
in
ini
ni
ni
ni
ni
ni
ni
ni FFAFFA
xt
xFF
tuu
Avec
+= +
+ 21
2/1
ni
nin
i
uuAA et
+= −
− 21
2/1
ni
nin
i
uuAA
Et 2
21
)( uuF = , )(' uFA =
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
25
Sa condition de stabilité est l’inégalité
1)(' ≤∆∆
xt
uF
On vérifiera cette condition uniquement pour la condition initiale 0u .
6.2.2 Schéma implicite linéarisé sous « forme delta » centré
Le schéma implicite linéarisé sous « forme delta » centré est d’ordre 1 en temps et 2 en espace. Dans le cas linéaire, il est inconditionnellement stable. Il est obtenu à partir de la linéarisation du schéma
02
11
11
1
=∆−
+∆− +
−+
++
xFF
tuu n
in
ini
ni
Sa formulation est la suivante :
( ) ( )ni
ni
ni
ni
ni
ni
ni FF
xt
uAuAxt
u 111111 22 −+−−++ −∆∆
−=∆−∆∆∆
+∆
Avec )(' uFA = .
Elle prend ni
ni
ni uuu −=∆ +1 comme inconnue.
6.3 COMPARAISON DES DEUX SCHEMAS
Pour nos tests de validité, nous avons choisi de présenter un choc et une détente.
6.3.1 Onde de choc
Soient l’intervalle d’espace [0,10] et l’intervalle de temps [0,7].
On considère la condition initiale
>≤
=0100
)(0 xsixsi
xu et les conditions de Dirichlet
0),0( =tu et 1),10( =tu . On sait que pour 10<t la solution physique exacte est définie par :
>≤<
≤
=txsi
txsitx
xsi
txu1
0/
00
),(
Pour 7=t , la solution exacte est :
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
26
0 1 2 3 4 5 6 7 8 9 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Choc : solution exacte à t=7
x
u
Figure 26:Solution exacte pour l'onde de choc
Pour un nombre de points en espace égal à 201 et un nombre de points en temps égal à 301. On obtient les solutions calculées à 7=t avec le schéma de Lax-Wendroff puis par le schéma implicite linéarisé sous « forme delta ».
0 1 2 3 4 5 6 7 8 9 100
0.2
0.4
0.6
0.8
1
1.2
x (à t=7)
u
Hyperbolique non linéaire par Lax-Wendroff: ∆x=0.05 ; ∆ t=0.023333
Figure 27: Choc : Schéma de
Lax-Wendroff à t=7
0 1 2 3 4 5 6 7 8 9 100
0.2
0.4
0.6
0.8
1
1.2
x (à t=7)
u
Hyperbolique non linéaire par Implicite linéarisé sous "forme delta": ∆x=0.05 ; ∆t=0.023333
Figure 28: Choc : Schéma
implicite à t=7
On peut tout d’abord remarquer que les schémas approchent bien la solution exacte. Pour les deux schémas, on remarque des oscillations près de la discontinuité à gauche. Elles sont plus nombreuses avec le schéma implicite « forme delta ». On constate même que la plus grande oscillation a eu lieu avec le schéma implicite « forme delta », le maximum de la fenêtre en ordonnée étant plus élevé.
6.3.2 Onde de détente
Soient l’intervalle d’espace [0,10] et l’intervalle de temps [0,7].
On considère la condition initiale
>≤
=0100
)(0 xsixsi
xu et les conditions de Dirichlet
0),0( =tu et 1),10( =tu . On sait que pour 10<t la solution physique exacte est définie par :
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
27
>≤<
≤
=txsi
txsitx
xsi
txu1
0/
00
),(
Pour 7=t , la solution exacte est :
0 1 2 3 4 5 6 7 8 9 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
x
u
Détente : solution exacte à t=7
Figure 29: Solution exacte pour l'onde de détente pour t=7
Pour un nombre de points en espace égal à 201 et un nombre de points en temps égal à 301. On obtient les solutions calculées à 7=t avec le schéma de Lax-Wendroff puis par le schéma implicite linéarisé sous « forme delta ».
0 1 2 3 4 5 6 7 8 9 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
x (à t=7)
u
Hyperbolique non linéaire par Lax-Wendroff: ∆x=0.05 ; ∆ t=0.023333
Figure 30:Détente : Schéma
Lax-Wendroff à t=7s
0 1 2 3 4 5 6 7 8 9 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
x (à t=7)
u
Hyperbolique non linéaire par Implicite linéarisé sous "forme delta": ∆x=0.05 ; ∆ t=0.023333
Figure 31: Détente : Schéma
implicite à t=7s
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
28
Figure 32: Détente : Schéma
de Lax-Wendroff en fonction du temps
Figure 33: Détente : Schéma
implicite en fonction du temps
Nous voyons que les deux schémas approchent la solution exacte. Le schéma de Lax-Wendroff donne un meilleur résultat numérique car l’approximation qu’il donne est moins diffusive que celle du schéma implicite autour de 7=x . Cependant n’oublions pas que Lax-Wendroff est conditionnellement stable : si on remplace le nombre de points en temps par 31, ce schéma est instable alors que le schéma implicite linéarisé sous « forme delta » donne encore une solution, malheureusement celle-ci est très diffusée autour de 7=x :
0 1 2 3 4 5 6 7 8 9 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
x (à t=7)
u
Hyperbolique non linéaire par Implicite linéarisé sous "forme delta": ∆x=0.05 ; ∆t=0.23333
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
29
7. TESTS DE CONVERGENCE ET DE VALIDITE: VERIFICATION DES RESULTATS THEORIQUES POUR LA
CONVECTION DIFFUSION DISSIPATION
Afin de vérifier l’exactitude des résultats de convergence énoncés pour les différents schémas numériques, nous avons effectué des tests de convergence. La présentation de la totalité des tests de convergence effectués pour l’ensemble des schémas de chaque équation serait fastidieuse et d’un intérêt relatif. Nous avons donc choisi de présenter ici les tests de convergence de trois schémas numériques de l’équation de convection-diffusion-dissipation : Crank-Nicholson centré, de Crank-Nicholson décentré et Implicite centré. Ces trois schémas présentent des propriétés de convergence différentes : le schéma de Crank-Nicholson centré est d’ordre 2 en temps et 2 en espace, le schéma de Crank-Nicholson décentré est d’ordre 2 en temps et 1 en espace et le schéma implicite centré et d’ordre 1 en temps et 2 en espace.
7.1 TESTS DE LA CONVERGENCE EN ESPACE
Pour tester la convergence en espace des solutions, nous avons choisi des équations dont la solution est stationnaire pour que l’erreur mesurée soit due uniquement à une approximation de la solution en espace. On se place sur les intervalles [0,100] en temps et [0,10] en espace. A partir de la solution )cos(10),( xtxu = que nous souhaitions obtenir, nous avons déduit la condition initiale )cos(10)0,( xxu = et les conditions de Dirichlet : 10),0( =tu et )10cos(10),10( =tu . Donc pour le problème
]100,0[]10,0[),(
)10cos(10),10(10),0(
)cos(10)0,(
),(2
×∈
===
=+∂−∂−∂
tx
tutu
xxu
txfuuuu xxxt
on obtient pour que u soit solution ))sin()(cos(20),( xxtxf += . Fixons 2=∆t (c’est-à-dire le nombre de points en temps est fixé à 51).
Pour les 12,,0,21
K==∆ ixi
(c’est-à-dire les nombres de points en espace sont
12,,0,1210 K=+× ii ), on effectue le calcul de la solution approchée par les schémas de Crank-Nicholson centré, de Crank-Nicholson décentré et Implicite centré. On calcule ensuite l’erreur : n
jnj
nj
utxu −==
),(max50,,010,,0
KK
où les ),( nj tx sont les points
communs à chaque maillage : les points d’espaces considérés quel que soit le pas d’espace sont donc les points 0,1,…,10.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
30
-8 -6 -4 -2 0-16
-14
-12
-10
-8
-6
-4
-2
0
log(∆x)
log(
erre
ur)
avec ∆t constant : Crank-Nicholson centré
-8 -6 -4 -2 0-16
-14
-12
-10
-8
-6
-4
-2
0
log(∆x)
log(
erre
ur)
avec ∆ t constant : Crank-Nicholson décentré
-8 -6 -4 -2 0-16
-14
-12
-10
-8
-6
-4
-2
0
log(∆x)
log(
erre
ur)
avec ∆t constant : Implicite centré
-6 -4 -2 0-14
-12
-10
-8
-6
-4
-2
0
log(∆t)
log(
erre
ur)
avec ∆x constant : Crank-Nicholson centré
-6 -4 -2 0-14
-12
-10
-8
-6
-4
-2
0
log(∆t)
log(
erre
ur)
avec ∆x constant : Crank-Nicholson décentré
-6 -4 -2 0-14
-12
-10
-8
-6
-4
-2
0
log(∆t)
log(
erre
ur)
avec ∆x constant : Implicite centré
Figure 34 : convergence
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
31
On trace ensuite les trois graphes )log( erreur en fonction )log( x∆ . Les points semblent alignés. On calcule le coefficient directeur de la droite aux moindres carrés pour chacun des trois cas par la commande polyfit de Matlab. On obtient les résultats suivants :
2.0029130.9755002.002027
--
directeurtcoefficien
centréImplicitedécentréNicholsonCrankcentréNicholsonCrank
On sait que le schéma de Crank-Nicholson centré et le schéma implicite centré sont d’ordre 2 en espace et le schéma de Crank-Nicholson décentré est d’ordre 1 en espace. Les résultats obtenus sont donc proches des résultats attendus.
7.2 TEST DE LA CONVERGENCE EN TEMPS
Suivant le même principe que précédemment, nous avons choisi une solution exacte ne dépendant pas de x : )cos(10),( ttxu = . Le problème de convection-diffusion-dissipation obtenu est le suivant :
===
−=+∂
)cos(10),10()cos(10),0(
10)0,())sin()(cos(10
ttuttu
xuttuut
Fixons 2,0=∆x (c’est-à-dire le nombre de points en espace est fixé à 51).
Pour les 10,,0,21
K==∆ iti
(c’est-à-dire les nombres de points en temps sont
10,,0,1210 K=+× ii ), on obtient les erreurs. On trace ensuite les trois graphes )log( erreur en fonction )log( t∆ (colonne 2). Les points semblent alignés. On calcule
le coefficient directeur de la droite aux moindres carrés pour chacun des trois cas par la commande polyfit de Matlab. On obtient :
0.97986572.0024632.002464
--
directeurtcoefficien
centréImplicitedécentréNicholsonCrankcentréNicholsonCrank
Ces résultats sont proches des résultats théoriques, les schémas de Crank-Nicholson étant d’ordre 2 en temps et le schéma Implicite centré étant d’ordre 1 en temps.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
32
Les tests précédents ont été réalisés pour des coefficients constants et des solutions ne dépendant que d’une variable. Il est donc important de réaliser des tests supplémentaires pour prouver la validité des schémas choisis. De même qu’il aurait été fastidieux de faire apparaître ici tous les tests de convergence effectués, il serait long de faire apparaître les tests de validité de tous les schémas implémentés. Nous proposons donc ici le résultat du test de validité du schéma de Crank-Nicholson centré pour l’équation de convection-diffusion-dissipation qui est la plus générale.
7.3 CAS DE COEFFICIENTS NON CONSTANTS
Soient l’intervalle de temps [0,10] et l’intervalle d’espace [0,10]. On souhaite montrer l’exactitude du schéma pour une équation à coefficients non constants dont la solution exacte serait )cos()cos(),( txtxu = .
On choisi comme coefficients 25.0=a , )cos()5()( xxxxv −= et 23)( xxc = . u doit donc être solution du problème
]10,0[]10,0[),(
)cos()10cos(),10()cos(),0()cos()0,(
),(3)cos()5(25.0 22
×∈
===
=+∂−+∂−∂
tx
xtuttuxxu
txfuxuxxxuu xxxt
Pour cela, il suffit qu’on ait )cos()sin()cos()5()cos()cos()325.0()sin()cos(),( 2 txxxxtxxtxtxf −−++−= .
Pour tester la validité du schéma, nous regardons la valeur de l’erreur entre la solution approchée et la solution exacte pour un nombre de points en espace égal à 3001 et un nombre de points en temps égal à 2001. On obtient 7
2000,,03000,,0
1057024.8),(max −
==
×=−= njnj
nj
utxuerreurKK
.
7.4 TEST DE STABILITE
Les schémas numériques correspondant à un problème parabolique bien posé doivent vérifier un résultat fondamental de stabilité. On définie l’erreur discrète par
)(., nnh
nh tuue −=
où nhu est l’approximation de la solution exacte u par le schéma numérique choisi au
temps nt . On définie n
hε par :
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
33
( )),(),(2
2),(),(
2),(),(
2
),(),(2),(),(),(2),(2
),(),()(
21
1
111
11
1
211
2
11
111
11
ni
ni
i
ni
ni
ni
nim
ni
ni
ni
ni
ni
ni
ni
nin
in
ini
txutxuc
xtxutxu
xtxutxuv
xtxutxutxu
xtxutxutxua
ttxutxu
ff
+−
∆−
+∆−
−
∆
+−+
∆+−
+∆−
−−=∈
+
−++
−+
+
−++
−++
+
++
Pour assurer la stabilité du schéma, on souhaite vérifier l’inégalité :
tempsenpointsdenombrelenbtetnbtnteen
k
khh
nh 1,,1,
1
0
0 −=∆+≤ ∑−
=
Kε
qui est la condition qui correspond au schéma de Crank-Nicholson centré que nous avons choisi d’étudier. On considère le problème
]10,0[]10,0[),(
)cos()10cos(),10()cos(),0()cos()0,(
)cos()sin()cos()cos(2)sin()cos(2
×∈
===
−+−=+∂+∂−∂
tx
xtuttuxxu
txtxtxuuuu xxxt
Sa solution exacte est )cos()cos(),( txtxu = . On calcule alors pour tout n : n
jnjnbxj
nh utxue −=
−=),(max
1,,0 K et
∑∑−
=−=
−
=
∆=∆1
01,,0
1
0
maxn
k
kj
nbxj
n
k
kh tt εε
K.
On a 00 =he .
On trace en fonction de n la différence nh
n
k
kh et −
∆ ∑
−
=
1
0
ε , ce que l’on appellera
erreurborne − dans les graphes. Cette courbe doit rester positive. C’est ce que l’on vérifie dans les graphes pour 2001=nbx et 2001=nbt , puis pour 5001=nbx et
1001=nbt (avec nbx le nombre de points en x).
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
34
0 200 400 600 800 1000 1200 1400 1600 1800 20000
0.5
1
1.5
2
2.5
3
3.5x 10
-5 borne-erreur: la courbe doit etre positive
indice du temps de 0 à 2000
Figure 35
0 100 200 300 400 500 600 700 800 900 10000
1
2
3
4
5
6x 10
-5 borne-erreur: la courbe doit etre positive
indice du temps de 0 à 1000
Figure 36
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
35
REFERENCES
Nous avons principalement utilisé le cours d’équations aux dérivées partielles dispensé à l’ENSIMAG.
Rapport de projet de calcul scientifique de deuxième année ENSIMAG Vassilissa Lebacque et Didier Hébert
36
TABLE DES ILLUSTRATIONS
Figure 3: Condition initiale à dérivée non continue ................................................................... 8 Figure 4: Explicite décentré ....................................................................................................... 9 Figure 5: Lax-Friedriech .......................................................................................................... 10 Figure 6: Crank-Nichoson Décentré ........................................................................................ 10 Figure 7: Lax-Wendroff ........................................................................................................... 10 Figure 8: Leap- Frog ................................................................................................................ 10 Figure 9: Crank-Nicholson centré ............................................................................................ 11 Figure 10: Condition Initiale .................................................................................................... 11 Figure 11: Explicite décentré ................................................................................................... 12 Figure 12: Lax-Friedrich.......................................................................................................... 12 Figure 13: Lax-Wendroff ......................................................................................................... 12 Figure 14: Leap Frog................................................................................................................ 12 Figure 15:Crank-Nicholson Décentré ...................................................................................... 13 Figure 16:Crank-Nicholson Centré .......................................................................................... 13 Figure 17: Implicite .................................................................................................................. 13 Figure 18: Condition Initiale .................................................................................................... 15 Figure 19: Résultat de tous les schémas avec 25 images ......................................................... 16 Figure 20: Coefficient de diffusion.......................................................................................... 18 Figure 21: Crank-Nicholson..................................................................................................... 19 Figure 22: Crank-Nicholson centré .......................................................................................... 19 Figure 23: Implicite Centré ...................................................................................................... 19 Figure 24: Implicite pour t=10 ................................................................................................. 19 Figure 25: Schéma explicite ..................................................................................................... 22 Figure 26:Schéma implicite semi- linéaire................................................................................ 22 Figure 27:Schéma implicite Newton........................................................................................ 23 Figure 32:Solution exacte pour l'onde de choc ........................................................................ 26 Figure 33: Choc : Schéma de Lax-Wendroff à t=7 .................................................................. 26 Figure 34: Choc : Schéma implicite à t=7................................................................................ 26 Figure 35: Solution exacte pour l'onde de détente pour t=7..................................................... 27 Figure 36:Détente : Schéma Lax-Wendroff à t=7s .................................................................. 27 Figure 37: Détente : Schéma implicite à t=7s .......................................................................... 27 Figure 38: Détente : Schéma de Lax-Wendroff en fonction du temps..................................... 28 Figure 39: Détente : Schéma implicite en fonction du temps .................................................. 28 Figure 40 : convergence ........................................................................................................... 30 Figure 41 .................................................................................................................................. 34 Figure 42 .................................................................................................................................. 34