🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script script_335cvmn_335.py
Version 1.0.0
Date de création 11/03/2026
Auteur / Demandeur Gemini (IA Générée)
Objectif principal Simuler, exporter en CSV et animer graphiquement la trajectoire et l’orientation d’une fusée.
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Ce script traite des données de vol de fusée (altitude, vitesse, masse, angle). Il génère un fichier CSV horodaté contenant l’historique de simulation et lance une animation 2D interactive montrant la fusée pivotante, sa traînée de fumée, un HUD (affichage tête haute) et un décor étoilé.
📌 Problème résolu
Il permet de visualiser de manière cinématique des données physiques complexes (trajectoire balistique avec inclinaison) tout en assurant la persistance des données pour une analyse ultérieure sous Excel ou un logiciel de traitement de données.
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.8+
OS cible Tous (Windows, Linux, MacOS)
Mode d’exécution CLI / Module / Script indépendant
📦 Dépendances / Librairies
Librairies standard (built-in)
csv : Export des données.
datetime : Horodatage des fichiers.
Librairies externes (pip install)
numpy : Calculs matriciels et gestion des tableaux de données.
matplotlib : Moteur de rendu graphique et animations.
📥 ENTRÉES (INPUTS)
📂 Fichiers / Sources de données en entrée
Données de simulation : Le script utilise un dictionnaire historique contenant les listes de temps, altitude, vitesse, masse et angle.
Génération interne : En mode démonstration (main), les données sont générées par des fonctions de propagation numpy.
📤 SORTIES (OUTPUTS)
📂 Fichiers / Données en sortie
Type Chemin / Format Description
CSV simulation_fusee_YYYYMMDD_HHMMSS.csv Export complet avec métadonnées (date, points).
Animation Fenêtre Matplotlib Visualisation interactive de la trajectoire.
🧱 STRUCTURE DU SCRIPT
script_335cvmn_335.py
📌 IMPORTS : numpy, matplotlib, csv, datetime.
📌 FONCTIONS :
exporter_csv() : Logique d’écriture du fichier.
📌 CLASSES :
AnimationFusee : Gère le rendu et la logique de l’animation.
📌 MAIN : Génération de données factices et exécution des processus.
🔧 Détail des fonctions principales
Fonction Paramètres Retour Rôle
exporter_csv historique (dict), nom_fichier (opt) str Sauvegarde les données au format CSV délimité par des points-virgules.
_dessiner_fusee ax, x, y, angle_deg None Calcule la rotation des polygones (corps, coiffe, tuyère).
animer pas, intervalle_ms FuncAnimation Gère la boucle de rafraîchissement de l’image.
🔄 LOGIQUE / ALGORITHME
Collecte/Génération des données (X, Y, Angle, Masse).
Export CSV : Écriture des en-têtes (métadonnées avec #) suivie des lignes de données formatées à 2 ou 4 décimales.
Initialisation Graphique : Création d’un espace sombre (fond étoilé) et normalisation des axes.
Boucle d’Animation :
Calcul de la matrice de rotation pour l’icône de la fusée.
Mise à jour de la traînée dynamique (fenêtre glissante de points).
Rafraîchissement du HUD textuel.
🚨 GESTION DES ERREURS
Attributs manquants : La méthode get() est utilisée pour l’angle afin de fournir une valeur par défaut (90°) si la clé est absente de l’historique.
Division par zéro : Protection lors de la normalisation (1e-6) pour éviter les erreurs de calcul sur des trajectoires statiques.
🧪 TESTS ATTENDUS
# Cas de test Entrée Résultat attendu
1 Export CSV Dict historique standard Fichier créé avec séparateur ;
2 Rotation 90° Angle = 90 Fusée pointant verticalement vers le haut.
3 Trajectoire vide Listes vides Gestion d’exception ou graphique vide sans crash.
📝 EXEMPLE D’UTILISATION
▶️ Lancement en ligne de commande
Bash
python script_335cvmn_335.py
📋 Exemple de sortie console
Plaintext
✅ CSV exporté : simulation_fusee_20260311_200837.csv
→ 600 lignes de données






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