l`étrange attracteur de Lorenz

Transcription

l`étrange attracteur de Lorenz
Applications des mathématiques:
Météorologie et chaos : l’étrange
attracteur de Lorenz
Mathématiques
Appliquées et
Génie Industriel
Résumé
Dans cet exemple, nous étudions un modèle mathématique proposé
par le météorologue E. Lorenz, pour modéliser certains phénomènes
météorologiques. Nous utilisons une approche analytique, puis une
approche numérique pour obtenir l’ensemble des solutions de ce
modèle.
Domaines du génie
Tous
Notions mathématiques
Matrice Jacobienne, Méthode de Runge-Kutta d’ordre 4, Vecteurs
et valeurs propres, Stabilité
Cours pertinents
Calcul Scientifique pour ingénieur, Équations différentielles
Auteur(es)
S. Dufour
Sommaire
1 Introduction
2
2 Modélisation
2
3 Résolution analytique
2
4 Résolution numérique
5
5 Interprétation des résultats
7
6 Conclusion
9
Références
9
MAGI
L’étrange attracteur de Lorenz
1
Introduction
Edward Lorenz (1917-2008), météorologue au Massachusetts Institute of Technology, a développé un
modèle météorologique basé sur l’étude de la convection dans l’atmosphère (du chaud vers le froid). La
différence entre la température de la Terre et celle de l’atmosphère crée des courants convectifs qui ont
pour effet d’influencer les phénomènes météorologiques.
froid
chaud
l’atmosphère
La Terre
(une sphère parfaite)
Figure 1: Convection dans l’atmosphère terrestre.
2
Modélisation
Lorenz a proposé en 1963 un modèle mathématique simplifié, basé sur les équations de Boussinesq, qui
peut être exprimé sous la forme d’un système de trois équations différentielles d’ordre 1 :

0

y
(t)
=
σ
y
(t)
−
y
(t)

2
1
 1
y20 (t) = r y1 (t) − y2 (t) − y1 (t)y3 (t)


 y 0 (t) = y (t)y (t) − by (t)
