J'essaye de simuler le système solaire sur python :
[ROR]Eleanor
il y a 4 mois
je l'ai fait en C++ en L1
MeyroMeyro2
il y a 4 mois
je l'ai fait en C++ en L1
Pareil en L1 mais en python ici, j'utilise la méthode de Varlet pour avoir les positions et les vitesses
MeyroMeyro2
il y a 4 mois
Je me dis que c'est peut être parce que je prends pas en compte les coordonnées Z aussi, là je suis juste en plan.
Ou alors faudrait que je lance le programme avec la position actuelle des planètes.
MeyroMeyro2
il y a 4 mois
Sauf que je sais pas où trouver des données sur les positions actuelles ou d'une autre date, mais qui soient possibles.
MeyroMeyro2
il y a 4 mois
Bon et si vous participiez au TOPAX
presidentsantos
il y a 4 mois
Je me dis que c'est peut être parce que je prends pas en compte les coordonnées Z aussi, là je suis juste en plan.
elles sont censées être toutes dans le même plan il me semble.
tu simules avec leurs masse/vitesses initiales et la loi de gravité ?
MeyroMeyro2
il y a 4 mois
elles sont censées être toutes dans le même plan il me semble.
tu simules avec leurs masse/vitesses initiales et la loi de gravité ?
Y'a une légère inclinaison pour chaque planète.
Je prends en compte la masse, l'influences de tous les autres objets sur chaque corps, la vitesse j'ai pris la vitesse moyenne, de même pour la position j'ai pris la distance moyenne au soleil (et dcp ça les fait démarrer alignés).
MeyroMeyro2
il y a 4 mois
Donc je pense que le problème peut venir des données position + vitesse initiales
MAIS je sais pas où trouver des données propres
presidentsantos
il y a 4 mois
ok
et ton problème c'est que t'arrives pas à avoir un équilibre même en mettant les bonnes masses et distances etc ?
MeyroMeyro2
il y a 4 mois
Et là j'ai simulé pour une durée d'1 an
presidentsantos
il y a 4 mois
enfaite dans tout les cas t'auras pas des données propre parce qu'y a 1500 lunes différentes, des amas de poussières aux points de lagranges et pleins d'autres facteurs du style. En plus si les orbites sont elliptiques avoir les bons points de départs est plus difficile
bref je pense que t'es un peu obligé de trafiquer pour que ça tienne sur le papier d'abord.
ou alors tu renverses tout le projet et tu fais une simulation qui cherche les paramètres d'un système à l'équilibre
MeyroMeyro2
il y a 4 mois
enfaite dans tout les cas t'auras pas des données propre parce qu'y a 1500 lunes différentes, des amas de poussières aux points de lagranges et pleins d'autres facteurs du style. En plus si les orbites sont elliptiques avoir les bons points de départs est plus difficilebref je pense que t'es un peu obligé de trafiquer pour que ça tienne sur le papier d'abord.
ou alors tu renverses tout le projet et tu fais une simulation qui cherche les paramètres d'un système à l'équilibre
ouais mais bon j'aimerais déjà que certaines planètes ne croisent pas leurs orbites quoi
J'ai essayé de chercher un site qui pourrait me donner les données des distances actuelles de chaque planète au soleil puis leurs vitesses actuelles, mais j'ai pas trouvé...
presidentsantos
il y a 4 mois
c'est parce que ça tourne pas assez longtemps qu'elles font juste se croiser et que personne sort de son orbite ?
MeyroMeyro2
il y a 4 mois
c'est parce que ça tourne pas assez longtemps qu'elles font juste se croiser et que personne sort de son orbite ?
Aucune idée j'essaye de comprendre là, si tu veux je t'envoie le code que j'ai écris.
presidentsantos
il y a 4 mois
avec python t'auras du mal à simuler loin rapidement en effet. à toi de voir ce qui te satisfait dcp
presidentsantos
il y a 4 mois
vasy envois en mp jsuis curieux
MeyroMeyro2
il y a 4 mois
je vais essayer de mettre le pas à 1000 secondes mais de simuler pour plusieurs années histoire de voir ce que ça donne...
MeyroMeyro2
il y a 4 mois
avec python t'auras du mal à simuler loin rapidement en effet. à toi de voir ce qui te satisfait dcp
Yes mais là c'est pour un projet de la fac, et on doit faire en python.
Mais oui une fois le truc rendu je pourrais essayer de l'exporter sur C++ pour un rendu + rapide.
MeyroMeyro2
il y a 4 mois
191 sec pour ça avec un pas de 1000 secondes
Durée de simulation : 10 ans
Je vais tenter de lancer pour 100 ans mais à voir ce que ça va donner, probablement 3/4 d'heure de simulation par contre
presidentsantos
il y a 4 mois
jpense pas que ce soit possible de faire beaucoup mieux en restant simple. Ya sûrement des stratégies si tu changes les méthodes de calcul mais là faut plonger dans de la physique à mon avis.
presidentsantos
il y a 4 mois
191 sec pour ça avec un pas de 1000 secondes
Durée de simulation : 10 ans
Je vais tenter de lancer pour 100 ans mais à voir ce que ça va donner, probablement 3/4 d'heure de simulation par contre
si tu essaies avec moins de planète tu devrais pouvoir simuler plus loin sans que ça prenne des heures
MeyroMeyro2
il y a 4 mois
jpense pas que ce soit possible de faire beaucoup mieux en restant simple. Ya sûrement des stratégies si tu changes les méthodes de calcul mais là faut plonger dans de la physique à mon avis.
J'ai pensé à calculer à la main l'orbite de chaque planète dans un système à 2 corps (Soleil + Planète dcp) pour avoir des positions plus précises.
MeyroMeyro2
il y a 4 mois
si tu essaies avec moins de planète tu devrais pouvoir simuler plus loin sans que ça prenne des heures
Ouais mais justement, j'ai remarque que si j'enlèves certaines planètes ça déconne complètement et l'équilibre est rompu
Annihilus
il y a 4 mois
Les masses et les distances des planètes sont respectées ? Ou au moins mise à l'échelle ?
Le problème c'est que t'as pas que les planètes à prendre en compte mais aussi les lunes. Les planètes du système solaire orbite avec une raisonnance orbitale.
MeyroMeyro2
il y a 4 mois
Les masses et les distances des planètes sont respectées ? Ou au moins mise à l'échelle ?Le problème c'est que t'as pas que les planètes à prendre en compte mais aussi les lunes. Les planètes du système solaire orbite avec une raisonnance orbitale.
Oui masse et distance et vitesse
Yes je sais tout ça dcp, le problème c'est d'avoir de bonnes données ...
Dernier rendu : durée de simulation = 10 ans
J'ai mis dans un repère orthonormé pour que ça rende propre.
C'est pas si mal, les orbites ne se croisent pas, on voit pas trop le caractère elliptique par contre de loin pour celles du milieu, je vais voir si je peux pas utiliser autre chose pour visualiser.
Je corrige 2-3 trucs sur le programme et je vais me coucher, je continuerai demain.
Carapute-6
il y a 4 mois
Une planete ca n'a pas une orbite parfaite. T'as une apogée + un perigée (et une inclinaison) contrairement à ton programme
Sinon pars sur des valeurs arbitraires plutot que de tout aligner et speed up bêtement
MeyroMeyro2
il y a 4 mois
Une planete ca n'a pas une orbite parfaite. T'as une apogée, un perigée et une inclinaison
Bon les gars lisez un peu ce que j'ai dit svp sans vouloir être aigri, je sais bien ça et c'est justement mon problème, sur internet j'arrive pas à trouver de données assez précise sur ce niveau là.
Demain je mets en place l'inclinaison des orbites, ça j'ai trouvé, par contre faut que je trouve comment representer en 3D sur python.
MeyroMeyro2
il y a 4 mois
Mon programme c'est pas juste une planète qui suit un cercle, j'utilise les interactions gravitationnelles de toutes les planètes entres elles et là ça se voit pas trop sur le dernier comme on est un peu trop loin mais l'aspect elliptique des orbites se constate facilement.
Carapute-6
il y a 4 mois
[05:18:33] <MeyroMeyro2>
Bon les gars lisez un peu ce que j'ai dit svp sans vouloir être aigri, je sais bien ça et c'est justement mon problème, sur internet j'arrive pas à trouver de données assez précise sur ce niveau là.
Demain je mets en place l'inclinaison des orbites, ça j'ai trouvé, par contre faut que je trouve comment representer en 3D sur python.
Mais c'est pas compliqué du tout
La Terre là par exemple c'est une apogée de 152 097 697km et un périgée de 147 098 023km
Aussi une excentricité et l'heure de l'apogée/périgée
MeyroMeyro2
il y a 4 mois
Mais c'est pas compliqué du tout
La Terre là par exemple c'est une apogée de 152 097 697km et un périgée de 147 098 023kmAussi une excentricité et l'heure de l'apogée/périgée
Yes mais je n'utilise PAS les lois de Keppler, ce n'est pas juste une application bête et méchante, ici c'est les interactions gravitationnelles uniquement
MeyroMeyro2
il y a 4 mois
Je veux pas un rendu avec les lois de Keppler je veux une simulation pas à pas avec un dt très courts du mouvement des planètes en utilisant les interactions gravitationnelles entres elles.
Carapute-6
il y a 4 mois
[05:19:49] <MeyroMeyro2>
Mon programme c'est pas juste une planète qui suit un cercle, j'utilise les interactions gravitationnelles de toutes les planètes entres elles et là ça se voit pas trop sur le dernier comme on est un peu trop loin mais l'aspect elliptique des orbites se constate facilement.
http://www.scholarpedia.org/article/N-body_simulations_(gravitational)
Problème à n corps
Carapute-6
il y a 4 mois
Carapute-6
il y a 4 mois
+ Même si tu utilises ca faut bien input des valeurs à un moment donné.. (Apoastre/périastrz etc) Si tes planetes partent un sucette alors que tes maths sont bons c'est que t'as foiré qqpart dans les données des planetes
MeyroMeyro2
il y a 4 mois
C'est exactement ce que j'ai fais clé, là sur ce que tu viens d'envoyer justement on considère que tout est dans un plan.
Et ils partent tous en même temps, les vitesses que j'ai sont les mêmes.
Le code c'est pareil ça utilise la méthode de Varlet comme je l'ai fait
MeyroMeyro2
il y a 4 mois
Demain j'utilise l'inclinaison du plan des orbites + je rajoute tous les petits astres que j'ai pas mis + je permets de visualiser en 3D inshallah
MeyroMeyro2
il y a 4 mois
Sur ce topic résolu
MeyroMeyro2
il y a 4 mois
je vais faire une gooning sesh hardcore + hard + anal + hard squirt + huge gape + dirty slut + ball punching pour fêter ça + me faire dormir.
ILTwo
il y a 4 mois
Toujours puceau j'imagine ?
MeyroMeyro2
il y a 4 mois