Mathématice, intégration des Tice dans l'enseignement des mathématiques  
Sommaire > N°65 - Mai 2019 > Découvrir / explorer la géométrie non euclidienne

Découvrir / explorer la géométrie non euclidienne avec une tortue

Moteur de recherche
Mis en ligne le 4 mars 2019, par Alain Busser, Patrice Debrabant

Ce qui devait arriver arriva : à force de mener des expériences génétiques sur des tortues mutantes, certaines d’entre elles se virent dotées d’un capital génétique différent afin d’être implantées dans des univers parallèles. Sur la planète disque de Poincaré de l’univers hyperbolique, il fait froid et toute matière subit une forte contraction, surtout vers l’horizon...

Dans la version 4.3 de CaRMetal on a implémenté des commandes de tortue dynamique hyperbolique (pour le disque de Poincaré). Ces commandes permettent de développer un regard nouveau sur la géométrie hyperbolique et facilitent la construction de pavages hyperboliques dynamiques. [1]

Parcourir le disque de Poincaré à l’aide d’une tortue dynamique est un moyen simple de se familiariser avec sa géométrie et de se l’approprier. C’est ce que l’on propose de faire ici.

groupe de papier peint hyperbolique

Plan

I) Introduction
II) Présentation des CaRCommandes tortue de géométrie hyperbolique
III) A la découverte du disque de Poincaré
   A) Géodésiques
   B) Cercles
   C) Polygones
   D) Triangle de Sierpinski hyperbolique
IV) Construction de pavages hyperboliques
   A) Pavages par des polygones réguliers
   B) Pavages par des polygones ayant des angles égaux à $2\pi/2k_i$
   C) Pavages par un polygone dont la somme des angles est un diviseur de l’angle plein
   D) Construire le pavage par un script récursif
V) Groupes de papiers peints hyperboliques
VI) Thermodynamique du plan hyperbolique
VII) Prolongements


I) Introduction

Pour explorer le monde hyperbolique, les chercheurs ont décidé, fort prudemment, de ne pas chercher eux-mêmes, mais de laisser la tortue explorer les fins fonds de cet univers à leur place. On ne sait jamais à quoi s’attendre. La tortue joue donc le rôle d’un rover (on dit aussi « astromobile ») d’exploration du disque de Poincaré.

Rover sur le disque de Poincaré

Houston (planète Terre)

Une première mission du rover consiste simplement à aller tout droit. En effet, les généticiens connaissent les shadoks et s’en inspirent volontiers pour définir les protocoles expérimentaux. Voici un extrait du compte-rendu de cette expérience :

  • Houston ici Rover ;
  • Roger, Rover. Vous êtes où ?
  • J’ai atterri sur le disque.
  • Très bien. Vous avez le feu vert, Rover. Avancez tout droit !
  • Vers où ?
  • Vous voyez quelque chose d’intéressant ?
  • Non. C’est pareil dans toutes les directions.
  • Ah bon ?! C’est bizarre, pourtant on vous a pas envoyé au centre du disque.
  • Pour moi, c’est pareil dans toutes les directions.
  • Dans ce cas choisissez une direction et avancez tout droit à vitesse constante.
  • Jusqu’où ?
  • Jusqu’à la fin du disque. Vous vous arrêtez au bout. Faites gaffe de pas dépasser et de rester sur le disque !
  • Roger, Houston. J’avance.
  • Rover ici Houston. Nous avons un problème, votre trajectoire s’incurve vers la droite. Vous parcourez un arc de cercle !
  • Non, mon compas de bord indique que je vais tout droit, pas à droite. Droit. Par contre la météo a changé, il fait de plus en plus froid, on se les gèle !
  • Rover ici Houston, je vous entends mal. Droit ou froid ? Revenez à la base !
  • ...
  • Rover, m’entendez-vous ?
  • ...

On ne sait ce qu’est devenue cette première tortue expédiée dans le disque de Poincaré. D’après le professeur Raymond-Seymour Poinpertaré (un medium), la tortue serait encore en train d’aller tout droit à vitesse constante (!), et elle aurait de plus en plus froid.

La tortue de CaRMetal n’est pas la première tortue hyperbolique. Il existe en particulier une tortue hyperbolique dans GéoTortue, qui est un logiciel tortue souvent utilisé.
Mais dans tous ces logiciels la tortue hyperbolique n’est pas dynamique, par conséquent elle ne permet pas réellement d’explorer l’espace hyperbolique.
En pratique, les ressources actuelles dédiées à la tortue hyperbolique sont très rares. Celles de GéoTortue sont difficiles à trouver [2]. On peut dénicher sur le site officiel ce script :

Comme annoncé, ce script permet de construire un triangle rectangle isocèle dans les différents modèles implémentés, y compris donc en géométrie hyperbolique dans le disque de Poincaré.
C’est intéressant, certes, mais cela n’éclaire pas du tout les différences qui existent entre la géométrie euclidienne et la géométrie hyperbolique (et pour cause : c’est un script de « géométrie absolue », autrement dit un script valable dans « toutes » les géométries, y compris non euclidiennes).

En quoi est-ce différent quand on chevauche une tortue hyperbolique dynamique ?
L’article a pour mission de répondre à cette question.

tortue dynamique

II) Présentation des CaRCommandes tortue de géométrie hyperbolique de CaRMetal

