
Simulation du Système Solaire
01. Vue d'ensemble
Simulation Python avec Pygame pour visualiser en temps réel la mécanique orbitale, les interactions gravitationnelles et les lois physiques célestes.
Objectif
Construire un outil éducatif interactif et physiquement cohérent pour explorer la dynamique orbitale.
Résultat
Une simulation Pygame complète avec rendu des planètes, interactions gravitationnelles, support des lunes et export CSV.
02. Stack technique
03. Fonctionnalités clés
Simulation gravitationnelle en temps réel entre tous les corps
Calcul précis de la vitesse orbitale et de la période (3e loi de Kepler)
Support des objets Lune et Étoile
Calcul de la vitesse d'échappement, gravité de surface et période orbitale par planète
Export CSV des attributs calculés
Logging dynamique et gestion d'erreurs
04. Pipeline d'ingénierie
Conception des classes Planet, Sun, Moon et Star avec méthodes physiques complètes
Chargement dynamique des données planétaires depuis un fichier CSV structuré
Ajout de décorateurs de logging pour tracer les entrées/sorties de fonctions et le temps d'exécution
Création d'une fonctionnalité d'export CSV pour enregistrer les attributs calculés
05. Défis & exécution
Contrainte
Simuler avec précision l'attraction gravitationnelle entre toutes les paires de planètes en temps réel
Exécution
Implémentation de la loi de gravitation universelle de Newton avec décomposition complète des forces via atan2.
Contrainte
Décomposer les vecteurs de force en composantes x/y pour des trajectoires multi-corps
Exécution
Optimisation de la boucle de simulation pour itérer efficacement sur toutes les paires de planètes.
Contrainte
Maintenir la stabilité de la simulation avec de grandes variations de pas de temps
Exécution
Ajout d'un pas de temps configurable pour ralentir ou accélérer la simulation.