onizuka_3ne8o3c6bqmren6q_333.py

49,00 

Simuler et animer les orbites de corps célestes en utilisant les lois de la gravitation universelle et l’intégration numérique RK5 (DOP853).

UGS : onizuka_3ne8o3c6bqmren6q_333.py Catégorie : Étiquettes : , ,

🔷 INFORMATIONS GÉNÉRALES

Champ Détail

Nom du script onizuka_3ne8o3c6bqmren6q_333.py

Version 1.0.0

Date de création 25/03/2026

Auteur / Demandeur Gemini (Basé sur le code fourni)

Objectif principal Simuler et animer les orbites de corps célestes en utilisant les lois de la gravitation universelle et l’intégration numérique RK5 (DOP853).

🎯 DESCRIPTION FONCTIONNELLE

📌 Que fait ce script ?

Ce script modélise le mouvement de plusieurs corps célestes (planètes, étoiles) en interaction gravitationnelle. Il calcule leurs trajectoires précises, vérifie la conservation de l’énergie du système et génère une animation interactive en temps réel montrant les orbites et l’évolution des positions.

📌 Problème résolu

Il permet de visualiser des phénomènes physiques complexes (système solaire, systèmes d’étoiles binaires) qui n’ont pas de solution analytique simple pour plus de deux corps (problème des N corps), en garantissant une haute précision numérique.

⚙️ SPÉCIFICATIONS TECHNIQUES

🐍 Environnement

Élément Valeur

Version Python 3.8+

OS cible Tous (Windows, Linux, MacOS)

Mode d’exécution CLI avec rendu graphique (Matplotlib)

📦 Dépendances / Librairies

numpy : Calculs vectoriels et gestion des matrices.

matplotlib : Moteur de rendu graphique et animations.

scipy (solve_ivp) : Intégration numérique de pointe pour les équations différentielles.

📥 ENTRÉES (INPUTS)

📂 Fichiers / Sources de données en entrée

Configuration manuelle : Les masses, positions initiales et vecteurs vitesses sont définis dans les fonctions de création (creer_systeme_solaire, creer_systeme_binaire).

Input utilisateur : Choix du scénario via la console (1-4).

📤 SORTIES (OUTPUTS)

📂 Fichiers / Données en sortie

Graphique d’animation : Fenêtre interactive Matplotlib affichant le mouvement des corps.

Graphique d’analyse : Courbe de conservation de l’énergie (stabilité).

Console : Logs des positions, vitesses et déviation relative de l’énergie.

🧱 STRUCTURE DU SCRIPT

onizuka_simulation.py

├── 📌 IMPORTS (Numpy, Matplotlib, Scipy)

├── 📌 CLASSE Planete (Attributs physiques et calculs d’énergie individuelle)

├── 📌 CLASSE SystemeSolaire (Moteur physique, calcul des accélérations, résolution ODE)

├── 📌 FONCTIONS DE CONFIGURATION (creer_systeme_solaire, creer_systeme_binaire)

├── 📌 MOTEUR D’ANIMATION (animer_systeme)

├── 📌 OUTILS D’ANALYSE (analyser_stabilite)

└── 📌 MAIN (Interface interactive simulation_interactive)

🔧 Détail des fonctions principales

Fonction Paramètres Retour Rôle

equations_mouvement t, etat ndarray Calcule les dérivées (vitesse et accélération) pour l’intégrateur.

evoluer duree t_eval Résout les trajectoires sur une période donnée avec DOP853.

calculer_energie_totale Aucun float Calcule la somme des énergies cinétiques et potentielles.

animer_systeme systeme, duree FuncAnimation Génère l’animation visuelle des planètes.

🔄 LOGIQUE / ALGORITHME

Initialisation : Création des objets Planete avec leurs conditions initiales (r0​,v0​).

Calcul de l’accélération : Utilisation de la loi de Newton :

ai​=j=i∑​∣rj​−ri​∣3GMj​(rj​−ri​)​

Intégration : solve_ivp calcule l’état futur du système en découpant le temps en intervalles minuscules.

Rendu : Matplotlib met à jour la position des cercles et trace les « queues » de trajectoire à chaque frame.

🚨 GESTION DES ERREURS

Division par zéro : Le script vérifie si la distance r entre deux corps est trop faible (if r > 1e-10) pour éviter les singularités gravitationnelles.

Précision : Utilisation de tolérances strictes (rtol=1e-8) pour éviter la dérive orbitale.

✅ CONTRAINTES & RÈGLES MÉTIER

Unités : Le script utilise des unités normalisées (Masses solaires, UA, Années) ou arbitraires cohérentes.

Conservation : L’énergie totale doit rester stable (déviation < 0.01% attendue). 🧪 TESTS ATTENDUS # Cas de test Entrée Résultat attendu 1 Système Solaire Option 1 Orbites quasi-circulaires et stables autour du Soleil. 2 Stabilité Option 3 Graphique montrant une ligne d'énergie quasi-horizontale. 3 Système Binaire Option 2 Trajectoire chaotique mais physiquement cohérente de la planète.

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “onizuka_3ne8o3c6bqmren6q_333.py”

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *