🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script onizuka_lorenz_sim.py (basé sur le contenu)
Version 1.0.0
Date de création 25/03/2026
Auteur / Demandeur IA Généré (Modèle Lorenz)
Objectif principal Simuler, visualiser et analyser mathématiquement l’attracteur de Lorenz (système chaotique).
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Ce script est un outil complet de simulation numérique pour le système d’équations différentielles de Lorenz. Il permet de générer la trajectoire d’un point dans un espace 3D, de visualiser la célèbre forme en « papillon », d’animer l’évolution temporelle et de quantifier le chaos via le calcul de l’exposant de Lyapunov.
📌 Problème résolu
Il permet d’étudier la sensibilité aux conditions initiales et la transition vers le chaos en fonction du paramètre de Rayleigh (ρ), offrant une interface visuelle et mathématique pour comprendre la dynamique des systèmes non linéaires.
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.8+
OS cible Windows / Linux / MacOS (Multiplateforme)
Mode d’exécution Script interactif (CLI + Fenêtres Matplotlib)
📦 Dépendances / Librairies
numpy : Calculs matriciels et gestion des données numériques.
matplotlib : Moteur de rendu graphique 2D/3D et animations.
scipy : Utilisation de solve_ivp pour l’intégration numérique (Runge-Kutta 45).
ipywidgets : Support pour l’interactivité.
📥 ENTRÉES (INPUTS)
⚙️ Paramètres du Modèle (Classe AttracteurLorenz)
# Nom Type Obligatoire Description Défaut
1 sigma float ✅ Oui Nombre de Prandtl (convection) 10.0
2 rho float ✅ Oui Nombre de Rayleigh (gradient thermique) 28.0
3 beta float ✅ Oui Rapport d’aspect géométrique 8/3
📂 Configuration de simulation
Condition initiale : Liste [x, y, z] (Défaut : [1.0, 1.0, 1.0]).
t_max : Durée de la simulation (Défaut : 40).
📤 SORTIES (OUTPUTS)
📊 Données calculées
Dictionnaire de résultats : Contient les vecteurs t, x, y, z.
Exposant de Lyapunov : Valeur flottante (si >0, le système est chaotique).
📂 Visualisations générées
Graphique 3D interactif : Trajectoire colorée par le temps.
Planche 2D : Projections sur les plans XY, XZ, YZ et graphique temporel de X.
Comparaison de paramètres : Évolution de la structure selon la valeur de ρ.
Animation : Vidéo MP4 (optionnelle) ou rendu dynamique de la trajectoire.
🧱 STRUCTURE DU SCRIPT
Le code suit une approche orientée objet (POO) :
Classe AttracteurLorenz : Moteur de calcul (équations, solveur, Lyapunov).
Classe VisualisationLorenz : Interface graphique (plots 3D, animations, analyses comparatives).
Bloc if __name__ == « __main__ »: : Orchestration de la démonstration complète.
🔄 LOGIQUE / ALGORITHME
Initialisation : Paramétrage des constantes physiques (σ,ρ,β).
Intégration : Résolution du système par la méthode de Runge-Kutta d’ordre 4(5) :
dx/dt=σ(y−x)
dy/dt=x(ρ−z)−y
dz/dt=xy−βz
Analyse de Lyapunov : Application d’une perturbation infinitésimale et mesure de son taux d’écartement exponentiel.
Rendu : Génération des buffers graphiques pour affichage.
🚨 GESTION DES ERREURS
Warnings : Filtrage des messages d’avertissement via warnings.filterwarnings(‘ignore’).
Stabilité numérique : Utilisation de rtol=1e-6 dans le solveur pour garantir la précision de la trajectoire chaotique.
Division par zéro : Vérification de la norme de perturbation dans le calcul de Lyapunov pour éviter les erreurs de calcul.
✅ RÈGLES MÉTIER / SCIENTIFIQUES
Règle 1 : Si ρ<24.74, le système tend généralement vers des points fixes stables.
Règle 2 : Si ρ=28, le système entre dans un régime d’attracteur étrange (Chaos).
Règle 3 : L’exposant de Lyapunov doit être positif pour confirmer mathématiquement le chaos.
📝 EXEMPLE D’UTILISATION
▶️ Lancement standard
Bash
python onizuka_14tt9sdnciestqod_333.py
💻 Utilisation modulaire
Python
from onizuka_script import AttracteurLorenz, VisualisationLorenz
# Création et simulation
lorenz = AttracteurLorenz(rho=28)
data = lorenz.simuler(t_max=50)
# Visualisation
visu = VisualisationLorenz(lorenz)
visu.visualisation_3d(data)
📌 NOTES COMPLÉMENTAIRES
Design : Utilise le style dark_background pour une esthétique moderne et scientifique.
Performance : Le calcul de l’exposant de Lyapunov utilise 5000 itérations par défaut, ce qui peut prendre quelques secondes selon le CPU.



Avis
Il n’y a pas encore d’avis.