You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
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.
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 positionobspos
and a time of observationobstime
. I am essentially trying to reproduce the rotations from healpy, withhealpy.rotator.Rotator
which rotates between["E", "G", "C"]
with arbitrary origins (I think).Using the
SkyCoord
object and the framesBarycentricMeanEcliptic
,Galactic
andICRS
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 adistance
orlocation
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.
The text was updated successfully, but these errors were encountered: