Aller au contenu principal

Attracteur de Rössler

Ouvrir l'attracteur de Rössler. Faites glisser la souris pour étudier le portrait de phase sous tous les angles. Le curseur modifie le paramètre cc et le bouton lecture/pause permet d'immobiliser le déplacement des marqueurs.

Le Système Dynamique

Introduit par Otto Rössler en 1976, ce système continu modélise un comportement chaotique avec un couplage non linéaire minimal :

x˙=yz,y˙=x+ay,z˙=b+z(xc).\dot{x} = -y - z,\qquad \dot{y} = x + ay,\qquad \dot{z} = b + z(x - c).

Avec a=0,2a = 0{,}2, b=0,2b = 0{,}2, et c=5,7c = 5{,}7. Lorsque xx dépasse le seuil cc, le terme non linéaire z(xc)z(x - c) éjecte brutalement la trajectoire dans la troisième dimension avant qu'elle ne se replie en spirale.

Intégration par Runge–Kutta 4 (RK4)

L'intégration d'Euler accumulant trop d'erreurs dans les régimes chaotiques, le système utilise l'algorithme RK4 avec un pas Δt=0,01\Delta t = 0{,}01 :

function derivative(x, y, z, {a, b, c}) {
return [-y - z, x + a * y, b + z * (x - c)];
}

function rk4Step([x, y, z], parameters) {
const {dt} = parameters;
const k1 = derivative(x, y, z, parameters);
const k2 = derivative(x + (dt * k1[0]) / 2, y + (dt * k1[1]) / 2, z + (dt * k1[2]) / 2, parameters);
const k3 = derivative(x + (dt * k2[0]) / 2, y + (dt * k2[1]) / 2, z + (dt * k2[2]) / 2, parameters);
const k4 = derivative(x + dt * k3[0], y + dt * k3[1], z + dt * k3[2], parameters);

return [
x + (dt * (k1[0] + 2 * k2[0] + 2 * k3[0] + k4[0])) / 6,
y + (dt * (k1[1] + 2 * k2[1] + 2 * k3[1] + k4[1])) / 6,
z + (dt * (k1[2] + 2 * k2[2] + 2 * k3[2] + k4[2])) / 6,
];
}

3 000 pas préliminaires éliminent le régime transitoire initial avant d'enregistrer 28 000 points.

Géométrie et Rendu Tubulaire

Les points sont recentrés et interpolés par une courbe Catmull–Rom pour générer un tube 3D (TubeGeometry) avec couleurs spectrales aux sommets :

const curve = new THREE.CatmullRomCurve3(vertices);
const geometry = new THREE.TubeGeometry(curve, 4800, 0.12, 5, false);

Des sphères instanciées (InstancedMesh) parcourent le ruban avec une silhouette sombre garantissant leur lisibilité sur fond clair comme sur fond sombre.

Explorer les liensOuvrir le réseau