Les CaRCommandes de géométrie hyperbolique de CaRMetal sont dynamiques (autrement dit créent des objets dynamiques).

Détail

On trouve deux CaRCommandes :

AvancerDP()
Cette CaRCommande s’utilise comme la CaRCommande Avancer() en géométrie euclidienne.

Mais sa valeur de retour est différente :
Avancer() renvoie un tableau ["P","s"] où "P" est le nom du point atteint et "s" celui du segment construit (éventuellement masqués).
AvanceDP() renvoie un tableau ["P1,P2,P3,P4,P5,P6,P7,P8,P9,P10","c"] où P1,P2,P3,P4,P5,P6,P7,P8,P9,P10 sont des points régulièrement espacés sur l’arc de cercle et P10 le point atteint. "c" est le nom de l’arc de cercle (segment hyperbolique) construit.

En mode pseudo-code le retour se réduit à "P" pour Avancer() et à "P1,P2,P3,P4,P5,P6,P7,P8,P9,P10" pour AvancerDP().

Cela permet de construire des polygones (et des pavages) en couleur, comme on le verra plus loin.

ViserDP()
Cette CaRCommande permet de viser un point.

distDP()
Il ne s’agit pas d’une CaRCommande, mais d’un opérateur qui produit une expression (comme l’opérateur d à deux variables).

Remarque : dans un scrit appliqué dans le disque de Poincaré, on peut utiliser non seulement les autres CaRCommandes hyperboliques, mais aussi les CaRCommandes euclidiennes. Certaines CaRCommandes tortues sont d’ailleurs identiques, en particulier celles qui font tourner d’un certain angle, car le disque de Poincaré est un « modèle conforme » (= qui préserve les angles). [3]

Le script pour créer un triangle rectangle isocèle va nous donner un peu plus de mal que celui de GéoTortue. Non pas parce que le triangle sera dynamique, mais parce que l’on souhaite avoir la possibilité de remplir le triangle (via un polygone euclidien). L’implémentation de CaRMetal est basée sur cette intention.


Pour un triangle au trait :
ligne 5 : on a besoin du point C pour avoir la longueur du dernier côté. Le nom de ce point C est dans une chaîne de caractères du type "P1,P2,P3,P4,P5,P6,P7,P8,P9,P10" qui est renvoyée par la CaRCommande AvancerDP.
ligne 6 : on transforme cette chaîne de caractères en tableau JS avec la méthode split, puis on prend le dixième élément de ce tableau (qui est le nom donné par CaRMetal au troisième sommet du triangle).

Pour un triangle rempli :
chainePts est une chaîne de caractères avec les noms des points tout autour du triangle séparés par des virgules. C’est l’argument d’entrée de la CaRCommande euclidienne Polygone. ce remplissage est une approximation visuellement suffisante.
La couleur du polygone dépend des préférences par défaut au moment du lancement du script, et peut être modifiée.

III) A la découverte du disque de Poincaré

Description imagée du disque de Poincaré par Poincaré lui-même (dans la Science et l’hypothèse [chap. 3]) :


« LE MONDE NON EUCLIDIEN.

Supposons [...] un monde renfermé dans [un grand cercle] et soumis aux lois
suivantes :

La température n’y est pas uniforme ; elle est maxima au centre, et elle diminue à mesure qu’on s’en éloigne, pour se réduire au zéro absolu quand on atteint [le cercle] où ce monde est renfermé.

Je précise davantage la loi suivant laquelle varie cette température. Soit $R$ le rayon [du cercle] limite ; soit $r$ la distance du point considéré au centre de [ce cercle]. La température absolue sera proportionnelle à $R^2-r^2$.

Je supposerai de plus que, dans ce monde, tous les corps aient même coefficient de dilatation, de telle façon que la longueur d’une règle quelconque soit proportionnelle à sa température absolue.

Je supposerai enfin qu’un objet transporté d’un point à un autre, dont la température est différente, se met immédiatement en équilibre calorifique avec son nouveau milieu.

Rien dans ces hypothèses n’est contradictoire ou inimaginable.
Un objet mobile deviendra alors de plus en plus petit à mesure qu’on se rapprochera [du cercle] limite.

Observons d’abord que, si ce monde est limité au point de vue de notre géométrie habituelle, il paraîtra infini à ses habitants.

Quand ceux-ci, en effet, veulent se rapprocher [du cercle] limite, ils se refroidissent et deviennent de plus en plus petits. Les pas qu’ils font sont donc aussi de plus en plus petits, de sorte qu’ils ne peuvent jamais atteindre [le cercle] limite.

Si, pour nous, la géométrie n’est que l’étude des lois suivant lesquelles se meuvent les solides invariables ; pour ces êtres imaginaires, ce sera l’ ́etude des lois suivant lesquelles se meuvent les solides déformés par ces différences de température dont je viens de parler. [...] Qu’on me permette pour abréger le langage, d’appeler un pareil mouvement déplacement non euclidien.

Ainsi des êtres comme nous, dont l’éducation se ferait dans un pareil monde, n’auraient pas la même géométrie que nous. [Si ces êtres imaginaires] fondent une géométrie, [...] ce sera la géométrie non euclidienne. »


A) Géodésiques

Au coeur de l’implémention proposée par CaRMetal, le disque de Poincaré $\mathbf{D}$ est le disque ouvert centré en l’origine et de rayon 1.

