Il existe donc de nombreuses ressources que vous pouvez trouver via Google ou en utilisant la recherche ici sur la façon de générer une galaxie entière. Mais je n'ai trouvé aucune bonne ressource sur la façon de générer des systèmes planétaires qui suivent ces critères:
Les systèmes ne doivent pas nécessairement être des simulations précises des orbites mais doivent être proches des orbites plausibles. Je ne me soucie pas d'une simulation qui se soucie de l'apparence du système dans 200 000 ans, les orbites pourraient être solides. Le principal problème auquel je suis confronté est de savoir comment générer de manière aléatoire un système qui pourrait être considéré comme plausible. Cela devient particulièrement intéressant lorsque vous avez un système avec une étoile binaire.
Créer des orbites au hasard ne constituera pas un système plausible, vous vous retrouverez avec des orbites manifestement non fonctionnelles. Oui, je suis conscient du problème du N-corps :) mais cela ne m'aide pas, du moins je pense, à résoudre le problème de génération d'un système plausible procédural?
Je pense que vous pouvez simplement générer des planètes au hasard sur leur orbite et leur donner une masse, puis utiliser les mathématiques à N corps pour calculer si elles sont plus ou moins valides, sinon recommencer et générer aléatoirement de nouvelles orbites jusqu'à ce que vous obteniez quelque chose qui correspond , mais ce serait très inefficace.
la source
Réponses:
Afin de créer un système solaire plausible, assurez-vous que chaque orbite se trouve dans la sphère d'influence du corps parent, mais pas dans la sphère de colline ou la limite de roche d'un autre corps.
La sphère d'influence est le rayon maximum autour d'une planète où des satellites stables peuvent être attendus.
La limite de la roche est le rayon orbital minimum qu'un corps céleste peut avoir autour d'un autre. Lorsqu'il est sur une orbite inférieure, il se brise et devient un anneau.
La sphère de colline est pertinente lorsque vous voulez éviter de créer deux satellites autour du même corps qui ont des orbites très proches. C'est la plage entre le rayon orbital minimum et maximum qu'une planète "occupe".
Les trois valeurs peuvent être calculées à partir de la masse et du rayon orbital avec les formules dans les articles Wikipédia liés.
Je voudrais donc essayer l'algorithme suivant:
Cela couvre les systèmes à une seule étoile, mais pas les systèmes à étoiles binaires . Un système d'étoiles binaires a deux étoiles en orbite autour d'un barycentre commun. Les planètes peuvent orbiter l'une des étoiles (orbite de type S) ou le barycentre commun sur une orbite très large (orbite de type P).
Si vous voulez un système d'étoiles binaires, je recommanderais de générer la deuxième étoile comme un autre satellite autour de l'étoile primaire dans un premier temps. Tout ce qui se trouve dans la sphère montagneuse de la deuxième étoile tourne autour de la deuxième étoile et tout ce qui a un rayon plus petit que la sphère montagneuse de la deuxième étoile tourne autour de la première étoile. Calculez le barycentre et faites en sorte que les deux étoiles tournent autour de leur lune. Tout ce qui a un obit plus grand que la sphère de la colline orbite autour du barycentre des deux étoiles (orbite de type P).
Les systèmes d'étoiles n-aires trinaires et plus grands ne sont stables que lorsque les étoiles au-delà du 2e sont très petites par rapport à l'autre. Ces étoiles supplémentaires devraient être gérées comme n'importe quelle autre planète.
la source
The square of the orbital period of a planet is directly proportional to the cube of the semi-major axis of its orbit.
Simplifiez la physique à 2 corps. La physique des N-corps est en général chaotique et vous ne pouvez pas les simuler sur une orbite stable.
Étoiles simples
Pour les systèmes avec une seule étoile, j'ignorerais le problème du N-corps et ferais simplement un ensemble de planètes grossièrement réparties à une distance géométriquement croissante du soleil . Peut-être pourriez-vous avoir une règle selon laquelle si une planète particulièrement grande est générée, tous les voisins trop proches se déstabilisent et forment une ceinture d'astéroïdes .
Les planètes proches de l'étoile ne sont pas nécessairement rocheuses comme c'est le cas dans notre système solaire .
La masse, la distance et la vitesse orbitale d'une planète sont interdépendantes - lorsque vous choisissez des valeurs au hasard, faites dépendre l'une d'entre elles (probablement la vitesse orbitale) des deux autres.
Étoiles binaires
Je ne connaissais pas vraiment les étoiles binaires habitables auparavant avant de consulter Wikipedia pour cette réponse, alors lisez sur Habitability_of_binary_star_systems où j'ai obtenu certains de ces chiffres.
Dans les planètes non circumbinaires (la planète n'orbite que sur une des étoiles du système binaire), si la distance d'une planète à son primaire dépasse environ un cinquième de l'approche la plus proche de l'autre étoile, la stabilité orbitale n'est pas garantie. Cela signifie que si les étoiles A et B forment un système binaire avec la distance AB , vous pouvez avoir des orbites planétaires stables autour de A ou B à des distances plus proches que 0,2 * AB . Pour ces systèmes, j'utiliserais à nouveau la physique des 2 corps comme approximation.
Dans les systèmes circumbinaires, tant que la planète est 2 à 4 fois plus éloignée de la paire binaire que les unes des autres, vous pouvez à nouveau traiter cela comme un problème à 2 corps où la planète tourne autour du centre de masse des deux. étoiles
Vous pourriez également avoir des planètes en orbite autour des points Lagrange L4 et L5 du système binaire . Je n'ai vu que des discussions à ce sujet dans des contextes de science-fiction - je pense que seuls les corps de la taille d'un astéroïde sont connus pour occuper les points de planètes de Lagrange dans notre système solaire, bien qu'ils puissent être utiles pour les vaisseaux spatiaux. Techniquement, l' une des étoiles doit être beaucoup plus grande que l'autre pour que ces points soient stables , mais c'est à vous de décider à quel point vous voulez laisser la vraie physique entraver la configuration de votre jeu.
la source
Il s'agit d'un long commentaire pour compléter les réponses existantes.
Avec suffisamment de temps, un système planétaire devient principalement planaire. Vous pouvez aussi bien simplifier votre simulation en la définissant comme étant planaire dès le départ. Ensuite, vous pouvez faire le reste avec l' équation de Binet , du moins si vous utilisez la simplification à 2 corps suggérée par Jimmy. Si vous négligez la relativité générale, la solution est analytique; sinon, vous aurez besoin de quelque chose comme Runge-Kutta.
la source