CIRS#
- class astropy.coordinates.CIRS(*args, copy=True, representation_type=None, differential_type=None, **kwargs)[source]#
Bases:
BaseRADecFrameA coordinate or frame in the Celestial Intermediate Reference System (CIRS).
CIRS is a geocentric reference system that serves as the intermediate step between the quasi-inertial
ICRS(fixed to distant quasars) and the Earth-fixedITRS. It was introduced by the International Astronomical Union (IAU) 2000 and 2006 resolutions to replace the older equinox-based “apparent place” systems with a cleaner, higher-precision framework.Definition
CIRS is defined by two fundamental concepts:
Celestial Intermediate Pole (CIP) — the pole of the system. Its motion in the
GCRSis described by the IAU 2006 precession model combined with the IAU 2000A nutation model, giving micro-arcsecond accuracy.Celestial Intermediate Origin (CIO) — the origin of right ascension in CIRS. Unlike the classical vernal equinox (which is defined by the intersection of the Earth’s equator and the ecliptic and therefore “swings” with precession and nutation), the CIO is a non-rotating origin: it is defined so that it has no rotation component around the CIP. This cleanly separates the Earth’s spin (described by the Earth Rotation Angle, ERA) from its wobble (precession and nutation).
Relation to other frames
ICRS → CIRS: applying the IAU precession-nutation model rotates the ICRS axes to the intermediate (CIP/CIO) axes. Astropy performs this via the ERFA
apco/atciqzroutines.CIRS → ITRS: a single rotation by the Earth Rotation Angle (ERA) around the CIP axis. ERA is a linear function of UT1 and replaces the more complex “equation of the equinoxes” needed in the older equinox-based systems.
CIRS vs. GCRS: both share the same pole (CIP) and the same geocentric origin, but they differ in their right-ascension origin. GCRS uses the equinox; CIRS uses the CIO. The angular offset between the two origins along the intermediate equator is called the equation of the origins (EO).
Astropy implementation
Astropy implements CIRS using the ERFA library (the open-source version of IAU SOFA), which provides the IAU 2006/2000A precession-nutation model. The default
locationis the geocentre; supply anEarthLocationto get the topocentric variant (which additionally accounts for diurnal aberration).For more background see Section 2.6 of USNO Circular 179 and the references in the See Also section of the documentation.
The frame attributes are listed under Other Parameters.
- Parameters:
- data
BaseRepresentationsubclass instance A representation object or
Noneto have no data (or use the coordinate component arguments, see below).- ra
Angle, optional, keyword-only The RA for this object (
decmust also be given andrepresentationmust be None).- dec
Angle, optional, keyword-only The Declination for this object (
ramust also be given andrepresentationmust be None).- distance
Quantity[:ref: ‘length’], optional, keyword-only The Distance for this object along the line-of-sight. (
representationmust be None).- pm_ra_cosdec
Quantity[:ref: ‘angular speed’], optional, keyword-only The proper motion in Right Ascension (including the
cos(dec)factor) for this object (pm_decmust also be given).- pm_dec
Quantity[:ref: ‘angular speed’], optional, keyword-only The proper motion in Declination for this object (
pm_ra_cosdecmust also be given).- radial_velocity
Quantity[:ref: ‘speed’], optional, keyword-only The radial velocity of this object.
- representation_type
BaseRepresentationsubclass,str, optional A representation class or string name of a representation class. This sets the expected input representation class, thereby changing the expected keyword arguments for the data passed in. For example, passing
representation_type='cartesian'will make the classes expect position data with cartesian names, i.e.x, y, zin most cases unless overridden viaframe_specific_representation_info. To see this frame’s names, check out<this frame>().representation_info.- differential_type
BaseDifferentialsubclass,str,dict, optional A differential class or dictionary of differential classes (currently only a velocity differential with key ‘s’ is supported). This sets the expected input differential class, thereby changing the expected keyword arguments of the data passed in. For example, passing
differential_type='cartesian'will make the classes expect velocity data with the argument namesv_x, v_y, v_zunless overridden viaframe_specific_representation_info. To see this frame’s names, check out<this frame>().representation_info.- copybool, optional
If
True(default), make copies of the input coordinate arrays. Can only be passed in as a keyword argument.
- data
- Other Parameters:
- obstime
Time The time at which the observation is taken. Used for determining the position of the Earth and its precession.
- location
EarthLocation The location on the Earth. This can be specified either as an
EarthLocationobject or as anything that can be transformed to anITRSframe. The default is the centre of the Earth.
- obstime
Attributes Summary
Default representation for differential data (e.g., velocity)
Default representation for position data
Mapping for frame-specific component names
The location on Earth of the observer
The reference time (e.g., time of observation
Attributes Documentation
- default_differential#
Default representation for differential data (e.g., velocity)
- default_representation#
Default representation for position data
- frame_attributes = {'location': <astropy.coordinates.attributes.EarthLocationAttribute object>, 'obstime': <astropy.coordinates.attributes.TimeAttribute object>}#
- frame_specific_representation_info#
Mapping for frame-specific component names
- location#
The location on Earth of the observer
Default: (0.0, 0.0, 0.0) km
- name = 'cirs'#
- obstime#
The reference time (e.g., time of observation
Default: J2000.000