Dans le cadre d’une approche exploratrice avec CaRMetal, on peut commencer par créer un point et deux curseurs : un pour fixer l’orientation et un autre pour la longueur du déplacement (cette longueur étant la longueur hyperbolique dans le disque de Poincaré, autrement dit la longueur subjective d’un être qui serait plongé dans le disque).
On crée une nouvelle figure dans le disque de Poincaré (menu Fichier), le point A et les deux curseurs.

Puis on exécute ce script tortue :

On obtient cette figure dynamique :

On voit que les « segments » sont des arcs de cercle dont le cercle support est perpendiculaire au cercle de rayon 1 (appelé cercle horizon).
Les droites (ou géodésiques, autrement dit les courbes qui réalisent le plus court chemin entre deux points) sont des arcs de cercle privés des extrémités, celles-ci étant sur le cercle horizon.

Avec cette distance hyperbolique il serait de bon ton que

AvancerDP(a)
AvancerDP(b)

ait le même effet que AvancerDP(a+b)

On peut vérifier expérimentalement que c’est bien le cas, et même le démontrer...

...en faisant un peu de maths

En fait, il y a une distance hyperbolique sous-jacente à la CaRCommande AvancerDP(), la CaRCommande s’appliquant avec cette distance.

Cette distance distDP (subjective) peut s’exprimer à partir de la distance euclidienne (objective).
Tout est basé sur la notion d’inversion par rapport à un cercle (qui joue un rôle analogue à celui de la symétrie axiale dans l’espace euclidien). On utilise le birapport et le corps $\mathbb{C}$ des nombres complexes.

Étant donnés $z_1$, $z_2$, $z_3$, $z_4$ quatre points de $\mathbb{C}$ avec $z_1\neq z_4$ et $z_2\neq z_3$, leur birapport est le nombre complexe
$[z_1 ,z_2 ,z_3 ,z_4 ]=\dfrac{(z_1-z_3)(z_2-z_4)}{(z_2-z_3)(z_1-z_4)} \in \mathbb{C}$

On peut alors étendre cette définition à $\hat{\mathbb{C}} = \mathbb{C}\cup \{\small{\infty}\}$, cet ensemble ayant le mérite de pouvoir assimiler droites et cercles perpendiculaires au cercle horizon (une droite est un cercle de rayon infini).

On peut démontrer que :

  • quand on applique une inversion $\varphi$, le birapport est transformé en son conjugué complexe :
    $[\varphi(z_1 ),\varphi(z_2 ),\varphi(z_3 ),\varphi(z_4 ) ]=\overline{[z_1 ,z_2 ,z_3 ,z_4 ]}$
  • quatre points distincts $z_1$, $z_2$, $z_3$, $z_4 \in \hat{\mathbb{C}}$ sont sur un cercle dans $\hat{\mathbb{C}}$ si et seulement si leur birapport est réel.

La distance hyperbolique distDP est alors définie à partir du birapport de la façon suivante :
Étant donnés deux points $z_1\neq z_2 \in \mathbf{D}$, on peut vérifier qu’il existe un unique cercle dans $\hat{\mathbb{C}}$ passant par $z_1$ et $z_2$ orthogonal à $\mathbb{S^1}$ ($\mathbb{S^1}$ est le cercle de rayon 1, autrement dit l’horizon). [4]
Ce cercle intersecte $\mathbb{S^1}$ en deux points $z_1^\infty$, $z_2^\infty$, avec $z_1^\infty$ du côté de $z_1$ et $z_2^\infty$ du côté de $z_2$, comme illustré ci-dessous.

Définition : la distance hyperbolique entre $z_1$ et $z_2$ est alors définie par $distDP(z_1,z_2 ) = −ln[z_1,z_2,z_1^\infty,z_2^\infty]$

On peut alors démontrer qu’il s’agit bien d’une distance sur $\mathbf{D}$, et que les géodésiques (plus courts chemins entre deux points) sont les arcs de cercles perpendiculaires au cercle horizon.

  • Au secours, il y a de l’Euler dans l’air ! C’est quoi le logarithme d’un nombre complexe ?
  • Ben justement M’sieur Poincaré il a choisi des points sur un cercle parce que, dit-il, « si 4 points sont cocycliques, leur birapport est réel ».
  • Oui mais c’est quoi le logarithme d’un nombre négatif ?
  • le birapport de 4 points cocycliques n’est pas seulement réel, il est positif. Tout va bien.
  • Sauf qu’avec ce signe négatif on se retrouve avec une distance négative, c’est quoi encore cette embrouille ?
  • Le birapport est compris entre 0 et 1, son logarithme est donc négatif, d’où le signe "moins" destiné justement à obtenir une distance.

En particulier, les distances s’ajoutent le long de ces arcs de cercle (comme on l’a vérifié sur la séquence de deux commandes AvancerDP).
En effet, supposons que $z_1$, $z_2$ et $z_3$ sont trois points sur un même cercle orthogonal à $\mathbb{S^1}$, et soient P,Q les points d’intersection avec $\mathbb{S^1}$ comme ci-dessous.

Alors, on a
$[z_1,z_3,P,Q]=\dfrac{(z_1-P)(z_2-Q)(z_2-P)(z_3-Q)}{(z_2-P)(z_1-Q)(z_3-P)(z_2-Q)} = [z_1,z_2,P,Q][z_2,z_3,P,Q]$,

