🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script script_328cvmn_328.py
Version 1.0.0
Date de création 11/03/2026
Auteur / Demandeur Gemini (IA Générée)
Objectif principal Simuler et visualiser la trajectoire verticale et les paramètres physiques d’une fusée en tenant compte de la gravité variable et de la traînée atmosphérique.
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Ce script modélise le vol suborbital d’une fusée. Il calcule en temps réel l’évolution de la masse (consommation de carburant), la poussée, la résistance de l’air (traînée) et la variation de la gravité en fonction de l’altitude. Il génère ensuite un tableau de bord graphique complet pour analyser les performances du vol.
📌 Problème résolu
Il permet de visualiser l’impact des lois de la physique (équation de Tsiolkovsky, modèle atmosphérique exponentiel) sur un véhicule spatial sans nécessiter de solveurs complexes externes, en utilisant une approche d’intégration numérique simple.
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.x
OS cible Tous (Windows, Linux, MacOS)
Mode d’exécution CLI avec rendu graphique (Matplotlib)
📦 Dépendances / Librairies
numpy : Calculs vectoriels et gestion des tableaux de données.
matplotlib : Génération des graphiques et de l’interface de visualisation.
📥 ENTRÉES (INPUTS)
Le script utilise des paramètres internes définis dans la classe Fusee :
| # | Nom | Type | Obligatoire | Description |
| :— | :— | :— | :— | :— |
| 1 | masse_carburant | float | ✅ Oui | Masse initiale de carburant (200 000 kg). |
| 2 | debit_carburant | float | ✅ Oui | Consommation du moteur (500 kg/s). |
| 3 | vitesse_ejection| float | ✅ Oui | Vitesse des gaz en sortie (3 000 m/s). |
📤 SORTIES (OUTPUTS)
Console : Affichage T+time, altitude, vitesse et masse toutes les 50 secondes de simulation.
Graphique : Une figure multi-fenêtres (2×3) affichant :
Altitude, Vitesse, Accélération (g), Masse, Trajectoire 2D et un bloc de statistiques finales.
🧱 STRUCTURE DU SCRIPT
Plaintext
script_328cvmn_328.py
│
├── 📌 IMPORTS (numpy, matplotlib)
├── 📌 CLASSE Fusee
│ ├── __init__() → Initialise les constantes physiques et l’état
│ ├── densite_air() → Modèle atmosphérique exponentiel
│ ├── force_trainee() → Calcul de la résistance de l’air
│ ├── gravite() → Loi du carré inverse de Newton
│ └── update() → Coeur de la simulation (Physique)
├── 📌 FONCTION simuler_vol() → Boucle temporelle de simulation
├── 📌 FONCTION afficher_resultats() → Rendu graphique Matplotlib
└── 📌 MAIN (Point d’entrée)
🔄 LOGIQUE / ALGORITHME
Initialisation : Création de l’objet fusée avec sa masse totale (m0).
Boucle de Simulation (Pas de temps dt) :
Calcul de la Gravité : g(h)=g0⋅(R+hR)2
Calcul de la Traînée : Fd=21ρCxSv2
Calcul de la Poussée (si moteur ON) : Fp=m˙⋅Ve
Somme des forces → Accélération (a=m∑F)
Intégration d’Euler : Mise à jour de la vitesse (v=v+a⋅dt) et position (y=y+v⋅dt).
Fin de simulation : Soit par durée atteinte, soit par retour au sol (y≤0).
🧪 TESTS ATTENDUS
# Cas de test Entrée Résultat attendu
1 Vol Nominal Paramètres par défaut Apogée ~160-180 km, retour au sol après épuisement.
2 Masse Nulle Carburant = 0 La fusée reste au sol (Poussée nulle).
3 Pas de temps dt très grand Instabilité de la simulation (erreur d’intégration).
📊 PERFORMANCES ATTENDUES
Temps d’exécution : < 2 secondes pour 500s de vol simulé. Consommation mémoire : Très faible (quelques Mo pour stocker les listes d'historique). 📝 EXEMPLE D'UTILISATION ▶️ Lancement direct : Bash python script_328cvmn_328.py 📋 Extrait de la sortie console : Plaintext 🚀 SIMULATION DE VOL DE FUSÉE ================================================== Masse totale initiale: 250.0 tonnes Poussée: 1500.0 kN Démarrage... T+ 0.0s | Alt: 0.00 km | Vitesse: 0.0 m/s | Masse: 250.0 t T+ 50.0s | Alt: 7.24 km | Vitesse: 291.5 m/s | Masse: 225.0 t ...






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