Simulating the sky from other planets

# Simulating the sky from other planets

After two months of development and testing, JPARSEC 1.93 comes with the possibility of simulating the sky as visible from a given location in the surface of any planet or satellite (and comets/asteroids). It is a feature I always wanted to implement since I collaborated with an engineer at JPL to obtain the ephemerides of Sun from the surface of Mars. Now this feature is implemented using the class ExtraterrestrialObserverElement, that can be parsed into an ObserverElement object to be used directly in the SkyChart component. In this component (or the applet located in this page) I have implemented the possiblity of going to the surface of a given body by pressing Ctrl+left click of the mouse on a given location in the surface of a planet or satellite, so it is very easy to jump from a given planet to another one. The only point to take into account is that going to another body will force the value of the time zone to be 0.0 (UTC = LT), so there will be a step of 1 or 2 hours for observers in Spain and maybe more hours for others. This can be solved by using any other time scale (not LT) to set the time before going to another body.

The equatorial coordinates shown for other bodies are computed respect the orientation of the rotation axis of that body, not the Earth, so (planetary) equatorial coordinates cannot be compared between different bodies. The direction of the axis uses the recomendations of the IAU (for the adequate year 2000, 2006, or 2009 depending on the reduction algorithms selected in the EphemerisElement object), which should be enough accurate for most or all bodies. Ecliptic/galactic coordinates are recomputed and can be compared between different planets, and horizontal ones are, as ussual, respect the local horizon and also different. This approach allows to obtain with no problem the rise, set, or transit times of any body respect the local horizon from other planets.

I have created two new videos to show just an example of the possibilities: rotating around Saturn following satellite Japeto (with Titan's shadow transiting), and the trajectory of comet ISON. The first one is here, you can watch (now or soon) the second one at the old video directory of the OAN ephemerides server.

JPARSEC 1.93 rendering test / More tests / JPARSEC 1.94 rendering test (preview)

The video shows how far JPARSEC is going for planetary rendering. There are still some details to improve, mainly the ilumination of the rings of Saturn and their shadows, so I still have some work here for the next version.

[A preview for the next 1.94 version is included above, showing better integration between planet and rings, and a correct rendering of the unlit region]

## Doing astronomy from Mars

JPARSEC uses internally the best known set of algorithms for ephemerides, so I was interested on checking the accuracy of JPARSEC against real observations from the surface of other planets. Fortunately, these kind of observations are available from the surface of Mars, thanks to the old Spirit rover and the new Curiosity one.

### Spirit

There are a number of observations available at the Spirit's Pancam instrument page. The main pages are for Spirit night time observations and for Phobos and Deimos solar transits. Since I needed the accurate time for a given phenomena from Mars, I selected as test the night time observation of the eclipse of Phobos on November 27, 2005, between 2:14 and 2:17 UTC. Using ephemerides from the Earth the time when the eclipse reaches 100% is around 2:21:15 UTC, that corrected from light-time effects goes to 2:16:50 UTC. I had to touch just a little the algorithm developed in RenderSky class to reach a result in the same second. The simulation is shown in the figure below, from Mars coordinates 175º.4785 E, 14º.5718 S, that corresponds to the landing site at Gusev crater.

I did a second test to see the positions of both Phobos and Deimos against the background stars in Tauro, close to Aldeberan and the Pleiades. The shot was taken by Spirit on August 30, 2005, but the exact time is not given at the Pancam page.

I modified the time to 'fit' the position of Phobos, resulting in a time of 18:10:15 UTC. Compared with the observation by Spirit is evident some discrepancy in the position of Deimos, besides some inclination of the rover when it took the shot. Other tests using the pages mentioned above still shows a little discrepancy with Deimos, but not with Phobos.

### Curiosity

Curiosity has also observed some solar transit events, that are used to improve the orbits of Phobos and Deimos. The perturbations in the orbits of the satellites respect previous observations can also give valuable information about the mass distribution inside Mars (and how it changes when the satellite moves around), since gravitational potentials (J2, J3, … terms and their variations) are not negligible, specially for Phobos. The same occurs with (artificial) satellites on Earth.

Spirit also observed plenty of them, but I have no information about the exact second and the tool to retrieve the raw images seems not very good for searching these kind of events. So I selected here the first partial solar transit of Phobos observed by Curiosity, that had its maximum on September 13, 2012, at 5:15:30 UTC. The simulation was done from Curiosity's landing site (Gale crater), that according to Wikipedia is at 137º.4417 E, 4º.5895 S. Raw images from Mastcam in Sol 37 shows a partial eclipse from 5:15:25.0 to 5:15:42.0 UTC, while in my simulation the eclipse is visible between 5:15:25 to 5:15:38 UTC. The elevation of the Curiosity respect the reference level on Mars is, in a fast look, around -2000 +/- 2000m. In my calculations I use 0 as elevation, and I have checked that setting it to -2000 makes the transit start two seconds before and end two seconds after (1s per 1000 m), obtaining exactly the same duration for the transit. So the real trajectory of Phobos seems identical to the one resulting from the theory by Lainey et al. 2007 (Lainey, V., Dehant, V. and Paetzold, M. “First numerical ephemerides of the Martian moons”, Astronomy & Astrophysics, vol 465 pages 1075-1084 (2007)), but delayed by 2s respect my predictions. Anyway, Phobos is not exactly an sphere with constant density (I suggest you to read the paper by Lainey) and this can also affect the timings. One the main guys working with the Curiosity on these things is Mark Lemmon, that also worked with Spirit's Pancam. I suppose they use numerical integration instead of analytical theories to predict these events, but anyway recent analytical theories (fitted to numerical integration ones) are very precise. I wonder if my results are similar or not to those obtained by them.

The image below shows the results (for an elevation of 0 m), very close to the real observations. Maybe Curiosity was inclined about 5º to the right, since some stars can be identified in the field.

As conclusion, I'm getting close to the point I always wanted to reach in accuracy, visual quality, and performance in JPARSEC. I would emphasize how robust is the library when creating a video with a rotation around Saturn, with lot of details in the image that are not easy to get, especially considering I'm rendering everything in Java2D (pixel by pixel, including all 3d stuff and lighting by hand), without any work delegated to the GPU except what Java internally does.

## Discussion

  _   __   ____ __  __  _____   __ __
|___/  /_/      /_/  \___/  /_//_/