d’où $distDP(z_1, z_3) = distDP(z_1, z_2)+distDP(z_2, z_3)$. La distance hyperbolique est bien additive le long des arcs de cercles orthogonaux à $\mathbb{S^1}$.

Et on peut démontrer que $distDP(z_1, z_3) < distDP(z_1, z_2)+distDP(z_2, z_3)$ en dehors de cette configuration où $z_2$ est sur la géodésique entre $z_1$ et $z_3$.

Par ailleurs, on peut comparer « localement » (quand $z_1$ tend vers $z_2$) la distance $distDP(z_1,z_2)$ avec la distance euclidienne.
Faisons afficher $d(A,B)/(1-A^2)$, $distDP(A,B)$ et le quotient de ces deux expressions.

On voit que localement la distance hyperbolique est $\dfrac{d()}{1-r^2}$. C’est cette métrique locale [5] qui induit des géodésiques qui sont des arcs de cercle perpendiculaires au cercle horizon.
On pourrait vérifier ce résultat par le calcul.

CarMetal - 2.5 ko

B) Cercles


Houston : - Tracez 20 rayons d’une roue de bicyclette. Qu’on voit si vous êtes capable de tracer un cercle.

Rover : - Evidemment que je sais tracer un cercle ! J’y peux rien si vous n’êtes pas fichus de voir ce qu’il faut !

Houston : - On vous regarde, soyez précis, faites un effort.

Rover : - F U !

Houston : - Roger !

Rover : - Voilà, j’ai fini. Vous voyez un cercle ?

Houston : - Oui. C’est un cercle parfait.

Rover : - Vous voyez que j’y arrive, bande de cons !

Houston : - Rover, we have a problem...

Rover : - Quoi encore ?!

Houston : - Le centre du cercle n’est pas au centre du cercle.

Rover : - Quoi !?!... La roue de bicyclette est déformée ?

Houston : - Non. La roue est très bien. C’est les rayons.

Rover : - Ben quoi les rayons ?...

Houston : - Ils n’ont pas la même longueur. Et ils sont pas droits.

Rover : - Hein !?! Nan, mais allo Houston... Faut arrêter de picoler !


On peut maintenant essayer de tracer un cercle, défini comme l’ensemble des points situés à une distance donnée d’un point donné. Pour mieux appréhender la situation, on matérialise des rayons du cercle.

Pour tracer uniquement quelques rayons du cercle, on a un script très simple :

Ce script produit cette figure dynamique :

Pour construire le cercle hyperbolique lui-même (une approximation polygonale de ce cercle), le script est plus compliqué. On peut le faire en utilisant une liste des sommets.

Il produit la figure dynamique suivante :

On obtient un cercle euclidien, mais dont le centre euclidien ne coïncide pas avec le centre hyperbolique.

CarMetal - 1.5 ko

Un autre façon d’appréhender un cercle consiste à l’appréhender en géométrie de la tortue comme une courbe à courbure constante.

L’algorithme :

répéter 360 fois
   Avancer(0.01)
   TournerGauche(1°)

en donne une bonne approximation.

CaRMetal donne la possibilité de tracer la courbe euclidienne et la courbe hyperbolique sur la même figure.

Le dynamisme par rapport à A permet d’observer une relation étonnante entre le rayon des deux cercles :






CarMetal - 1.5 ko

d’après ce site

C) Polygones

On va maintenant s’intéresser aux polygones, et à leur construction par script.
Il y a trois points libres A, B, C. Il s’agit simplement de les relier (par un script tortue qui ne fera pas mieux ici que l’outil segment hyperbolique, mais on peut considérer que c’est un échauffement).

Le script suivant fait nécessairement l’affaire :

On obtient cette figure dynamique :


Houston : - Parcourez un triangle.

Rover : - Roger !

Houston : - C’est pas un triangle, c’est le string de Nabila. Arrêtez de déconner !

Rover : - Je vous dit que je vise l’objectif et que je vais tout droit, bande de trous du cul !


On voit que les triangles sont du type "fin", autrement dit qu’il ont de petits angles dont la somme est inférieure à 180°.
On voit aussi que cette somme n’est pas constante.

CarMetal - 3.5 ko

A l’aide des outils de l’interface, on peut faire afficher les angles (hyperboliques) et les distances hyperboliques.
Ce premier triangle ABC étant construit, on va maintenant chercher à construire un triangle DEF ayant les mêmes angles que ABC.

Détail

On partira d’un point D libre. Un curseur "a" donnera l’orientation initiale de la tortue. Trois autres curseurs donneront les longueurs DE, EF et FD.

On exécute le script suivant :

Remarque : a30 et a31 sont les angles hyperboliques $\widehat{ABC}$ et $\widehat{BCA}$.

On peut mettre en évidence les points E et F, et construire l’angle hyperbolique $\widehat{FDE}$.
Le « but du jeu » est alors de refermer le triangle en obtenant en D un angle égal à l’angle en A.
On voit que le curseur "a" a une influence sur la forme (objective) du triangle, mais pas sur sa fermeture.
Les curseurs dDE et dEF permettent de placer D sur la bonne géodésique. Si on veut obtenir le bon angle en D, il faut nécessairement prendre dDE=distDP(A,B) et dEF=distDP(B,C).

En fait, on peut conjecturer la propriété : si deux triangles ont les mêmes angles, alors ils sont isométriques !

Et on est même tenté de penser que c’est la situation naturelle sur une variété riemanienne. Paradoxalement, c’est l’espace euclidien qui apparaît excentrique ! Le monde euclidien est une anomalie riemannienne.

CarMetal - 166.7 ko

On poursuit avec ce script emblématique d’un carré dynamique par rapport à deux points en géométrie euclidienne.


Houston : - Décrivez un carré.

Rover : - C’est un quadrilatère qui a quatre côtés égaux et quatre angles droits

Houston : - Très drôle ! Faites un carré !

Rover : - J’aimerais bien, mais c’est pas possible ! Vous pouvez carrément vous le carrer dans le disque !


Avec Papert c’était pourtant tout simple. Le carré était la première réalisation de tout enfant euclidien en programmation Logo : Répéter 4 fois la séquence « avancer puis tourner d’un angle droit ». Là tout d’un coup ça semble ne plus fonctionner :

Insistons :

Mais c’est pas possible, n’y a-t-il pas moyen de dessiner ce carré ?

Peut-être fallait-il commencer ailleurs ?

Décidément, rien à faire, le carré ne se ferme jamais.

Quand on en a marre de voir la tortue, on la cache :

On peut voir que l’on n’arrive jamais à complètement « refermer le carré », même si l’on arrive à s’en approcher.
Une conclusion s’impose : il n’existe pas de carré en géométrie hyperbolique. C’est carrément délirant !

CarMetal - 1.6 ko

Ce résultat était prévisible dans la mesure où la somme des angles d’un triangle est toujours inférieure à 180°. On s’attend donc à un résultat similaire pour les rectangles (quatre angles droits).

Vérifions le.

A l’aide des outils de l’interface, on construit deux points libres A et B, le segment hyperbolique [AB] et la perpendiculaire au segment en B.
On place un point C sur D.

Ensuite, on exécute ce script :

On obtient cette figure dynamique :

Comme pour le carré, on peut s’approcher d’un rectangle, mais on n’arrive pas à complètement le refermer :

CarMetal - 4.1 ko

On va maintenant s’intéresser aux polygones convexes réguliers (possédant des côtés égaux et des côtés égaux), en commençant par le triangle ou trilatère (selon que l’on fixe initialement l’angle ou la longueur).
Comme on sait que la somme des angles d’un triangle est inférieure à 180°, on utilisera un curseur entre 0 et 60° qui fixera l’angle du triangle régulier.

Détail

On construit un point libre A, un curseur "aInit" pour l’orientation initiale de la tortue, un curseur "c" pour le côté, un curseur "a" pour l’angle.

Le script est le suivant :

On obtient cette figure dynamique :

On observe que ni le curseur aInit ni le point libre A n’ont d’influence sur la fermeture du triangle.









C’était prévisible car les translations et les rotations sont des isométries directes du disque de Poincaré (autrement dit des composées d’un nombre pair d’inversions). Par conséquent, elles préservent les longueurs, en particulier celle entre A et le point final de la tortue, et elles préservent les angles orientés. Si on déplace le point A on applique une translation, si on modifie le curseur aInit on applique une rotation de centre A.

On peut construire un triangle régulier quel que soit l’angle a, mais cela fixe le côté c.
Réciproquement, on peut construire un triangle régulier quel que soit c, mais cela fixe a.
De plus, a et c sont « inversement proportionnels » (au sens commun du terme).

Enfin, (à aInit fixé) on arrive à construire un seul triangle présentant une symétrie de rotation (au sens euclidien et hyperbolique du terme) par rapport au centre du disque.

La situation est analogue pour le quadrilatère régulier (que l’on n’appellera pas carré) et pour les autres polygones réguliers, que l’on construira plus loin, dans le cadre de pavages.

D) Triangle de Sierpinski hyperbolique

Le script suivant permet de construire un triangle de Sierpinski euclidien :

Ce script peut être transplanté en géométrie hyperbolique.

Il produit cette figure dynamique :

CarMetal - 2.4 ko

IV) Construction de pavages dynamiques

Si on dispose d’un polygone d’un des types suivants, alors ce polygone pave le plan (l’argument étant valable dans le disque de Poincaré mais aussi en géométrie euclidienne !)

a) Si on a un polygone régulier dont les angles sont égaux à un diviseur de l’angle plein

En effet, on peut alors opérer récursivement une symétrie axiale (une inversion) par rapport aux côtés. Cela ne produira pas de chevauchement et créera un pavage.
La vraie question est de savoir si l’on dispose ou pas de ce polygone.
En géométrie euclidienne, seuls le triangle équilatéral, le carré et l’hexagone régulier ont des angles égaux à un diviseur de l’angle plein.
Dans le plan de Poincaré, comme on l’a vu plus haut pour le triangle, quel que soit n il existe un polygone régulier à n côtés ayant des angles égaux à un diviseurs de l’angle plein. (D’un point de vue objectif, il en existe même une infinité, mais pas d’un point de vue subjectif, les figures isométriques étant ressenties identiques).

Remarque : une symétrie centrale par rapport au milieu du côté ayant le même effet sur un polygone régulier qu’une symétrie axiale par rapport à un côté, on peut si l’on préfère opérer des symétries centrales plutôt que des symétries axiales (la raison de cette préférence est que la symétrie centrale est une isométrie directe, contrairement à la symétrie axiale, et qu’elle pourra donc être appliquée avec une méthode différente comme on le verra plus bas).

