Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question regarding rotations with observer-centric frames #16365

Open
MetinSa opened this issue May 1, 2024 · 1 comment
Open

Question regarding rotations with observer-centric frames #16365

MetinSa opened this issue May 1, 2024 · 1 comment

Comments

@MetinSa
Copy link

MetinSa commented May 1, 2024

I wish to rotate sky coordinates (lon, lat) between ecliptic, galactic and celestial coordinates. These are observercentric coordinates with origins given by a Cartesian heliocentric position obspos and a time of observation obstime. I am essentially trying to reproduce the rotations from healpy, with healpy.rotator.Rotator which rotates between ["E", "G", "C"] with arbitrary origins (I think).

Using the SkyCoord object and the frames BarycentricMeanEcliptic, Galactic and ICRS seems to do the same as healpy's rotator. However, these are all solar system barycentric and it feels a bit weird to have users select these to represent their observercentric coordinates. Are there more fitting frames which I can use?

Ultimately my goal is to get heliocentric ecliptic unit vectors from the input coordinates and it feels like I have all the ingredients required to go directly from user a user specified frame (E, G, C) and (obspos, obstime). I have tried supplying a distance or location parameter into the various astropy frames but I don't think i understand exactly how these are meant to be used.

This is from a suggestion by @lpsinger from the pyOpenSci review for the Astropy-affiliated ZodiPy.

@eerovaher
Copy link
Member

The topocentric version of the ICRS frame is a GCRS frame with properly specified obstime, obsgeoloc and obsgeovel parameters.

I'm not aware of astropy having builtin topocentric analogues of BarycentricMeanEcliptic or Galactic frames, but I'm having doubts if converting between topocentric versions of galactic, ecliptic and equatorial (or equatorial-like) coordinates by pure rotations before transforming them to a heliocentric system is the correct thing to do. Rotating the coordinate frames is not commutable with transforming the origin of the coordinates because the barycentric (or heliocentric) position of the topocentric origin introduces parallax and the barycentric (or heliocentric) velocity introduces aberration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants