David Madore's WebLog: Petit supplément à ma page d'ondes sur la sphère

[Index of all entries / Index de toutes les entréesLatest entries / Dernières entréesXML (RSS 1.0) • Recent comments / Commentaires récents]

↓Entry #2317 [older| permalink|newer] / ↓Entrée #2317 [précédente| permalien|suivante] ↓

(mercredi)

Petit supplément à ma page d'ondes sur la sphère

J'ai présenté avant-hier une page en JavaScript (enfin, deux : avec WebGL ou sans) qui affiche une animation d'ondes sur une sphère (un peu plus précisément, une solution de l'équation des ondes (∂²/∂t²−c²Δ)φ=0, où Δ est le laplacien sphérique ; ou en fait, trois solutions à la fois, une pour chaque composante de couleur RGB). J'ai ajouté un bouton pause, mais ce n'est pas le plus intéressant : j'ai surtout ajouté toutes sortes de modes spéciaux.

(Si la description qui suit ne vous intéresse pas, sautez directement jusqu'au dernier paragraphe.)

On m'avait demandé si je pouvais permettre un choix de la condition initiale (pour les non-mathématiciens : la configuration à partir de laquelle l'onde évolue) : ce serait assez compliqué de fournir une façon de faire ça en général, mais on peut quand même permettre de choisir une configuration qui a des symétries particulières (qui se conserveront avec l'évolution dans le temps). C'est ce que ma page JavaScript permet maintenant. Un exemple de tel cas est la situation où il y a symétrie par rapport au centre de la sphère : l'état est en permanence le même en deux points antipodaux l'un de l'autre (i.e., φ(−x,−y,−z) = φ(x,y,z)) ; si on veut, on peut considérer qu'il s'agit alors d'une équation des ondes sur le plan projectif réel (qui est la sphère où on a identifié les paires de points antipodaux) ; ceci a l'intérêt qu'on voit alors la totalité de la configuration (puisque le programme n'affiche qu'un hémisphère, mais l'autre s'en déduit par symétrie). On peut imaginer d'autres symétries de ce genre, évidemment : par rapport à un plan (si c'est le plan parallèle au plan de projection — que j'appelle z=0 — alors on voit de nouveau toute la configuration, puisque de nouveau l'autre hémisphère est symétrique, mais cette fois par rapport à un plan, ce qui est donc subtilement différent) ; ou par rapport à un axe, et dans ce cas, à différents niveaux. (Je me suis limité à une symétrie d'ordre 2 ou 3 par rapport à l'axe de vision, parce que je ne calcule pas assez d'harmoniques pour qu'une symétrie d'ordre supérieur puisse être intéressante à voir, déjà 3 est limite. C'est dommage, parce qu'en général on pouvait demander des groupes de symétrie plus intéressants, à savoir les symétries d'un des solides réguliers. Mais bon, même dans le cas de la symétrie cubique/octaédrale, je n'ai pas le courage de calculer l'action sur les harmoniques sphériques.)

Mais j'ai un autre type de configuration particulière à proposer : il s'agit des cas où l'équation des ondes conserve la « masse totale », c'est-à-dire techniquement la norme L² (en l'occurrence, sur chacun des canaux de couleur) : pour parler grossièrement, des creux et des bosses peuvent se déplacer, mais leur quantité totale doit rester inchangée (note : la moyenne reste de toute façon constante — dans mon cas, à 0 que je représente par le gris intermédiaire qui sert aussi de fond — et c'est ici de la moyenne quadratique que je parle). Je ne sais pas quel est le terme standard (il y en a probablement un) pour désigner ce genre de configurations de l'équation des ondes. La situation complètement opposée est celle d'une onde stationnaire : très grossièrement parlant, dans une onde stationnaire, les creux et les bosses apparaissent et disparaissent, mais ne changent pas de place. Comme ce n'est pas terriblement intéressant, j'ai défini les configurations « stationnaires par niveau », qui sont celles où chaque niveau d'harmoniques sphériques (et chaque canal RGB) définit une onde stationnaire. Ces deux conditions se combinent d'ailleurs agréablement avec la condition d'être symétrique par rapport au centre de la sphère (« projectif », cf. ci-dessus), donc j'ai aussi mis les conjonctions en question.

Pour ceux qui connaissent un peu plus de maths, voici une explication plus claire sur ces deux conditions de conserver la masse L² et d'être stationnaire par niveau : en général, on peut écrire φ = ∑u,m(tY[,m] (pour −m, et parcourant les entiers naturels — même si mon JavaScript ne monte que jusqu'à 8), où les Y[,m] sont les harmoniques sphériques (réelles), qui vérifient (ΔY[,m] = −(+1)·Y[,m]) et sont orthogonaux au sens L² et u,m(t) est une sinusoïde de fréquence (c/2π)·√((+1)) (c'est ça qui assure qu'on vérifie l'équation des ondes). Cette dernière condition peut s'écrire u,m(t) = Re(Z,m·exp[i·c·√((+1))·t]) avec Z,m un nombre complexe (dont le module et l'argument déterminent l'amplitude et la phase de cette sinsuoïde). La condition de conserver la masse L² signifie que la somme des carrés de ces parties rélles ne dépend pas de t, ce qui revient en fait à ce que la somme des carrés des complexes Z,m (pour −m) s'annulle pour chaque . La condition d'être stationnaire par niveau, elle, signifie que pour chaque , les Z,m ont tous la même phase à π près (i.e., ils sont proportionnels par des nombres réels).

La première condition m'a d'ailleurs conduit au problème suivant, qui est assez perturbant : comment tirer au hasard de façon « naturelle » des nombres complexes Z1,…,Zk tels que Z1² + ⋯ + Zk² = 0 ? (Il revient au même de chercher des réels A1,…,Ak et B1,…,Bk tels que la somme des Ai² soit égale à la somme des Bi², et que la somme des Ai·Bi soit nulle, i.e., deux vecteurs de même norme et orthogonaux.) En l'absence de condition, je choisis les Zi en tirant leur partie réelle Ai et leur partie imaginaire Bi indépendamment selon une distribution gaussienne (dont l'écart-type décroît avec , mais ce n'est pas la question ici) ; pour une distribution stationnaire par niveau, je choisis un complexe de module 1 une fois pour toutes, et je le multiplie par des réels tirés selon une distribution gaussienne ; mais pour Z1,…,Zk tels que Z1² + ⋯ + Zk² = 0, ce n'est pas clair ce qu'il vaut mieux faire. Je pensais prendre une distribution gaussienne conditionnée par cette condition, mais je suis tombé sur le paradoxe de Borel, et du coup je ne sais pas exactement quoi faire. Au final, je tire Ai et Bi selon des distributions gaussiennes, je projette B sur l'orthogonal à A, et je le renormalise pour avoir la même norme que A (on se convaincra, au moins, que c'est en fait symétrique entre A et B), mais peut-être que la distribution que je donne à la norme carrée de A n'a pas le bon nombre de degrés de liberté (si tant est qu'il y en ait un « bon »).

Toutes ces choses étant dites, je serais curieux de savoir quelle impression font ces différents « modes », même (et surtout) sur ceux qui n'ont pas lu ou compris les explications ci-dessus. Y en a-t-il qui vous semblent plus jolis ? Et pensez-vous pouvoir les reconnaître (à part ceux qui présentent des symétries vraiment évidentes, c'est-à-dire les axialement 2-symétrique et 3-symétrique et les symétriques par rapport aux plans x=0 et y=0) ? Il y a une façon de reconnaître les modes projectifs (même si elle n'est pas évidente quand on laisse tourner l'animation ; je laisse en exercice de deviner de quoi il s'agit). Mais pour ce qui est des modes L²-conservatif et stationnaire par niveau, je n'arrive pas à savoir si j'arrive vraiment à les reconnaître ou si c'est une sorte d'effet placébo (je devrais écrire de quoi faire des tests à l'aveugle) ; et de même pour le mode symétrique par rapport à z=0.

↑Entry #2317 [older| permalink|newer] / ↑Entrée #2317 [précédente| permalien|suivante] ↑

[Index of all entries / Index de toutes les entréesLatest entries / Dernières entréesXML (RSS 1.0) • Recent comments / Commentaires récents]