b) Si on a un polygone hyperbolique convexe dont tous les angles sont égaux à un diviseur de l’angle plat

En effet, on peut alors opérer récursivement une symétrie axiale (une inversion) par rapport aux côtés. Cela ne produira pas de chevauchement et créera un pavage.
Dans ce cas, on ne peut pas remplacer les symétries axiales par des symétries centrales (l’effet sur le polygone considéré n’étant pas le même, contrairement au a))

c) Si on a un polygone hyperbolique convexe dont la somme des angles est un diviseur de l’angle plein

En effet, on peut alors opérer récursivement une symétrie centrale par rapport aux milieux des côtés. Cela ne produira pas de chevauchement et créera un pavage.

Schéma de l’appplication (et du transfert des angles) de symétries centrales par rapport aux milieux des côtés

Pour construire un pavage, la difficulté principale va être de créer le pavé (le polygone pavant).

A) Pavages par des polygones réguliers

En chaque sommet, il va y avoir un nombre entier constant p de polygones réguliers.
Donc les angles du polygone régulier seront égaux à $\dfrac{2\pi}{p}$
Cela implique une valeur du côté qu’il faut déterminer.

Calcul et construction

On va construire un polygone régulier à n côtés.

n et p seront déterminés par curseurs (mais le pavage terminé ne sera pas dynamique par rapport à n et p).

Pour trouver cette valeur, on va se placer dans le cas où le polygone présente une symétrie de rotation.

On va construire deux sommets consécutifs B et C du polygone, ce qui donnera le côté.

Sur le scéma ci-dessus, dans le triangle ABO, l’angle $\widehat{BOA}$ est égal à $\dfrac{\pi}{n}$, et l’angle $\widehat{ABO}$ est égal à $\dfrac{\pi}{p}+\dfrac{\pi}{2}$.

 $AO=\sqrt{1+r^2}$ et $AB=r$.

On peut calculer $r$ à l’aide de la règle (euclidienne) des sinus :
Dans tout triangle ABC, on a $\dfrac{sin(\widehat{A})}{a}=\dfrac{sin(\widehat{B})}{b} = \dfrac{sin(\widehat{C})}{c}$

D’où $\dfrac{sin (\dfrac{\pi}{n})}{r} = \dfrac{sin(\dfrac{\pi}{p}+\dfrac{\pi}{2})}{\sqrt{1+r^2}}$

On mouline et on obtient $r =\dfrac{sin(\dfrac{\pi}{n})}{\sqrt{cos^2(\dfrac{\pi}{p})-sin^2(\dfrac{\pi}{n})}}$

On peut placer A en $(0,\sqrt{1+r^2})$ et construire facilement B et C en mode euclidien.

Remarque : cette construction n’est possible que si $\dfrac{\pi}{n}+\dfrac{\pi}{p}+\dfrac{\pi}{2}<\pi$, et on trouve donc la règle générale pour l’existence des pavages hyperboliques réguliers :

$\dfrac{1}{n}+\dfrac{1}{p}<\dfrac{1}{2}$

On peut ensuite tout masquer pour ne garder que les curseurs n et p.
Puis on ajoute un point libre B et un curseur aInit entre 0 et 360° comme précédemment.

Le script suivant construit le polygone régulier :


On va maintenant s’efforcer de construire un pavage en couleur avec des polygones remplis.

Pour les adeptes des pavages en couleur

Remarque : si on voulait une figure dynamique plus réactive et éviter les complications qui suivent, on pourrait créer une version fil de fer et colorier le pavage dans un autre logiciel.

On commence par construire un polygone rempli qui approche le polygone hyperbolique.
La tortue hyperbolique de CaRMetal va permettre de le faire car la CaRCommande AvancerDP() retourne une chaîne de caractère "P1,...,P10" où P1, P10 sont 10 points régulièrement espacés sur l’arc (P10 est le point d’arrivée).
On va donc récupérer ces chaînes de caractères et les concaténer pour obtenir une chaîne de 40 points qui forment les sommets d’un polygone euclidien qui approche le polygone hyperbolique.

Il faut penser à insérer une virgule entre deux sous-chaînes.

Dans le script suivant, on a isolé la première itération pour des raisons purement techniques de manipulation de chaîne de caractères.

On obtient bien le polygone voulu :

On dispose de la base de la construction, à savoir du côté du polygone.
On peut annuler le script précédent (qui n’a servi que de test).

On va maintenant construire une macro en vue de l’itérer (à la main ou par script).

Pour commencer, on peut faire la remarque suivante :

on pourrait être tenté d’appliquer la symétrie axiale ou la symétrie centrale (hyperboliques) directement au polygone.
Mais avec CaRMetal, dans une figure de Poincaré l’application d’une macro (et d’un outil de l’interface) directement à un polygone euclidien ne produit pas un polygone eucliden, mais l’image véritable du polygone euclidien.

Le problème est que cette image ne peut pas être remplie.
On va donc procéder autrement et créer nous-même (plus finement) la macro.

Pour une isométrie directe (ici la symétrie centrale), une première idée consiste à créer une macro qui, à partir de deux points, construit le polygone régulier « main/patte droite de la tortue » et les sommets hyperbolique du polygone. La macro sera créée à partir d’un script tortue. Cette macro pourra être appliquée successivement pour générer le pavage.

