🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script onizuka_7cnjnym8jnahc2pu_333.py
Version 1.0.0
Date de création 25/03/2026
Auteur / Demandeur refoïa jeremy
Objectif principal Proposer une plateforme interactive de visualisation de concepts mathématiques complexes (fractales, chaos, automates).
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Ce script regroupe plusieurs simulations mathématiques et physiques classiques au sein d’une interface en ligne de commande. Il permet de générer des animations et des graphiques statiques pour explorer visuellement des phénomènes tels que l’auto-organisation, la géométrie fractale et les systèmes dynamiques chaotiques.
📌 Problème résolu
Il offre un outil pédagogique et exploratoire clé en main pour visualiser des concepts abstraits qui sont difficilement compréhensibles sans une représentation graphique dynamique (ex: l’attracteur de Lorenz ou le mouvement d’un pendule double).
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.8+
OS cible Windows / Linux / MacOS
Mode d’exécution CLI (Interactif) / Module
📦 Dépendances / Librairies
Librairies externes (pip install) :
numpy : Calculs matriciels et gestion des données numériques.
matplotlib : Moteur de rendu graphique et animations.
scipy : Résolution d’équations différentielles (solve_ivp).
📥 ENTRÉES (INPUTS)
Le script utilise principalement des entrées utilisateur via la console (input()).
# Nom Type Obligatoire Description
1 choix int ✅ Oui Sélection du type de simulation (0-5).
2 taille int ❌ Non Taille de la grille pour le Jeu de la Vie (défaut: 50).
3 iterations int ❌ Non Nombre de cycles/étapes de calcul.
4 resolution int ❌ Non Précision du rendu (Mandelbrot).
📤 SORTIES (OUTPUTS)
Visuelles : Fenêtres interactives Matplotlib (graphiques 2D, 3D et animations).
Console : Menus textuels et messages d’état/erreur.
🧱 STRUCTURE DU SCRIPT
Plaintext
onizuka_…_333.py
│
├── 📌 IMPORTS (numpy, matplotlib, scipy)
├── 📌 CLASSE SimulationsMathematiques
│ ├── __init__()
│ ├── automate_cellulaire_jeu_vie() → Logique de Conway
│ ├── fractale_mandelbrot() → Plan complexe & divergence
│ ├── fractale_koch() → Récursion géométrique
│ ├── systeme_dynamique_lorenz() → EDO & Attracteur 3D
│ ├── systeme_dynamique_pendule_double() → Physique chaotique
│ └── menu_interactif() → Gestionnaire utilisateur
└── 📌 MAIN (Point d’entrée)
🔧 Détail des fonctions principales
Fonction Paramètres Retour Rôle
automate_cellulaire_jeu_vie taille, iterations FuncAnimation Gère la grille binaire et les règles de voisinage.
fractale_mandelbrot resolution, max_iter None Calcule la vitesse de divergence dans le plan complexe.
systeme_dynamique_lorenz sigma, rho, beta None Résout les équations de Lorenz en 3D.
systeme_dynamique_pendule_double L1, L2, m1, m2, etc. FuncAnimation Modélise la physique et anime la trajectoire.
🔄 LOGIQUE / ALGORITHME
Affichage du Menu : L’utilisateur choisit une simulation.
Saisie des paramètres : Valeurs par défaut proposées si l’utilisateur appuie sur « Entrée ».
Calcul Mathématique :
Discret (Jeu de la vie) : Itération sur une matrice NumPy.
Continu (Pendule/Lorenz) : Résolution d’équations différentielles via l’algorithme Runge-Kutta 45 (RK45).
Rendu : Utilisation de FuncAnimation pour les systèmes temporels ou imshow/plot pour les fractales.
🚨 GESTION DES ERREURS
Entrée non numérique : Bloc try/except ValueError pour empêcher le crash lors de la saisie au menu.
Erreurs de calcul : Z[diverge] = 2 dans Mandelbrot pour éviter les erreurs d’overflow (divergence trop rapide).
Exceptions génériques : Capturées et affichées en fin de boucle principale pour permettre de relancer une simulation.
✅ CONTRAINTES & RÈGLES MÉTIER
Voisinage de Moore : Pour le Jeu de la Vie, les 8 voisins sont comptés avec gestion des bords par modulo (grille torique).
Conservation d’énergie : Pour le pendule double, l’utilisation de rtol=1e-6 assure une précision suffisante pour limiter la dérive numérique.
Récursion : La courbe de Koch utilise une structure récursive profonde limitée par le paramètre order.
📝 EXEMPLE D’UTILISATION
▶️ Lancement en ligne de commande
Bash
python onizuka_7cnjnym8jnahc2pu_333.py
📋 Exemple de sortie attendue (Console)
Plaintext
==================================================
SIMULATIONS MATHÉMATIQUES EN PYTHON
==================================================
Choisissez un thème :
1. Automates cellulaires – Jeu de la vie de Conway
2. Fractales – Ensemble de Mandelbrot
…
Votre choix (0-5) : 4
[Une fenêtre 3D s’ouvre avec l’attracteur de Lorenz]



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