Where Can I Find Accurate Data for Simulating Solar System Orbits in Java?

Click For Summary

Discussion Overview

The discussion revolves around finding accurate data for simulating the orbits of celestial bodies in the Solar System using Java. Participants explore the necessary data, reference frames, and numerical methods for the simulation.

Discussion Character

  • Exploratory
  • Technical explanation
  • Mathematical reasoning

Main Points Raised

  • One participant seeks real data for the x, y, z coordinates of planets and their velocity components for a simulation of the Solar System.
  • Another participant suggests using a solar system barycenter frame instead of a heliocentric frame and mentions the International Celestial Reference Frame as a relevant inertial reference frame.
  • Access to the JPL Developmental Ephemerides is recommended for obtaining the desired data.
  • Discussion on the importance of using standard gravitational parameters instead of mass for calculations, noting that these parameters are known with high precision for certain celestial bodies.
  • Regarding numerical methods, RK4 is mentioned as a starting point, but alternatives that conserve energy or offer higher precision, such as Gauss Jackson integrators or Adams Bashforth Moulton integrators, are suggested.
  • A request for guidance on translating ephemerides data into xyz coordinates and corresponding velocity vectors is made.
  • Instructions on selecting the "Vectors" option in the ephemeris data interface to obtain the necessary position and velocity information are provided.

Areas of Agreement / Disagreement

Participants generally agree on the importance of using appropriate reference frames and data sources, but there are varying opinions on the best numerical methods for simulation, with no consensus on a single approach.

Contextual Notes

Limitations include potential uncertainties in the data sources and the precision of numerical methods discussed. The discussion does not resolve the best approach for translating ephemerides into usable coordinates and velocities.

trelek2
Messages
86
Reaction score
0
Hi,

i'm attempting to simulate the Solar System in Java.

I'm particularly interested in simulating orbits of celestial bodies that might enter our solar system. Therefore I need real data for my simulation.

That is: x,y,z coordinates of planets with respect to the Sun (taking the sun to be at the origin) as well as their velocity components in all directions at some point in time. I'm sure this sort of information is to be found online, however I have not yet been successful in doing this.
I have found http://cohoweb.gsfc.nasa.gov/helios/planet.html" at NASA talking about planets coordinates, but I couldn't get this to give me any useful information.

Also, which numerical method would you choose to do this. Do you think a Runge-Kutta 4th order would be accurate enough for this?
 
Last edited by a moderator:
Astronomy news on Phys.org
As a starter, I suggest you work in a solar system barycenter frame rather than a heliocentric frame. Choice of reference frames is also important. The current best guess regarding what constitutes an inertial reference frame is the International Celestial Reference Frame. This also happens to be the frame in which the JPL Developmental Ephemerides are represented. You can access these ephemerides over the internet at http://ssd.jpl.nasa.gov/?horizons. These are the data that you desire.

You are also going to need the masses of the Sun and the planets, or better yet, the appropriately, the standard gravitational parameters for the Sun and the planets. While mass is not known very well, the quantity μ=G*M is known to a high degree of precision for the Sun, the Earth, Jupiter, Saturn, Mars, and the Moon, and to a less extent for the other planets. Note that if you use μ instead of mass you do not need to (and don't want to) use G in your equations of motion.

As far as numerical methods, RK4 is an OK start, but just OK. If you want better stability you should look to a method that conserves energy. Unfortunately, most of these techniques are stable but are not particularly precise. If you want better precision, you will need to go to a higher order technique such as a Gauss Jackson integrator. A high order Adams Bashforth Moulton integrator is also a good choice, is a lot faster than RK4, and is fairly easy to program.
 
Thanks for all of this advice!

But, could you also give me some hints where I can find information on how to translate these ephemerides into xyz coords, with corresponding velocity vectors?
 
Next to "Ephemeris Type" is a change button. Choose "Vectors" and it will give you position xyz and velocity xyz.
 
Cheers!
I was so sure I somehow have to convert these data that I didn't notice this button
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 12 ·
Replies
12
Views
3K
  • · Replies 15 ·
Replies
15
Views
3K
  • · Replies 15 ·
Replies
15
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 12 ·
Replies
12
Views
3K