mercredi 12 octobre 2016

billard de Sinaï

    Le mathématicien Français Jean-Christophe Yoccoz est décédé le 3 septembre 2016. C'était un spécialiste des systèmes dynamiques et il avait reçu la médaille Fields en 1994  pour ses travaux sur le sujet. Ce domaine de recherche est assez jeune puisqu'on considère  que c'est Henri Poincaré qui a ouvert la voie avec ses travaux sur le problème des trois corps, mais il englobe beaucoup d'autres exemples comme celui des billards. Dans la version la plus simple  un billard est juste un domaine compact du plan (par exemple un polygone) contenant éventuellement des obstacles dans lequel se déplace une particule  animée d'un mouvement uniforme et rebondissant sur les bords . Un des exemples les plus célèbre est le billard de Sinaï  qui modélise  le comportement d'un gaz  parfait et permet de mettre en évidence  les propriétés des billards dispersifs :

      une trajectoire dans un billard de Sinaï

      Billard dispersif


      Un billard de Sinaï est composé d'un domaine carré  au centre duquel se trouve un obstacle (disque rouge). Il s'agit de la modélisation la plus simple d'un gaz homogène occupant tout l'espace 2D :

      • le gaz homogène peut être vu comme un réseau périodique d'obstacles , chaque molécule est représenté par un obstacle, sur laquelle va rebondir notre particule, chaque carré correspond au motif périodique du réseau
      • le rebond (fictif) d'une particule  sur le bord du domaine correspond exactement  au déplacement de celle-ci dans le réseau des obstacles modulo une symétrie du motif périodique, 
      Sur la figure ci-dessus on peut se rendre compte que le premier rebond sur le bord supérieur (en bleu) peut être vu à une symétrie près comme la continuation de la trajectoire rectiligne dans le motif suivant, puis de même, la trajectoire après le deuxième rebond (en vert) sur le bord gauche  correspond à continuation de la trajectoire dans la cellule gauche ramenée dans la cellule de départ par une symétrie d'axe ce bord gauche .... c'est ce qui permet de ramener le problème à un domaine fini.


      Les rebond sur le bord extérieur et sur l'obstacle n'ont donc pas le même statut :  autant le bord extérieur du domaine sert à confiner le mouvement  à l'intérieur du domaine, autant l'obstacle va pousser la particule à explorer l'ensemble du domaine  c'est ce qui donne son  caractère "dispersif" au billard de Sinaï (illustré par la première simulation). Pour produire mes simulations  j'ai utilisé les mêmes programmes que dans mon billet sur les billards polygonaux. La  différence  ici est qu'on  peut grandement simplifier l'écriture de la fonction detecte_collision qui calcule les "chocs" contre les bords et l'obstacle :
      • le bord extérieur est un carré délimité par les droites $x=\pm 2$ et $y=\pm 2$  il suffit juste de tester  si $\vert x\vert >2$ ou $\vert y\vert>2$ pour détecter une collision. La modification de vitesse  consiste alors à changer une des coordonnées (en x ou en y suivant le bord rencontré) en son opposé
      • l'obstacle est un disque de rayon 1 centré à l'origine, il suffit donc de tester  si $x^2+y^2<1$ pour détecter une collision, le vecteur position de la collision est alors  un vecteur normal à l'obstacle  qui permet de calculer  le changement de vitesse 
      c'est ce qui permet de réécrire la fonction detecte_collision adaptée à ce billard et qui renvoie la position X=(X(1),X(2)) du choc  et le segment [A,B] qui sert au calcul du rebond de la particule

      function [X,A,B]=detecte_collision(M,V,dt)
          // X = point de collision
          // A,B= bord du segment où à lieu la collision
          M=M(:),V=V(:) // on remet les vecteurs position et vitesse en colonne
          seuil=0.1*dt*sqrt(sum(V.^2))
          X=M+V*dt//on avance
          if or(abs(X)>2) then // collision sur le carré
              i=find(abs(X)>2)
              if length(i)>1 then //cas spécial collision dans un coin
                 X=round(X)
                 U=[-X(2); X(1)]/4
                 A=X-U*dt
                 B=X+U*dt
              else // i=1 collision sur un bord
                  if i==1 then // bord gauche ou droit =>changer vitesse en X
                      s=(round(X(1))-X(1))/(V(1)*dt)
                      X=X+s*V*dt
                      A=[round(X(1)), -2]
                      B=[round(X(1)), 2]
                  else //bord supérieur/inférieur =>changer vitesse en Y
                      s=(round(X(2))-X(2))/(V(2)*dt)
                      X=X+s*V*dt
                      A=[-2, round(X(2))]
                      B=[2, round(X(2))]
                  end
              end
          elseif sum(X.^2)<1 then //collision  avec le disque
              // revenir au point de contact
              // résoudre trinôme |X+sVdt|^2=1
              Delta=(4*sum(X.*V)^2-4*sum(V.^2)*(sum(X.^2)-1))
              s=(-2*sum(X.*V)-sqrt(Delta))/(2*sum(V.^2)*dt)
              X=X+s*V*dt
              //X=X/sqrt(sum(X.^2))
              U=[-X(2); X(1)]
              A=X-U*dt
              B=X+U*dt
              else A=[],B=[]  // pas de collision détectée
          end
      endfunction

      Billards  chaos et hypothèse ergodique


      Une des propriétés essentielle des billards dispersifs est leur comportement chaotique et donc difficilement prévisible sur de longues durées. Dans le cas du billard de Sinaï c'est du à la présence de l'obstacle central. En effet lors d'un rebond sur l'obstacle (qui est rond) deux trajectoires très proches vont forcément avoir tendance à diverger. Un très léger décalage de position (ou de vitesse) va donc très rapidement s'amplifier et au bout de quelques itérations  les deux trajectoires n'auront plus du tout la même apparence. Il est donc totalement illusoire d'essayer de simuler exactement un tel système dynamique, car la simple erreur d'arrondi sur les données initiale vous assure que la trajectoire simulée  sera très différente de la trajectoire réelle. C'est la raison pour laquelle dans l'étude des systèmes dynamiques on s'intéresse surtout à des propriétés statistiques du système sur de longue durées (moyennes liées à la position de la particule par exemple). Pour s'en rendre compte il suffit de simuler  deux trajectoires  avec une toute petite différence de position au départ : dans un premier temps les trajectoires semblent identique, mais rapidement leurs comportement  divergent totalement.



      Mais quand on réfléchi un peu, même si ces deux trajectoires sont différentes, elles ont quand même en commun de sembler très complexes  et d'explorer l'ensemble du domaine d'une manière assez complète mais très aléatoire.  Cette propriété qu'une trajectoire va forcément visiter chaque point (ou au moins tout voisinage de chaque point) est appelée l' ergodicité  du système dynamique.  C'est elle  qui justifie l'approche utilisée en physique statistique pour décrire les propriétés macroscopiques d'un gaz  à partir des lois microscopiques mais sans décrire les trajectoires de chaque particule du gaz . En effet lorsqu'un système d'évolution possède cette propriété  on imagine bien  que faire la moyenne temporelle  d'une quantité f associée à une particule (vitesse, énergie, ...) le long de sa trajectoire $\Phi_t(x)$ (pour une suite de mesure aux temps $(t_k)_{k=0,1,\dots}$ ) doit revenir au même que de faire la moyenne à un instant donné sur toute les particules de cette même quantité :

      $$\overline {f(x_{0})}\ =
      \underbrace{\ \lim _{{n\rightarrow +\infty }}\ {\frac  {1}{n}}\ \sum _{{k=0}}^{{n-1}}\ f\left(\Phi_{t_k}(x_{0})\right)}_\text{moyenne temporelle}=\underbrace{\ {\frac  {1}{\mu (\Omega)}}\ \int _{\Omega}f\,d\mu }_\text{moyenne spatiale}=\langle \ f\ \rangle \;\;ppt- x_0\in\Omega$$


       Il faut quand même remarquer que dans ce cas particulier,  il est possible de  créer des trajectoires périodiques comme la trajectoire en forme de carré ci-dessous. Cependant ce type de trajectoire  est vraiment exceptionnel, car si on la perturbe un tout petit peu on retrouve rapidement une trajectoire  qui semble explorer tout le domaine .

      Cela explique qu'en théorie des systèmes dynamique  on ne cherche pas vraiment a montrer l'ergodicité  pour toutes les trajectoires possibles mais avec une probabilité de 1 (soit pour "presque toute" les trajectoire), les autres cas étant de probabilité nulle. C'est Iakov Sinaï  qui le premier à montré l'ergodicité du billard qui porte son nom . Si le sujet  vous intéresse je vous conseille vivement de regarder cette conférence de Jean-Christophe Yoccoz qui m'a inspiré ce billet:


      Jean-Christophe Yoccoz - "Billards" from Soc. Mathématique de France on Vimeo.

      Aucun commentaire:

      Enregistrer un commentaire

      Pour écrire des formules mathématiques vous pouvez utiliser la syntaxe latex en mettant vos formules entre des "dollars" $ \$....\$ $ par exemple :
      - $\sum_{n=1}^\infty {1\over n^2}={\pi^2\over 6}$ s'obtient avec \sum_{n=1}^\infty {1\over n^2}={\pi^2\over 6}
      - $\mathbb R$ s'obtient avec {\mathbb R} et $\mathcal D$ s'obtient avec {\mathcal D}
      - pour les crochets $\langle .,. \rangle$ dans les commentaires utilisez \langle .,. \rangle
      vous pouvez écrire du html dans les commentaires :
      - italique <i> ... </i> gras <b> ... </b>
      - lien <a href="http://adresse "> .... </a>