AXAFCoords - transform between various coordinate systems
dofile ('/proj/axaf/simul/lib/lua/AXAFCoords.lua')
el, az = osac_polar_2_osac_elaz( theta, phi ) theta, phi = osac_elaz_2_osac_polar( el, az )
theta, phi = osac_polar_2_HSC11( theta, phi ) theta, phi = HSC11_2_osac_polar( theta, phi )
el, az = pitchyaw_2_osac_elaz( pitch, yaw )
x, y = osac_elaz_2_xy( el, az, z )
theta, phi = osac_polar_2_raygen_polar( theta, phi )
theta, phi = raygen_polar_to_MSC( theta, phi )
theta, phi = MSC_to_raygen_polar( theta, phi )
el, az = raygen_polar_2_raygen_elaz( theta, phi ) theta, phi = raygen_elaz_2_raygen_polar( el, az )
The AXAFCoords library provides routines to convert between various coordinate systems. Currently, it primarily handles source position coordinates.
PI = 3.14159265358979323846
factor to convert from seconds of arc to radians
factor to convert from minutes of arc to radians
factor to convert from degrees to radians
factor to convert from radians to degrees
Convert from OSAC
polar coordinates to OSAC
elevation and azimuth. All
angles are in radians. Input angles are reduced such that
0 <= phi < 2pi and 0 <= theta <= pi/2
Convert from OSAC
polar coordinates (which indicate the direction
that the ray is travelling to) to raygen polar coordinates, which indicate
the direction the ray is travelling from. All angles are in radians.
Convert from OSAC
elevation and azimuth to OSAC
polar coordinates.
All angles are in radians. Input angles are reduced to be 0 <= angle
<= pi/2.
Convert from OSAC
polar coordinates to HRMA
Left Handed Spherical
Coordinates (AXAF-HSC-1.1). All angles are in radians.
convert from AXAF-HSC-1.1 to OSAC
polar coordinates. All angles are
in radians.
Convert from raygen polar coordinates to Mirror Spherical Coordinates. All angles are in radians.
convert from Mirror Spherical Coordinates to raygen polar coordinates. All angles are in radians.
convert from XRCF pitch and yaw to OSAC
elevation and azimuth.
Pitch and Yaw are in minutes of arc; the output angles are in
radians.
convert from OSAC
elevation and azimuth to OSAC
X and Y at
a particular OSAC
Z. All angles are in radians.
( $theta, $phi ) = raygen_elaz_2_raygen_polar( $el, $az );
Convert from raygen elevation and azimuth to raygen polar coordinates. All angles are in radians. Input angles are reduced to be 0 <= angle <= pi/2.
( $el, $az ) = raygen_polar_2_raygen_elaz( $theta, $phi );
Convert from raygen polar coordinates to raygen elevation and azimuth. All angles are in radians. Input angles are reduced such that 0 <= phi < 2pi and 0 <= theta <= pi/2
Diab Jerius ( djerius@cfa.harvard.edu )