Для того, щоб створити правдоподібну сонячну систему, переконайтесь, що кожна орбіта знаходиться в сфері впливу материнського тіла, але не в межах сфери пагорба або в межах границі іншого тіла.
Сфера впливу максимальний радіус навколо планети , де можна очікувати стабільні супутники.
Межа Рош - мінімальний радіус орбіти, який може мати одне небесне тіло навколо іншого. Коли він знаходиться на нижній орбіті, він розпадається і стає кільцем.
Сфера пагорба є актуальною, коли ви хочете не допустити створення двох супутників навколо одного корпусу, які мають дуже близькі орбіти. Це діапазон між мінімальним і максимальним радіусом орбіти, яку планета "займає".
Усі три значення можна обчислити з масиву та орбітального радіуса за допомогою формул у пов'язаних статтях Вікіпедії.
Тоді я б спробував такий алгоритм:
- Створіть випадкову кількість небесних тіл із випадковим орбітальним радіусом і масою. Радіус і маса повинні бути в логарифмічному масштабі.
- Починаючи від більшості до найменш масивної, обчисліть сферу пагорбів кожної планети. Будь-яка менш масивна планета у сфері пагорбів більш масивної планети стає місяцем цієї планети. Випадково генерують орбітальний радіус Місяця навколо батька з логарифмічним розподілом між 0 і сферою впливу батьків.
- Виконайте крок 2 для всіх систем Місяця, щоб вирішити конфлікти супутників лун. Чи може Місяць мати стабільний супутник - це питання дискусій серед астрономічної спільноти (в нашій Сонячній системі не відомий приклад). Якщо вам не потрібні місячні місяці, просто видаліть менший місяць або поставте його на іншу випадкову орбіту.
- Перевірте обмеження Roche кожного об'єкта навколо його батька. Коли вона знаходиться нижче межі roche, перетворіть її на кільце (або просто видаліть).
Це стосується однозіркових систем, але не двійкових зіркових систем . Двійкова система зірок має дві зірки, які обертаються навколо загального барицентру. Планети можуть орбітувати одну із зірок (орбіту типу S) або загальний барицентр на дуже широкій орбіті (орбіта типу P).
Якщо ви хочете двійкової зіркової системи, я б рекомендував спершу створити другу зірку як інший супутник навколо первинної зірки. Все, що в кулі пагорба другої зірки, обертається навколо другої зірки, і все, що має радіус менший, ніж сфера пагорба другої зірки, обертається навколо першої зірки. Обчисліть барицентр і виведіть обидві зірки зі своїми місячними орбітами. Все, що має більший об’єм, ніж сфера пагорба, обертається навколо баріцентру двох зірок (орбіта типу P).
Трійчасті та більші n-арні зіркові системи стабільні лише тоді, коли зірок за межами 2-ї дуже малий порівняно з іншими. Ці додаткові зірки повинні оброблятися так само, як і будь-яка інша планета.