3
1
2
3
avec les conditions initiales (y1 (0), y2 (0), y3 (0))T = (y1,0 , y2,0 , y3,0 )T . Les paramètres σ , r et b sont connus.
Lorenz utilisa comme valeurs σ = 10 pour le nombre de Prandtl, r = 28 pour le nombre de Rayleigh
et b = 83 pour un paramètre associé à la géométrie du problème. Les variables dépendantes sont y1 ,
l’intensité des mouvements de convection, y2 , l’écart de température entre les courants ascendants et
descendants et y3 , la distortion du profil vertical de température par rapport à un profil linéaire.
3
Résolution analytique
Puisque ce système d’équations différentielles est non linéaire, nous ne pouvons le résoudre de façon
analytique. Pour être en mesure d’étudier ce système dynamique, nous devons le linéariser autour de ses
points critiques. Un système d’équations différentielles peut s’écrire sous la forme générale :
E y ).
yE0 = F(E
2
L’étrange attracteur de Lorenz
MAGI
E ou autrement dit, pour
Les points critiques yEcr = (y1cr , y2cr , y3cr )T de ce système sont tels que yE0 = 0,
l’exemple du modèle de Lorenz :

cr
cr
cr

 f 1 (Ey ) = σ (y2 − y1 ) = 0
f 2 (Ey cr ) = r y1cr − y2cr − y1cr y3cr = 0


f 3 (Ey cr ) = y1cr y2cr − by3cr = 0.
Les points critiques correspondent à des solutions yE(t) = yEcr c’est à dire un état d’équilibre entre
les différents phénomènes physiques qui gouvernent le comportement du système. Le calcul des points
E Pour le
E y ) = 0.
critiques revient donc à résoudre un système d’équations algébriques non linéaires : F(E
problème de Lorenz, les points critiques,
√ analytique dans ce cas, sont
√ qui√peuvent être calculés√de façon
donnés par P1 = (0, 0, 0), P2 = (+6 2, +6 2, 27) et P3 = (−6 2, −6 2, 27).
On peut exprimer la variation de la solution autour d’un point critique 1Ey (t) = yE(t) − yEcr à l’aide d’un
système d’équations différentielles linéaires :


 0  
∂ f 1 (Ey cr )
∂ f 1 (Ey cr )
∂ f 1 (Ey cr )
1y1 (t)
1y1 (t)
y1
∂ y2
∂ y3


 0   ∂ f2∂(E
1y2 (t) =  y cr ) ∂ f2 (Ey cr ) ∂ f2 (Ey cr )  1y2 (t) ,
∂
y
∂
y
∂
y

  1cr


2
3
∂ f 3 (Ey cr )
∂ f 3 (Ey cr )
∂ f 3 (Ey )
1y
(t)
1y30 (t)
3
∂y
∂y
∂y
1
2
3
E y ) (pour les fonctions de plusieurs variables)
qui provient du développement de Taylor d’ordre 2 de F(E
autour du point critique. On retrouve la matrice jacobienne J (Ey cr ) dans ce système d’E.D.O. linéarisé.
Pour le modèle de Lorenz, on obtient :


−σ
σ
0


1Ey 0 (t) = r − y3cr −1 −y1cr  1Ey (t).
y2cr
y1cr
−b
De la théorie des équations différentielles (cf. cours MTH1115), nous savons que la solution d’un système
linéaire est donnée par
3
X
1Ey (t) =
ci vEi eλi t ,
i=1
où les λi sont les valeurs propres de la matrice jacobienne J (Ey cr ) et les vEi sont les vecteurs propres
associés.
Nous savons, de la théorie des systèmes d’équations différentielles linéaires, que la distribution de ces
valeurs propres nous indique le comportement local (autour des points critiques) du système dynamique.
Par exemple, pour le point critique P1 , les valeurs propres sont réelles et de signes opposés, ce qui indique
la présence d’un col, tel qu’illustré par le plan de phase de la figure 2.
3
MAGI
x2(t)
L’étrange attracteur de Lorenz
y!(t)
x1(t)
y"(t)
Figure 2: Plan de phase du modèle de Lorenz, autour de P1 (col).
Donc, le point critique P1 est instable, c’est à dire quelque soit la condition initiale choisie autour de P1 ,
les trajectoires s’éloigneront de celui-ci (sauf dans le cas où on se retrouve dans la direction du vecteur
propre associé à la valeur propre négative).
x2(t)
Pour ce qui est des points critiques P2 et P3 , nous avons des valeurs propres complexes conjugées dont
la partie réelle est positive, ce qui indique que les trajectoires forment des spirales qui s’éloignent de ces
points critiques donc elles sont aussi instables, tel qu’illustré par le plan de phase de la figure 3.
y!(t)
x1(t)
y"(t)
Figure 3: Plan de phase de modèle du Lorenz, autour de P2 et P3 (spirale).
Cette approche nous permet donc de comprendre la dynamique du système d’équations différentielles
dans le voisinage de ses points critiques. Nous savons que les trois points critiques sont instables. Donc,
quelque soit la condition initiale choisie, les trajectoires s’éloigneront des points critiques. Nous ne
pouvons cependant pas en dire plus à l’aide de cette analyse.
4
L’étrange attracteur de Lorenz
4
MAGI
Résolution numérique
Comme alternative à la linéarisation du système d’équations différentielles, nous allons plutôt discrétiser
le problème. Pour ce faire, plutôt que de chercher une approximation de yE(t) pour tout t, nous allons
représenter le temps comme une variable discrète, c’est à dire définie en un nombre dénombrable de
points : t = t0 , t1 , t2 , t3 , ... Pour simplifier notre étude, nous allons supposer que les ti sont équidistants.
L’écart entre deux valeurs de t, h = ti+1 − ti , est le pas de temps. Notre but sera donc de calculer, pour
yE(t0 ) donné (les conditions initiales), une approximation numérique de yE(ti ) pour i = 1, 2, 3, ...
Afin d’être en mesure d’utiliser une méthode numérique pour obtenir une approximation de la solution
du système d’équations différentielles
E y ),
yE0 = F(E
E y ). Dans le cas du modèle de Lorenz, cette
nous devons créer une fonction Matlab contenant F(E
fonction peut s’écrire :
function f = eqnlorenz(t,y)
f = zeros(size(y),1);
sigma = 10;
r
= 28;
b
= 2.6666667;
f(1) = sigma*(y(2) - y(1));
f(2) = r*y(1) - y(2) - y(1)*y(3);
f(3) = y(1)*y(2) - b*y(3);
Nous sommes maintenant en mesure d’utiliser un algorithme numérique pour étudier le modèle de Lorenz.
Nous utiliserons la méthode de Runge-Kutta d’ordre 4, définie précédemment dans une fonction :
>> [t,y] = rk4(’F’,t0,[y01 y02 y03],h,n,’resul.dat’,impr);
E y ), t0 est le temps initial, [y01 y02 y03]
où F est le nom de la fonction Matlab qui contient F(E
contient les conditions initiales pour chaque variable, h est le pas de temps et n est le nombre de pas
de temps. Comme arguments en sortie, on a t qui est un vecteur qui contient les valeurs des ti et y est
la matrice qui contient la solution discrète yEi ' yE(ti ).
Nous allons reprendre les étapes utilisées par Lorenz lorsqu’il étudia ce système d’équations. À l’aide des
commandes Matlab :
>> [t1,y1] = rk4(’eqnlorenz’,80,[-2.4881258 1.5045223 26.865757],0.01,2000,’resul.dat’,200);
>> traceqd(t1,y1,’rk4’,[1 2 3],2000);
>> grid
Nous pouvons observer la complexité de la solution de ce système d’équations différentielles à la figure 4,
qui peut paraı̂tre surprenante étant donné la simplicité du modèle. On peut y voir les trajectoires des
trois variables dépendantes du modèle.
5
MAGI
L’étrange attracteur de Lorenz
Resolution d’equations differentielles
Methode de Runge!Kutta d’ordre 4
50
40
30
20
Solution y
y3
10
0
y1
!10
y2
!20
!30
80
82
84
86
88
90
92
94
96
98
100
t
Solution numerique: !o!
Figure 4: Trajectoires de la solution yE(t).
Lorenz affichait à la porte de son bureau les «prévisions météorologiques» données par son modèle, ce
qui intéressait et amusait la communauté de son département. Les gens tentaient de prévoir ce que le
modèle donnerait le lendemain, mais ils étaient toujours déjoués. Le modèle ne pouvait prévoir la météo,
mais il pouvait représenter une diversité de phénomènes météorologiques comparable à ce qu’on peut
observer dans la nature.
Lorenz fut victime d’une panne d’ordinateur, qui étaient courantes à l’époque. Étant habitué à voir ses
exécutions interrompues, il sauvegardait les solutions calculées dans un fichier à chaque pas de temps. Il
pouvait alors redémarrer ses exécutions en utilisant la dernière solution calculée comme condition initiale.
Pour sauver de l’espace disque, il n’écrivait que 4 chiffres après la virgule, alors que son ordinateur en
utilisait plus pour faire ses calculs.
Afin de s’assurer que tout se déroulait bien lors d’un redémarrage, il ne reprenait pas ses calculs à partir
du dernier pas de temps à sa disposition, mais il remontait en arrière de plusieurs pas de temps. Son
idée était de comparer les premiers pas de temps calculés aux derniers pas de temps disponibles avant
la panne, afin de s’assurer que tout fonctionnait bien.
>> [t2,y2] = rk4(’eqnlorenz’,80,[-2.4881 1.5045 26.865],0.01,2000,’resul.dat’,200);
>> traceqd(t2,y2,’rk4’,[1 2 3],2000);
>> grid
La figure 5 illustre les trajectoires de la solution du système.
6
MAGI
L’étrange attracteur de Lorenz
Resolution d’equations differentielles
Methode de Runge!Kutta d’ordre 4
50
40
30
Solution y
20
y3
10
y2
y1
0
!10
!20
!30
80
82
84
86
88
90
92
94
96
98
100
t
Solution numerique: !o!
Figure 5: Trajectoires de la solution yE(t), après redémarrage.
Nous allons maintenant comparer les deux approximations.
5
Interprétation des résultats
Il est difficile de comparer cette approximation avec la précédente sans superposer les courbes. Utilisons
la commande plot pour comparer y1 (t) avant et après la panne :
>> plot(t1,y1(:,1),t2,y2(:,1))
On peut observer le résultat de cette commande Matlab à la figure 6.
20
15
10
5
0
!5
!10
!15
!20
80
85
90
95
100
105
Figure 6: Comparaison de yE1 (t), avant et après la «panne».
7
MAGI
L’étrange attracteur de Lorenz
On peut voir que pour les premiers pas de temps, les deux trajectoires sont superposées. Mais pour
des valeurs de ti plus grandes, les trajectoires s’éloignent pour se comporter de façon complètement
différente après quelques pas de temps. La première réaction de Lorenz fut de penser qu’il avait fait une
erreur. Mais après avoir tout vérifié, il dut trouver une autre explication.
Cette expérience mena à ce qu’on connait aujourd’hui sous le nom de théorie du chaos. Ces systèmes
chaotiques sont liés à des systèmes d’équations différentielles non linéaires. Pour certains paramètres,
ces systèmes ont comme particularité d’être très sensibles aux petites variations des conditions initiales.
C’est ce qui est arrivé pour le problème de Lorenz. La petite perturbation introduite par le stockage des
solutions avec moins de chiffres significatifs fut suffisante pour donner une dynamique complètement
différente. Cette grande complexité du modèle de Lorenz peut être illustrée en traçant les trajectoires de
la solution dans l’espace (y1 , y2 , y3 ), nommé espace des phases. À l’aide des commandes Matlab :
>> plot3(y1(:,1),y1(:,2),y1(:,3))
>> xlabel(’y1’),ylabel(’y2’),zlabel(’y3’)
on peut illustrer l’attracteur de ce système dynamique (cf. figure 7).
45
40
35
y3
30
25
20
15
10
5
50
0
!50
y2
!20
!15
!10
!5
0
5
10
15
20
y1
Figure 7: L’attracteur étrange de Lorenz.
D’abord, on retrouve le col et les spirales des points critiques que l’on avait calculé lors de l’analyse
linéaire du système dynamique, à la section précédente. On a cependant un point de vu global de la
dynamique de ce système dynamique, qui est beaucoup plus complexe que ce qu’on aurait pu croire
initialement.
On peut aussi comprendre pourquoi ce système dynamique est très sensible aux petites variations des
conditions initiales. En effet, si on se réfère à la figure 7, en se déplaçant un peu à gauche, à droite, en haut
ou en bas, on se retrouve sur une trajectoire qui nous mènera soit vers la boucle de gauche ou de droite
dans la figure 7 soit dans une direction complètement différente dans cet espace des phases. Ça explique
pourquoi, qu’en ne stockant que 4 chiffres plutôt que 8, on observe un comportement complètement
différent. C’est ce que les spécialistes des systèmes chaotiques ont baptisés l’effet papillon, c’est à dire
le battement des ailes d’un papillon au Brésil peut déclencher une tornade au Texas.
8
L’étrange attracteur de Lorenz
6
MAGI
Conclusion
Lorenz proposa un modèle mathématique pour modéliser certains phénomènes météorologiques. Dans
cet exemple, nous avons résolu ce modèle, d’abord d’une manière analytique, puis à l’aide d’une méthode
numérique. Nous avons ensuite comparé ces deux méthodes, s’apercevant qu’on retrouvait les résultats
de la méthode analytique dans l’ensemble plus grand des solutions de la méthode numérique. On a ainsi
retrouvé le célèbre ensemble découvert par Lorenz, l’étrange attracteur de la figure 7.
Références
[1] Fortin, A. Analyse numérique pour ingénieurs. Éditions de l’École Polytechnique de Montréal,
Montréal, 1996. POLY : TA 335 F67 1995.
[2] E.N. Lorenz. Deterministic nonperiodic flow. Journal of Atmospheric Sciences, Massachusetts Institute of Technology, Vol. 20, p130-141, 1963
9