On crée deux points libres E et F qui vont permettre de créer la macro.

On fixe n et p aux valeurs souhaitées.
On ajuste le script précédent aux points E et F.

On applique ce script et on obtient cette figure :

On est parti ici pour un pavage n=3 et p = 7.
On crée la macro pave d’initiaux CH, E et F et de finaux le troisième sommet et le polygone.
On annule le script (mais la macro est préservée).

On veut maintenant appliquer la macro à deux points initiaux.
On crée ce script si on veut utiliser un curseur pour l’orientation initiale de la tortue (on pourrait aussi utiliser un point libre que l’on viserait).

On obtient un deuxième point qui permet d’initier la procédure.

Au final, on obtient ce pavage dynamique en D et en le curseur aInit (la solution avec un deuxième point donnerait un pavage dynamique avec une meilleure « manipulation directe »).
On peut masquer n et p qui ne sont pas (ou qui ne sont plus, après que le script ait été lancé) des éléments dynamiques.

Pavage n=3, p = 7
CarMetal - 5.2 ko
CarMetal - 1.6 Mo
construction
fini (long à ouvrir)

Les pavages dynamiques ci-dessous ont été obtenus de la même façon (application « à la main » de la macro).

Pavage n=4, p=5
CarMetal - 1.5 Mo
fini (long à ouvrir)

Pour les valeurs paires de p, on peut colorier en damier (ce sera très pratique quand on construira au D) tout le pavage par un script récursif).

Pavage n=5, p=4
CarMetal - 1.4 Mo
fini (long à ouvrir)

Remarque (voir le VI plus bas) : Dans le roman Flatland, le héros habite une maison carrée. Ses angles droits relient 4 murs. Son cousin hyperbolique qui lui aussi aime les angles droits, habite une maison pentagonale, qui rappelle un peu le ministère de la défense des USA. Cette maison comporte 5 murs, ce qui fait un mur de plus par lequel la chaleur peut s’échapper. On verra plus bas une explication thermodynamique à ce phénomène, par le mouvement brownien dans le disque de Poincaré.

B) Pavages par des polygones ayant des angles égaux à $\dfrac{2\pi}{k_i}$

La première difficulté consiste à construire une instance du polygone qui va paver.

On peut prendre l’exemple d’un quadrilatère ayant pour angles : 90°, 60°, 45° et 60° (un « genre de » cerf-volant).
On va utiliser quatre curseurs pour les $k_i$, et trois curseurs pour les longueurs des côtés (le quatrième sera déterminé automatiquement sans avoir à passer par un curseur [6]).
Pour les deux dernier curseurs pour les côtés on utilisera impérativement une expression transformée en curseur car la valeur du curseur sera fixée par un script.

L’idée, c’est de créer un script qui joue le rôle d’outil pour fixer c2 et c3.

Construire un script outil

On crée un point libre A puis le script suivant :

En exécutant le script, on obtient cette figure :

Il s’agit des trois premiers côtés du polygone.
On ajoute un angle de mesure donnée (avec l’outil idoine de l’interface) pour terminer le polygone. [7]

On modifiant les curseurs des côtés on obtient une approximation du polygone :

On veut maintenant obtenir ce polygone avec plus de précision.
On fait afficher l’angle $\widehat{P_{86}AE}$ (voir fig ci-dessous).

On voit que l’angle n’a pas la valeur souhaitée (90°).
On crée une expression Ea32 égale à cette valeur de l’angle $\widehat{P_{86}AE}$ (qui s’appelle a32 ici).
On crée le point $M_1$ symétrique de A par rapport à l’arc que l’on vient de construire (4ème côté).
Ces deux derniers éléments permettent de valider la construction.
On crée le script suivant qui va fixer c2 et c3 aux bonnes valeurs. Ce script joue le rôle d’un outil !

On lance ce script et on obtient le polygone voulu.

On a les quatre sommets, autrement dit les quatre distances avec une bonne approximation.
Reste à faire le pavage.
On crée une macro d’initiaux l’axe et les quatre sommets, et de finaux le polygone symétrique (euclidien), ses quatre sommets et ses quatre côtés.

Puis on crée un point libre $A_1$ et le curseur aInit.
Enfin, on exécute ce script :

On obtient cette figure :

On n’a plus qu’à masquer la figure initiale $AEUP_{86}$ et à compléter le pavage.

Pavage par un polygone d’angles 60°, 45°, 60°, 90°
CarMetal - 221.4 ko
CarMetal - 1.6 Mo
construction
fini (long à ouvrir)

C) Pavages par un polygone dont la somme des angles est un diviseur de l’angle plein

On crée une instance du pave comme au B), on crée le pavage comme au A) par application de symétries centrales successives.

Pavage par un polygone avec des angles 13°, 33°, 21° et 53° (somme = 120°)
CarMetal - 56.8 ko

D) Construire le pavage par un script récursif

On va traiter ici le cas A) des polygones réguliers en appliquant des symétries axiales.
Voici le script, qui utilise une procédure « main gauche » et une procédure « main droite ».

Paradoxalement, il faut éviter les positions trop précises, certaines macros fonctionnant sur des arcs de cercles mais pas des segments (cas limite).
On fait en sorte de ne pas construire deux fois le même polygone.

