Stellarium / stellarium

Stellarium is a free GPL software which renders realistic skies in real time with OpenGL. It is available for Linux/Unix, Windows and macOS. With Stellarium, you really see what you can see with your eyes, binoculars or a small telescope.
https://stellarium.org
GNU General Public License v2.0
7.56k stars 815 forks source link

Antisolar point for other planets #1481

Closed Atque closed 3 years ago

Atque commented 3 years ago

The antisolar point feature is very nice, but I think it could be applied to other planets. It would be a point exactly 180 degrees from the sun, seen from planet center.

It would help a lot when searching for Jupiter oppositions from Mars etc.

github-actions[bot] commented 3 years ago

Thank you @Atque for suggesting this enhancement.

alex-w commented 3 years ago

Note: antisolar point and opposition longitude are calculated in ecliptic coordinate system, which is not applicable outside of the Earth.

Atque commented 3 years ago

@alex-w Hm, I see. That makes it more complicated. Couldn't the point just be added by placing it exactly 180 degrees from the Sun center at all times?

gzotti commented 3 years ago

The antisolar point from a planet should be simple: it's at the heliocentric coordinates of the planet.

Atque commented 3 years ago

@gzotti Interesting. Would it be possible to calculate each planet's ecliptic pole (90 degrees from the antisolar point), and even an ecliptic for the planet?

gzotti commented 3 years ago

That's less easy. (Else I would have done it :-) 90 degrees away, sure. But in which direction? If you develop (or find) an algorithm to show a "planet ecliptic" in terms of ICRF, please forward it.

Atque commented 3 years ago

@gzotti Wouldn't it simply be in the direction of the Sun? And the ecliptic would be a great circle 90 degrees from the poles? Maybe I'm oversimplifying it...

gzotti commented 3 years ago

You can draw a circle 90° away from the antisolar point. You can draw another circle 90° away from the sun and try to intersect them. Hey, wait, they are identical by definition, right? 3 points define a circle. Maybe the planet's motion vector can be used? It points tangentially along the orbit, so a circle 90° around this, intersecting with a 90° circle around the sun, would define the "ecliptic poles". This might define a sort of "current ecliptic circle" (just an idea). But where do you place the zero mark? How do you e.g. find the intersection of this circle with the planet's equator to define "spring equinox"? It's not on my shortlist of tasks, but you can do the math and we code it then. It's not something a typical user will ever see or need. Maybe I add such "planet ecliptic", but without partitions and labeled grid.

alex-w commented 3 years ago

I've switch calculation of anti solar point in ecliptic (J2000) frame ;)

Atque commented 3 years ago

@gzotti Ok, it's way more complicated than I had thought. I can't provide you with data or calculations. When I want to see the "ecliptic" of a planet (the true ecliptic), then I just use the ephemeris tool, so there is a workaround.

@alex-w Thank you for the fast solution. I can't build and test right now, but wouldn't using J2000 frame mean that the antisolar point will be off when using dates far in the past or future?

gzotti commented 3 years ago

about J2000 frame: No problem, that should be the correct solution. Just try and see.

Yes, the ephemeris tool for the sun should give an "ecliptic line" as well...

github-actions[bot] commented 3 years ago

Please check the fresh version (development snapshot) of Stellarium: https://github.com/Stellarium/stellarium-data/releases/tag/weekly-snapshot

github-actions[bot] commented 3 years ago

Please check the latest stable version of Stellarium: https://github.com/Stellarium/stellarium/releases/latest