Page 1 of 1

New Orbit Options in Celestia (Feature Request)

Posted: 04.01.2006, 06:14
by MKruer
I think this has been brought up a few times before as possible improvements for Celestia.

First is to add an option to display LaGrange Point of planets in orbit when the planet is selected. This should be fairly simple to add.

Mass of Primary (M)
Mass of Child (m)
Distance between Objects (R)

Mass must be greater then 25 to 1 for Lagrange Points to exist
a = m/(M+m)

L1: (R[1-(a/3)^(1/3)]) @ 0 Degrees in orbit
L2: (R[1+(a/3)^(1/3)]) @ 0 Degrees in orbit
L3: (-R[1+(5/12)*a]) @ 180 Degrees in orbit
L4: (R) @ +60 Degrees in orbit
L5: (R) @ -60 Degrees in orbit

This might be overly simple but this is what my research has produced without getting really deep in the mathematics.


Second add a way to track how far an object moves in a give time period. This could be accomplished my adding tick marks to orbital path or by using some sort of color ramp along the orbit in hour, day, year increments.

Re: New Orbit Options in Celestia (Feature Request)

Posted: 05.01.2006, 16:06
by Chuft-Captain
MKruer wrote:...option to display LaGrange Point of planets in orbit when the planet is selected. ...


Just one minor question regarding the above. Did you want to display the Earth-Moon trojan points or the Earth-Sun trojan points.
For Celestia to know which, I think it would have to be implemented as follows : you would have to select the secondary object in the pecking order of the system of interest. For example, if you selected the Earth, Celestia would find that it's parent is Sol and display the Earth-Sun L-points. If you selected the Moon, it would find it's parent is the Earth and display the Earth-Moon L-points. I'm not sure how this would work if the anyone had re-modelled any part of their solarsystem with kludged barycentres as I have for the Earth-Moon system.

From what I understand, the more bodies in the system the more complex the maths to calculate correct orbits for Lagrange points (if stable solutions even exist). I'm thinking of perhaps Jupiter or Saturn for example.
I too, would like to see this as a built in feature as I've spent a heap of time defining my own Lagrange points (well L4 and L5 anyway), and I still don't know if they are absolutely correct, but because of the above I think this would probably be no mean task for the developer who had to code this feature to work for any selected object in any solar-system.

Posted: 08.01.2006, 08:03
by MKruer
Chuft-Captain wrote:Just one minor question regarding the above. Did you want to display the Earth-Moon trojan points or the Earth-Sun trojan points.

I just want to be able to display all LaGrange Points for any planet, and be able to call that point up when scripting. L4 and L5 are by far the easiest to implement. Because they would always be +60 -60 in the orbit no matter how eccentric it is.

Chuft-Captain wrote:For Celestia to know which, I think it would have to be implemented as follows : you would have to select the secondary object in the pecking order of the system of interest. For example, if you selected the Earth, Celestia would find that it's parent is Sol and display the Earth-Sun L-points. If you selected the Moon, it would find it's parent is the Earth and display the Earth-Moon L-points. I'm not sure how this would work if the anyone had re-modelled any part of their solarsystem with kludged barycentres as I have for the Earth-Moon system.

Finding the parent is fairly easy. Its actually listed in the ssc files for every object.

Chuft-Captain wrote:From what I understand, the more bodies in the system the more complex the maths to calculate correct orbits for Lagrange points (if stable solutions even exist). I'm thinking of perhaps Jupiter or Saturn for example.

This is where it gets interesting because the math that I outlined is only for a two body system. try to calculate a three plus body configuration requires a lot of iteration because we currently lack the mathematical language to accurately calculate such an event. So with that understating all LaGrange Points would be only two body version.

Chuft-Captain wrote:I too, would like to see this as a built in feature as I've spent a heap of time defining my own Lagrange points (well L4 and L5 anyway), and I still don't know if they are absolutely correct, but because of the above I think this would probably be no mean task for the developer who had to code this feature to work for any selected object in any solar-system.


Again L4 and L5 would be easy its just +60/-60 degrees in the objects orbit. Nothing more. L1, L2 and L3 are a different story because now you would have to calculate the distance based upon the mass and distance of the objects in question, and as far as I know Celestia is not set up to do that, although I have seen the Mass tag in some ssc files before, hoping that mass will be added to future versions of Celestia.

Posted: 08.01.2006, 13:14
by Chuft-Captain
MKruer wrote:
Chuft-Captain wrote:Just one minor question regarding the above. Did you want to display the Earth-Moon trojan points or the Earth-Sun trojan points.
I just want to be able to display all LaGrange Points for any planet, and be able to call that point up when scripting. L4 and L5 are by far the easiest to implement. Because they would always be +60 -60 in the orbit no matter how eccentric it is.
The names of these points would have to be generated in such a way as to allow you to uniquely identify them in the script. Perhaps for example, prefixing with the name of the sub-ordinate body.
ie. "Moon-L1", "Moon-L2",..."Moon-L5"; for Earth-Moon libration.
"Earth-L1", "Earth-L2",..."Earth-L5" for Sun-Earth libration.

MKruer wrote:
Chuft-Captain wrote:For Celestia to know which, I think it would have to be implemented as follows : you would have to select the secondary object in the pecking order of the system of interest. For example, if you selected the Earth, Celestia would find that it's parent is Sol and display the Earth-Sun L-points. If you selected the Moon, it would find it's parent is the Earth and display the Earth-Moon L-points. I'm not sure how this would work if the anyone had re-modelled any part of their solarsystem with kludged barycentres as I have for the Earth-Moon system.
Finding the parent is fairly easy. Its actually listed in the ssc files for every object.
Yes I know. You may have mis-understood me. What I was trying to say is that it would be un-reasonable to expect Celestia to display the Earth-Moon lagrange points when you clicked on the Earth. If you selected Earth, then the L1...L5 points associated with the Earth-Sun(parent) relationship would be displayed. If you clicked on the moon, then it would be the L1..L5 points of the Moon-Earth system. (which are a hell of a lot closer!)

I would be satisfied with the L4 and L5 points in the meantime. I want to start colonising L5 with my O'neill habitats: http://celestiaproject.net/forum/viewtopic.php ... de069b3ef9
(before the end of the century)

MKruer wrote:....L1, L2 and L3 are a different story because now you would have to calculate the distance based upon the mass and distance of the objects in question...

How much do you think the L1...L3 positions would be affected by what the moon is made of:
:lol: http://www.celestiaproject.net/forum/viewtopic ... ght=#66357

Re: New Orbit Options in Celestia (Feature Request)

Posted: 18.01.2006, 23:04
by Apollonian
MKruer wrote:First is to add an option to display LaGrange Point of planets in orbit when the planet is selected. This should be fairly simple to add.


Nice! This would certainly be a cool addition.