🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script onizuka_5j3j1au6e26zfu43_333.py
Version 1.0.0
Date de création 25/03/2026
Auteur / Demandeur IA Généré (Modèle Onizuka)
Objectif principal Simuler et visualiser la trajectoire 2D/3D d’une fusée en tenant compte de la poussée, de la gravité variable et de la traînée atmosphérique.
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Le script modélise le vol d’une fusée de 500 tonnes depuis le décollage jusqu’à l’extinction des moteurs. Il calcule en temps réel la position, la vitesse et la consommation de carburant en résolvant des équations différentielles physiques complexes, puis génère des graphiques d’analyse et une animation.
📌 Problème résolu
Il permet d’estimer les performances d’un lanceur (altitude maximale, vitesse finale, énergie) sans nécessiter de logiciels de CAO/Simulation industriels, tout en offrant une visualisation pédagogique de la mécanique orbitale de base.
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.8+
OS cible Windows / Linux / MacOS
Mode d’exécution CLI (Script autonome) ou Module (Classe importable)
📦 Dépendances / Librairies
numpy : Calculs vectoriels et matrices.
matplotlib : Génération des graphiques 2D/3D et animations.
scipy (solve_ivp) : Intégration numérique des équations du mouvement.
📥 ENTRÉES (INPUTS)
📂 Paramètres de Simulation (Configurables dans __init__)
# Nom Type Description Exemple
1 m0 float Masse initiale totale 500000 (kg)
2 thrust float Poussée des moteurs 7.5e6 (N)
3 isp int Impulsion spécifique 300 (s)
4 initial_angle int Angle de départ 85 (degrés)
📤 SORTIES (OUTPUTS)
📂 Fichiers / Données en sortie
Type Chemin / Format Description
CSV rocket_trajectory.csv Export des vecteurs x,y,z,vx,vy,vz et masse.
Visualisation Matplotlib Windows 4 graphiques 2D (Trajectoire, Altitude, Vitesse, Masse).
Visualisation Matplotlib 3D Rendu spatial de la trajectoire en trois dimensions.
🧱 STRUCTURE DU SCRIPT
Plaintext
onizuka_…_333.py
│
├── 📌 IMPORTS (numpy, matplotlib, scipy)
├── 📌 CLASSE RocketSimulation
│ ├── __init__() → Initialisation des constantes physiques
│ ├── gravity() / density() → Modèles environnementaux
│ ├── thrust_acceleration() → Calcul du vecteur poussée
│ ├── equations() → Système d’équations différentielles
│ ├── simulate() → Résolveur RK45
│ └── plot_…() → Fonctions de visualisation
└── 📌 MAIN (Exemple d’utilisation et sauvegarde CSV)
🔧 Détail des fonctions principales
Fonction Paramètres Retour Rôle
gravity(alt) altitude (m) float Calcule g selon la loi en 1/r2.
density(alt) altitude (m) float Modèle exponentiel de l’atmosphère.
equations(t, state) temps, vecteur d’état list Définit les dérivées pour l’intégrateur.
simulate(t_max) durée (s) tuple Exécute la résolution numérique.
🔄 LOGIQUE / ALGORITHME
Initialisation : Définition de l’état [x,y,z,vx,vy,vz,m].
Boucle d’Intégration (RK45) :
Calcul de la Gravité locale.
Calcul de la Traînée (proportionnelle au carré de la vitesse et à la densité).
Calcul de la Poussée (directionnelle selon l’angle de tangage).
Mise à jour de la Masse (consommation de carburant).
Extraction : Calcul des métriques de performance (Apoapsis, Énergies).
Rendu : Affichage des courbes et export de données.
🚨 GESTION DES ERREURS
Altitude négative : Le script force l’altitude à 0 pour éviter des densités de l’air aberrantes.
Division par zéro : Ajout d’une constante 1e-10 lors du calcul du vecteur gravité pour éviter les erreurs au centre de la Terre.
Masse vide : La consommation s’arrête automatiquement si la masse atteint m_dry.
🧪 TESTS ATTENDUS
# Cas de test Entrée Résultat attendu
1 Vol Nominal Paramètres par défaut Altitude max > 100km, trajectoire courbée.
2 Moteurs éteints thrust = 0 La fusée reste au sol ou retombe immédiatement.
3 Espace vide rho0 = 0 Absence de traînée aérodynamique (vitesse plus élevée).
📝 EXEMPLE D’UTILISATION
▶️ Lancement direct
Bash
python onizuka_5j3j1au6e26zfu43_333.py
📋 Sortie console type
Plaintext
Lancement de la simulation…
Simulation terminée !
— Métriques de performance —
Altitude maximale (km): 145.23
Vitesse maximale (km/s): 2.45
Masse finale (tonnes): 185.30
Résultats sauvegardés dans ‘rocket_trajectory.csv’



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