Great video dude! The 3-body problem always makes me wish i could look at the entire phase-space at once and see all the (meta-)stable solutions before me. Oh to live in 19 dimensions i guess :D
There's another thing you may need to consider, the issue of using floating point numbers. I don't think there is a computer in existence that uses them without rounding errors, so I'm pretty sure that in order to make the program give accurate results, especially over a long term, youll need to replace every floating point variable with some other number system with arbitrary precision and no rounding, or at least a way of tracking rounding errors and constantly adjusting for them. I am not knowledgeable enough to know what alternative system is best for this. Whatever the case, your orbits will always accumulate errors over time and eventually collapse using the systems you are currently
You're definitely right about the issue of floating point numbers, however the existence of irrational numbers means that there is no system that can finitely represent any number (particularly, the result of any calculation) without rounding. For the purposes of this demo however a double precision float is probably more than enough precision.
The precision can also be greatly increased by adjusting the algorithm used to calculate the next step. Especially in a system like this, it’s important to use an algorithm that is energy conserving so that the system doesn’t magically add or remove energy from the system that will cause it to collapse or go haywire when it shouldn’t. There’s also the issue of adjusting the initial system to something “normalized” so that total system momentum is 0 (the center of mass of the system stays centered around zero and doesn’t drift), the total system rotation rotation is planar (so that the system of equations is simplified down to only the X-Y plane, avoiding extra error added in each step), and even ensuring all three points begin on the same plane (though this is only really evident in systems where the velocities are also somewhat coplanar, it does avoid making systems that have the same symmetries from looking wildly different), there could also be something said about ensuring some other initial ratios of distance and velocity/positions/masses of particles with certain relative properties are fixed and normalized.
A little correction: in the restricted three body problem, the two massive bodies are immobile *in a rotating reference frame*, as in they only appear immobile because your camera is itself rotating so that both would appear stationary; in normal conditions, they just orbit each other normally. In a rotating reference, you have to take centrifugal force into account if it involves a third body, and also the coriolis force if you want to see how the third body moves around. That figure 8 would not be possible if the centrifugal and coriolis force were taken into account as well. Your ultimate goal isn't involved with rotating reference frames, though, so I get it. Also, one way to improve the trajectory visualization of the three bodies is to prevent them from drifting in a certain direction. You can do this by determining the velocity of the center of mass of the three bodies combined, then adding the bodies' velocity with that velocity in the opposite direction. This way, the system's center of mass will stay put (at least until one of them gets slingshotted) thanks to conservation of momentum.
@2:56 Use the configuration of body 1&2 locked into a more energetic orbit together, and then orbited by the loosely bound 3rd body, as a special case to probe for insights into stability.
im working on a custom race for a fantasy world im creating, and together with that im creating a custom planet in a cool orbit my idea was a planet with two moons, except the moons dont just orbit the planet, they also orbit around each other, similar to the sunflower one you showed off. obviously the net mass of the moons would be smaller than the mass from the planet, though not too much as i want the planet to vary in distance from the sun, but its cool to see that orbit visualized!
This video will blow up sooner or later. Definitely subbed
4:59 this is the same orbit as the Alpha Centauri orbits and yes Proxima Centauri would eventually get slingshotted into outer space eventually.
Great video dude! The 3-body problem always makes me wish i could look at the entire phase-space at once and see all the (meta-)stable solutions before me. Oh to live in 19 dimensions i guess :D
There's another thing you may need to consider, the issue of using floating point numbers. I don't think there is a computer in existence that uses them without rounding errors, so I'm pretty sure that in order to make the program give accurate results, especially over a long term, youll need to replace every floating point variable with some other number system with arbitrary precision and no rounding, or at least a way of tracking rounding errors and constantly adjusting for them. I am not knowledgeable enough to know what alternative system is best for this. Whatever the case, your orbits will always accumulate errors over time and eventually collapse using the systems you are currently
You're definitely right about the issue of floating point numbers, however the existence of irrational numbers means that there is no system that can finitely represent any number (particularly, the result of any calculation) without rounding. For the purposes of this demo however a double precision float is probably more than enough precision.
The precision can also be greatly increased by adjusting the algorithm used to calculate the next step. Especially in a system like this, it’s important to use an algorithm that is energy conserving so that the system doesn’t magically add or remove energy from the system that will cause it to collapse or go haywire when it shouldn’t.
There’s also the issue of adjusting the initial system to something “normalized” so that total system momentum is 0 (the center of mass of the system stays centered around zero and doesn’t drift), the total system rotation rotation is planar (so that the system of equations is simplified down to only the X-Y plane, avoiding extra error added in each step), and even ensuring all three points begin on the same plane (though this is only really evident in systems where the velocities are also somewhat coplanar, it does avoid making systems that have the same symmetries from looking wildly different), there could also be something said about ensuring some other initial ratios of distance and velocity/positions/masses of particles with certain relative properties are fixed and normalized.
Can't believe you almost found another solution
This is such an intricate and well thought of video, great content. I feel like I've hit youTube gold, you have 1 new subscriber 🥂
Really hope the algorithm picks this up, great video!
which one?
@ the RUclips one.
@@parallelgaming8424 oh
Great video man, hope the algo picks it up. Will do my best to share. Thanks for the great content! 😊
A little correction: in the restricted three body problem, the two massive bodies are immobile *in a rotating reference frame*, as in they only appear immobile because your camera is itself rotating so that both would appear stationary; in normal conditions, they just orbit each other normally. In a rotating reference, you have to take centrifugal force into account if it involves a third body, and also the coriolis force if you want to see how the third body moves around. That figure 8 would not be possible if the centrifugal and coriolis force were taken into account as well. Your ultimate goal isn't involved with rotating reference frames, though, so I get it.
Also, one way to improve the trajectory visualization of the three bodies is to prevent them from drifting in a certain direction. You can do this by determining the velocity of the center of mass of the three bodies combined, then adding the bodies' velocity with that velocity in the opposite direction. This way, the system's center of mass will stay put (at least until one of them gets slingshotted) thanks to conservation of momentum.
@2:56 Use the configuration of body 1&2 locked into a more energetic orbit together, and then orbited by the loosely bound 3rd body, as a special case to probe for insights into stability.
Possibly...
Start with body 1 and 2 in such a tight energetic orbital around each other, that they don't even affect body 3 as two separate bodies.
How did youtube recommend me this, this is actually a good video, is yt broken?
im working on a custom race for a fantasy world im creating, and together with that im creating a custom planet in a cool orbit
my idea was a planet with two moons, except the moons dont just orbit the planet, they also orbit around each other, similar to the sunflower one you showed off. obviously the net mass of the moons would be smaller than the mass from the planet, though not too much as i want the planet to vary in distance from the sun, but its cool to see that orbit visualized!
*SCIENCE:* The 3 body problem is unsolvable!
*10 YEAR OLD:* Let me get out my Spirograph set...
The square orbit :O
Now I wanna do some simulation stuff
Most these orbits need an Orbit-cuary
Why not godot?
Neat.
1N73LL1G3NC3 15 7H3 4B1L17Y 7O 4D4P7 7O CH4NG3. I was here 09/12/2024
investing