# Why does my Saturnian System simulation “rotate” over time?

I am attempting to create a "top-down view" of the Saturnian System, using the Keplerian Elements + Rates provided here: https://ssd.jpl.nasa.gov/?sat_elem#saturn

To verify the validity of my simulation, I am using this NASA simulator: https://space.jpl.nasa.gov/

When I compare my findings with the NASA simulation, I realize that I am doing something wrong:

1. JAN 1, 2000 (EPOCH): Simulation matches NASA simulation
2. JAN 1, 2002: Simulation needs to be rotated 30 degrees to match NASA simulation
3. JAN 1, 2004: Simulation needs to be rotated 60 degrees to match NASA simulation

So as time passes from the EPOCH I need to adjust my simulation by roughly 15 degrees per year to continue to have it match.

Why is this? Is this due to the changing angle between Saturn and the Earth, or am I not understanding the "Laplace Plane"?

NOTE: I am using the same logic I used to create a simulation for the 8 planets in our solar system and this simulation does not have this issue.

NOTE2: To calculate the "Longitude rate" for the moons, I multiple the value for "n" found on the JPL webpage by 36525 Julian Days (e.g. 381.9944948 degrees/day x 36525).

1) HOW I DO MY SIMULATION

First I used the elements & rates from the following JPL table: I noticed that the table does not give me "MEAN LONGITUDE" and "LONGITUDE OF PERIHELION". So I calculate them using the following formula:

• LONG. PERIHELION(W) = ARG. PERIHELION(w) + LONG. ASC. NODE(☊)
• MEAN LONGITUDE(L) = LONG. ASC. NODE(☊) + ARG. PERIHELION(w) + MEAN
ANOMALY(M)

Next to that, I realize I am missing the following rates:

• a
• e
• i

So I set those all to 0 degrees per century. I know this is not ideal, but I can't imagine these rates would amount to a 30 degree mismatch after 2 years.

Finally, I calculate the "LONGITUDE RATE" using this formula: LONGITUDE RATE = n * 36,525 JULIAN DAYS

Since the position of moons match with the NASA simulation @J2000, I would think I am making a calculation mistake with this "LONGITUDE RATE"...

2) ROTATION AFTER SHORTER TIME PERIODS (6 MONTHS + 1 YEAR)

1. JUL 1, 2000: Simulation needs to be rotated 10 degrees clockwise to match NASA simulation
2. JAN 1, 2001: Simulation needs to be rotated 20 degrees clockwise to match NASA simulation

So it doesn't look it is 360 + 30...

Find here the complete JS source code for the Saturnian Simulation for reference with the issue described here:

http://www.chris_j.dds.nl/saturnian.js

• It may be difficult to answer "what's wrong with my simulation" when you don't explain how you do your simulation or what effects you take into account. Real orbits are not Keplerian, there are all kinds of perturbations. Jupiter has a strong J2 for example, so if you are not using at least a quadrupole field your gravity isn't correct. Also, have you checked at shorter time periods, are you sure it's not 360+30 degrees every year instead of just 30 degrees? – uhoh Jun 24 '19 at 7:09
• Thank you for the feedback uhoh. I will add some additional information later today (including shorter time periods). – sloesp Jun 24 '19 at 14:53
• Hi uhoh. I updated the question with additional information. Many thanks! – sloesp Jun 25 '19 at 1:57
• that's great, I will have a look in a few minutes, thanks! – uhoh Jun 25 '19 at 2:02
• Hi uhoh, I have now also provided a link to the full JavaScript source code. It's a bit of a mess, but hope that helps. – sloesp Jun 25 '19 at 5:12

See below screenshot, comparing positions of the moon on Jan 1, 2024 (the last year of the NASA simulation). This corresponds to a Saturn rotation of 293.4 degrees since J2000: 