Page 1 of 1

Mars Custom orbit does not match solar.ssc code in 1.3.1

Posted: 01.01.2004, 03:28
by fsgregs
Hi folks:

I downloaded 1.3.1 final and am pleased with it, but I just noticed something odd. Some time ago, I installed several add-on extras that replace the existing Mars with changed versions (terraformed Mars) of the future. To do so, I simply placed an Ending command for Mars in the main solarsys.ssc file, and created a new add-on ssc file for the new Mars texture which uses the same elliptical orbit parameters that Mars is supposed to be following in its hard-coded "vsop87-Mars custom orbit". In the past, the custom orbit and the "elliptical orbit" parameters listed in solarsys.ssc matched perfectly and my terraformed Mars was positioned exactly where one would expect Mars to be in the year 2500. However, after installing 1.3.1 final, I discovered that my new Mars is no longer positioned in the same location that the original Mars was. They are in fact, now over 2,000,000 km apart. Naturally, I checked and rechecked the orbit parameters I used in the Extras ssc file and they exactly match the listed parameters that the solarsys.ssc file says the Mars orbit is supposed to have. Also, the new Mars texture ssc file worked fine in earlier versions of 1.3.1.

It seems that something has changed in the custom orbit for Mars in 1.3.1 final. It no longer appears to match the elliptical orbit values found in the solarsys.ssc file. Alternatively, perhaps 1.3.1. final somehow makes different computations now between custom orbit code and elliptical orbit code.

In any case, when I inserted the words "custom orbit - vsop87-Mars" as a new line in my extras ssc file for my new Mars texture, it worked fine and my Mars of the future appeared where it should have (in place of the current Mars).

Is this a bug, or is there some other explanation? It would be very good to know to prevent future problems. I also have not checked it with other replacement textures for other planets I have, but ....

Frank

Posted: 01.01.2004, 13:50
by JackHiggins
The customOrbit is much, MUCH more accurate than any ellipticalOrbit. Are you sure they matched up perfectly before? I've always seen them to be very different when I turned one off and enabled the other... (For anything, not just Mars)

How come you took out the customOrbit definition for your terraformed Mars in the addon ssc anyway? (Just as a matter of interest)

Posted: 01.01.2004, 20:20
by fsgregs
Hi Jack:

I copied and used the Elliptical Orbit parameters for Mars from solarsys.ssc simply because I thought they were identical to the custom orbit, and because I didn't realize you could call up the custom orbit simply by inserting the line. I somehow thought it was reserved for only solarsys.ssc use, not other ssc files.

That still begs the question of why the elliptical orbit parameters in solarsys.ssc are not identical to the custom orbit parameters? I thought Chris put them there as a courtesy to us, in case we wanted to use them to place other objects in the same orbit? Does that mean we should disregard them as inaccurate?

:?

Frank

Posted: 01.01.2004, 21:09
by selden
Frank,

Yes, a CustomOrbit declaration can be used in any SSC file, so long as it names one of the routines that are written into Celestia.

An EllipticalOrbit definition using Keplerian orbital elements can't take into account the perturbations caused by gravitational effects due to other bodies. Those effects can add up to a big difference after a thousand years!

Whenever Celestia provides a CustomOrbit, it's going to be much better than a generic EllipticalOrbit. The VSOP87 polynomials include enough of the relevant gravitational effects to make them accurate for most of the planets to better than one arc second (as seen from the Earth) from about 1000 BC to 3000 AD.

Ref:

Bretagnon P., Francou G., : 1988, Astron. Astrophys., 202, 309.

Posted: 01.01.2004, 21:12
by chris
fsgregs wrote:I copied and used the Elliptical Orbit parameters for Mars from solarsys.ssc simply because I thought they were identical to the custom orbit, and because I didn't realize you could call up the custom orbit simply by inserting the line. I somehow thought it was reserved for only solarsys.ssc use, not other ssc files.
You can use custom orbits in any .ssc file, though it's impossible to create a new custom orbit without modifying Celestia.

That still begs the question of why the elliptical orbit parameters in solarsys.ssc are not identical to the custom orbit parameters? I thought Chris put them there as a courtesy to us, in case we wanted to use them to place other objects in the same orbit? Does that mean we should disregard them as inaccurate?

If the elliptical orbit parameters specified a trajectory identical to the custom orbit, why bother with custom orbits at all? The fact is that a simple ellipse is a very inadequate description of the orbits of most solar system bodies because of mutual perturbations. The elliptical orbits remain in solarsys.ssc mostly as documentation--a possible aid to anyone who feels like tweaking .ssc files.

--Chris

Posted: 02.01.2004, 01:42
by granthutchison
Frank:
I'm not getting the effect you describe. If I set up a dummy Mars with the elliptical elements from solarsys.ssc, it is the same distance away from the CustomOrbit "real" Mars in Celestia versions 1.3.0, 1.3.1pre11 and in 1.3.1 ... provided I set the date and time the same in each program version. Since the elliptical elements listed in solarsys.ssc are correct only for epoch J2000.0, the further from that epoch you go, the bigger a difference you're going to see between CustomOrbit Mars and EllipticalOrbit Mars. Because the listed elements aren't given to many decimal places, they're not exactly aligned with Mars even at epoch - there's just never a perfect match.

I can completely understand what you're observing in 1.3.1 - it's entirely predictable that CustomOrbit Mars will have moved a long way from the EllipticalOrbit definition by 2500. What I don't understand is your report that they used to align perfectly in previous versions.
When I built the ssc for your Mars terraforming mirrors in 1.3.0, you'll maybe recall I set the mirrors in an elliptical orbit around Mars, aligned to keep them opposite the Sun at all times - their orbit was effectively a small-scale mirror-image of Mars' elliptical elements. But I needed to set up several "generations" of mirror models, because any given set of elliptical elements would match Mars' CustomOrbit for only a century or so, and then the mirrors would drift very visibly out of alignment - so I had to calculate new elliptical elements for Mars, which I then plugged into my mirror orbits, every few hundred years.
So there's a very clear mismatch between EllipticalOrbit and CustomOrbit dating back to 1.3.0, and almost certainly before (I just haven't checked). So I'm puzzled why this fact hasn't made itself a nuisance in your ssc's before now. Very odd ...

Grant