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