Blog
Partie 2 - Du prototype à l’étude mathématique - Conception du premier modèle de simulation
Une fois que j’avais compris les lois physiques et les méthodes numériques, j’ai voulu tester concrètement mes idées. Mon objectif était simple : simuler le mouvement vertical d’une fusée sous l’effet de la poussée, de la gravité, et de la résistance de l’air. Mais pour y arriver, il me fallait structurer un modèle simplifié, avec les bonnes variables et une boucle de calcul qui évolue dans le temps.
J’ai commencé par définir les paramètres physiques essentiels : la masse initiale de la fusée, la poussée générée par les moteurs, la consommation de carburant par seconde, la surface frontale, le coefficient de traînée, et une approximation de la densité de l’air. J’ai aussi fixé une durée de fonctionnement des moteurs, après laquelle seule la gravité s’applique. Ces valeurs étaient fictives, mais réalistes.
Ensuite, j’ai programmé une première boucle en JavaScript pour faire avancer la simulation par petits pas de temps (0,1 seconde au début). À chaque pas, le programme calculait la force résultante, en combinant poussée, poids et traînée, puis en déduisait l’accélération, la nouvelle vitesse et la nouvelle altitude. C’était l’application directe de ce que j’avais appris, traduite ligne par ligne en code.
Le premier modèle ne faisait que simuler le vol vertical d’une fusée à masse décroissante. Il n’y avait pas encore d’influence latérale, de variation d’angle ou de suivi graphique précis. En revanche, j’ai intégré très tôt un tableau de données pour stocker l’historique de la trajectoire (altitude, vitesse, accélération à chaque instant). Cela me permettait ensuite de tracer des graphes ou d’afficher les résultats de manière lisible.
Concrêtement, le premier programme ressemblait à cela : 😂

Je me suis aussi rendu compte que, pour pouvoir tester plusieurs fusées ou configurations, il fallait rendre le modèle paramétrable. J’ai donc mis en place une interface HTML minimaliste où l’utilisateur pouvait entrer la masse, la poussée ou la durée du moteur. Cela rendait le programme plus interactif, mais aussi plus facile à corriger en cas d’erreurs.
Ce premier modèle était encore loin d’être complet, mais il m’a permis de vérifier plusieurs choses :
- que mes formules physiques fonctionnaient dans un contexte dynamique,
- que le comportement de la fusée (montée rapide puis ralentissement progressif) était crédible,
- que JavaScript permettait de faire des calculs numériques simples et rapides.
C’était aussi une manière de tester ma compréhension : écrire les équations, c’est une chose ; les voir fonctionner pas à pas, c’en est une autre. Le fait d’avoir un retour visuel immédiat m’a motivé à continuer. J’ai commencé à penser à une structure plus large, avec des classes, des modules, et peut-être même une base de données pour stocker les modèles de fusées.
Synthèse
Ce premier modèle a été une étape de validation. J’ai pu vérifier que mes idées tenaient la route et que mes choix de calculs produisaient des résultats cohérents. J’ai appris à transformer un problème physique en un programme structuré, avec des variables, des fonctions et une logique de simulation. C’est à partir de ce point que mon projet a vraiment pris forme.