On obtient ces pavages :

CarMetal - 18.5 ko

Petite galerie de pavages réguliers

n = 3 et p = 8    ;   n = 3 et p = 10

n = 4 et p = 6    ;   n = 4 et p = 8

n = 5 et p = 6    ;   n = 5 et p = 8

n = 6 et p = 4    ;   n = 5 et p = 6

n = 7 et p = 4    ;   n = 7 et p = 6

V) Groupes de papiers peints hyperboliques

Les groupes de papiers peints hyperboliques de $\mathbb{D}$ sont les sous-groupes discrets d’isométries de $\mathbb{D}$. Les sous-groupes qui ne contiennent que des isométries qui préservent l’orientation des angles sont appelés des groupes fuchsiens.
Alors qu’il n’existe que 17 groupes de papiers peints dans le plan euclidien il en existe une infinité dans le disque de Poincaré.

Le motif du papier peint peut avoir une frontière plus ou moins simple :

d’après Svetlana Katok : Fuchsian groups, geodesic flows on surfaces of constant negative curvature and symbolic coding of geodesics

Poincaré a démontré dans un article célèbre(voir ce résumé) qu’un groupe fuchsien pouvait être construit à partir d’un pavage de $\mathbf{D}$ et réciproquement. Le pavé (domaine fondamental) correspondant au motif apparaît comme un concept fondamental des groupes discrets.

On peut construire quelques papiers peints hyperboliques dans le cas simple (i) où le domaine fondamental est un polygone fini (que l’on prendra régulier).

Petite galerie de papiers peints hyperboliques

Il y a des approximations, mais celles-ci ne nuisent pas à la perception du groupe de papier peint.









CarMetal - 44.6 ko

VI) Pourquoi fait-il si froid dans le disque de Poincaré ?

On a vu plus haut que les bâtiments à angles droits étant pentagonaux, ont plus de murs par lesquels la chaleur peut se sauver (25 pourcents de plus à isoler thermiquement), mais même sans maison, la chaleur s’évade plus vide dans le disque de Poincaré que dans le plan euclidien. Pour le vérifier expérimentalement, voici une simulation de mouvement brownien, effectuée avec le logiciel GeoTortue :

Et voici les trajectoires browniennes obtenues, dans le plan euclidien et dans le plan hyperbolique : Mouvement brownien dans

le plan euclidien le plan hyperbolique

On constate que, si dans les deux cas, la tortue a parfois tendance à faire du sur place, c’est près de son point de départ dans le cas euclidien, mais avec éloignement dans le cas hyperbolique. Cela signifie que le mouvement brownien, qui est récurrent dans le plan euclidien, est transient dans le plan hyperbolique : Les particules, sous l’effet du mouvement brownien, tendent à s’échapper vers l’infini, contrairement au plan euclidien où elles reviennent régulièrement vers leur point de départ. Or le mouvement brownien est à l’origine du phénomène de température (A. Einstein, 1905) et ainsi, dans le plan hyperbolique, la chaleur s’échappe plus vite que dans le plan euclidien : Il fait froid, comme l’avait signalé Rover, qui, en réalité, ne disait pas « Roger » mais « Rhô, gelé » !

VII) Prolongements

A) Les articles d’Etienne Ghys sur les géométries non euclidiennes sont des références, en particulier celui-ci .

B) La géométrie hyperbolique sous l’angle de l’axiomatique de Bachman a été présentée dans ces articles d’Yves Martin sur le site de l’IREM de la Réunion :

C) Cet article de Jos Leys sur Images des maths présente des pavages et une application pratique assez inattendue. ;)


notes

[1En particulier, on pourra construire n’importe quel pavage (qui sera en plus de nature dynamique) à un seul pavé polygonal dans les cas suivants :

  • quand le pavé est un polygone régulier ;
  • quand le pavé est un polygone convexe dont les angles sont des diviseurs de l’angle plat ;
  • quand le pavé est un polygone convexe dont la somme des angles est un diviseur de l’angle plein.

[2...et laissent penser que cette tortue est en voie d’extinction, ou morte-née.

[3Dans le disque de Poincaré, on considère les angles entre les tangentes des « segments hyperboliques » (des arcs de cercle) en un point considéré.

[4Tout cercle orthogonal à $\mathbb{S^1}$ est invariant par inversion par rapport au cercle horizon. Donc les images par l’inversion $i$ par rapport à $\mathbb{S^1}$ $i(z_1)$ et $i(z_2)$ doivent nécessairement être aussi sur le cercle, ce qui permet de déterminer son centre potentiel à l’aide de médiatrices (euclidiennes).

[5Il est question ici de métrique riemannienne locale.

[6Le fait que l’on utilise un curseur ne signifie aucunement que le choix de la longueur est libre, comme on va le voir...

[7Cet outil a un fonctionnement un peu inattendu, il faut d’abord désigner le sommet au centre de l’angle. Nonobstant, il fonctionne.

Réagir à cet article
Vous souhaitez compléter cet article pour un numéro futur, réagir à son contenu, demander des précisions à l'auteur ou au comité de rédaction...
À lire aussi ici
MathémaTICE est un projet
en collaboration avec
Suivre la vie du site Flux RSS 2.0  |  Espace de rédaction  |  Nous contacter  |  Site réalisé avec: SPIP  |  N° ISSN 2109-9197