WCS_ROTATE
Name
WCS_ROTATE
Purpose
Rotate between standard (e.g. celestial) and native coordinates
Explanation
Computes a spherical coordinate rotation between native coordinates
and standard celestial coordinate system (celestial, Galactic, or
ecliptic). Applies the equations in Appendix B of the paper
"Representation of Celestial Coordinates in FITS" by Calabretta
Greisen (2002, A&A, 395, 1077). Also see
http://fits.gsfc.nasa.gov/fits_wcs.html
Category
Mapping and Auxiliary FITS Routine
Calling Sequence
WCS_ROTATE, longitude, latitude, phi, theta, crval, theta0 =
[LONGPOLE = , LATPOLE = , PV1 = , /REVERSE, /ORIGIN ]
Input Parameters
crval - 2 element vector containing standard system coordinates (the
longitude and latitude) of the reference point
INPUT OR OUTPUT PARAMETERS
longitude - longitude of data, scalar or vector, in degrees, in the
standard celestial coordinate system
latitude - latitude of data, same number of elements as longitude,
in degrees
theta - latitude of data in the native system, in degrees, scalar or
vector
If the keyword(REVERSE) is set then phi and theta are input parameters
and longitude and latitude are computed. Otherwise, longitude and
latitude are input parameters and phi and theta are computed.
Optional Keyword Input Parameters
THETA0 - Native latitude of the reference point (required unless PV1 set)
PV1 - Vector giving parameters of user-defined fiducial point
LONGPOLE - native longitude of standard system's North Pole
LATPOLE - native latitude of the standard system's North Pole
/REVERSE - if set then phi and theta are input parameters and longitude
and latitude are computed. By default, longitude and
latitude are input parameters and phi and theta are computed.
/ORIGIN This keyword is obsolete and is no longer used. Replaced by
explicitly specifying theta0 and/or PV1
Revision History
Written W. Landsman December, 1994
Fixed error in finding North Pole if /ORIGIN and LONGPOLE NE 180
Xiaoyi Wu and W. Landsman, March, 1996
Fixed implementation of March 96 error, J. Thieler, April 1996
Updated to IDL V5.0 W. Landsman December 1997
Fixed determination of alpha_p if /ORIGIN and LONGPOLE EQ 180
W. Landsman May 1998
Ensure argument of ASIN() is -1<x<-1 after roundoff
W. Landsman/R. Arendt June 2002
Call WCS_GETPOLE, accept LATPOLE keyword, update cylindrical coords
W. Landsman June 2003
Don't attempt to rotate NaN values W. Landsman May 2004
at some unknown time theta0 introduced
Traps put in to detect no rotation and avoid rounding errors for
common special cases. PV1 introduced. Comments updated & corrected.
J. P. Leahy July 2013.
Avoid roundoff error when longitude = +/- 180 W. Landsman Dec 2013