🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script script_354cvmn_354.py
Version 1.0.0
Date de création 11/03/2026
Auteur / Demandeur IA Générée (Gemini)
Objectif principal Simulation numérique 1D du vol vertical d’une fusée avec prise en compte de la traînée atmosphérique et de la gravité variable.
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Ce script simule la trajectoire verticale d’une fusée de 10 tonnes. Il calcule en temps réel l’évolution de la masse (consommation de carburant), les forces appliquées (poussée, traînée, poids) et les paramètres cinématiques (accélération, vitesse, altitude) jusqu’à l’impact au sol.
📌 Problème résolu
Il permet de prédire les performances d’un lanceur (apogée, vitesse maximale, accélération subie en G) sans recourir à des logiciels de CAO complexes, en utilisant une intégration numérique de type Euler Symplectique pour garantir une meilleure stabilité de l’énergie.
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.x
OS cible Tous (Windows / Linux / MacOS)
Mode d’exécution CLI (Script autonome)
📦 Dépendances / Librairies
numpy : Calcul matriciel et gestion des vecteurs d’état.
matplotlib.pyplot : Génération du dashboard graphique et sauvegarde de l’image.
📥 ENTRÉES (INPUTS)
📂 Fichiers / Sources de données en entrée
Paramètres Hardcodés : Le script utilise des constantes physiques (ISA – International Standard Atmosphere) et des caractéristiques de fusée définies en début de fichier.
📤 SORTIES (OUTPUTS)
📂 Fichiers / Données en sortie
Type Chemin / Format Description
Image simulation_fusee.png Dashboard de 6 graphiques (Altitude, Vitesse, Accélération, Masse, Forces, Mach).
Console Flux Standard (STDOUT) Affichage des statistiques clés (Apogée, V max, Mach max).
🧱 STRUCTURE DU SCRIPT
script_354cvmn_354.py
│
├── 📌 PARAMÈTRES PHYSIQUES (Constantes g0, rho0, etc.)
├── 📌 INITIALISATION (Création des arrays NumPy)
├── 📌 BOUCLE DE SIMULATION (Boucle for avec intégration temporelle)
├── 📌 NETTOYAGE (Truncate des tableaux en cas d’impact précoce)
├── 📌 RÉSULTATS CLÉS (Calcul des maxima)
└── 📌 VISUALISATION (Génération du dashboard Matplotlib)
🔄 LOGIQUE / ALGORITHME
Étape 1 : Calcul de la masse actuelle (si temps < temps de combustion).
Étape 2 : Calcul des forces :
Poussée : Constante ou nulle.
Poids : Fg=m⋅g0⋅(Re+zRe)2 (Gravité variable).
Traînée : Fd=21ρv2CdS (Modèle exponentiel de densité).
Étape 3 : Intégration Euler Symplectique :
Mise à jour de la vitesse via l’accélération (vi+1=vi+ai⋅dt).
Mise à jour de l’altitude via la nouvelle vitesse (zi+1=zi+vi+1⋅dt).
Étape 4 : Détection de collision (si z<0) et arrêt de la boucle.
🚨 GESTION DES ERREURS
Condition sol : Si l’altitude devient négative, le script force les valeurs à zéro et interrompt la boucle (break) pour éviter des résultats physiquement impossibles.
Température minimale : La température locale est plafonnée à 216.65 K pour simuler la tropopause et éviter une vitesse du son nulle ou imaginaire.
✅ CONTRAINTES & RÈGLES MÉTIER
Règle 1 : La consommation de carburant est linéaire jusqu’à épuisement (Masse sèche).
Règle 2 : La traînée utilise np.sign(vitesse) pour rester opposée au mouvement, même en phase de descente.
Règle 3 : Le pas de temps dt=0.05s est choisi pour équilibrer précision et vitesse de calcul.
🧪 TESTS ATTENDUS
# Cas de test Entrée Résultat attendu
1 Vol nominal Paramètres par défaut Apogée ~25-30 km, Impact sol < 200s
2 Sans atmosphère Cd = 0 Apogée nettement plus élevée
3 Poussée insuffisante poussee < masse * g0 La fusée reste au sol (vitesse nulle)
📊 PERFORMANCES ATTENDUES
Temps d’exécution : < 1 seconde pour 4000 itérations.
Consommation mémoire : Très faible (quelques Mo pour les arrays NumPy).
📝 EXEMPLE D’UTILISATION
▶️ Lancement en ligne de commande
Bash
python script_354cvmn_354.py
📋 Exemple de sortie attendue
Plaintext
=== Simulation de Vol de Fusée 1D ===
Masse initiale : 10000 kg
Poussée : 150 kN
Temps combustion : 80.0 s
—————————————-
🚀 Apogée : 27.42 km à t=92.4s
⚡ Vitesse max : 642.1 m/s
📈 Accél. max : 65.2 m/s² (6.6 g)
💥 Impact sol à t = 174.2 s






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