SkyCoordinates.h File Reference

Author:
Creighton, T.This header covers routines to perform coordinate transformations among the various spherical coordinate systems used in astronomy.
More...

#include <lal/LALStdlib.h>

Include dependency graph for SkyCoordinates.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  tagSkyPosition
 This structure stores the two spherical coordinates of a sky position; ie a generic latitude and longitude; the structure is not defined specific to a particular coordinate system, but maintains a tag indicating which coordinate system it is expressed in. More...
struct  tagEarthPosition
 This structure stores the location of a point on (or near) the surface of the Earth in both geodetic and geocentric coordinates, as described in TerrestrialCoordinates.c . More...
struct  tagConvertSkyParams
 This structure stores parameters for the function LALConvertSkyPosition(). More...

Defines

Error codes
#define SKYCOORDINATESH_ENUL   1
#define SKYCOORDINATESH_ESYS   2
#define SKYCOORDINATESH_EZERO   3
#define SKYCOORDINATESH_ESING   4
#define SKYCOORDINATESH_MSGENUL   "Unexpected null pointer in arguments"
#define SKYCOORDINATESH_MSGESYS   "Wrong coordinate system in input"
#define SKYCOORDINATESH_MSGEZERO   "Angular coordinates undefined at origin"
#define SKYCOORDINATESH_MSGESING   "Point is inside singular ellipsoid"

Typedefs

typedef tagSkyPosition SkyPosition
 This structure stores the two spherical coordinates of a sky position; ie a generic latitude and longitude; the structure is not defined specific to a particular coordinate system, but maintains a tag indicating which coordinate system it is expressed in.
typedef tagEarthPosition EarthPosition
 This structure stores the location of a point on (or near) the surface of the Earth in both geodetic and geocentric coordinates, as described in TerrestrialCoordinates.c .
typedef tagConvertSkyParams ConvertSkyParams
 This structure stores parameters for the function LALConvertSkyPosition().

Enumerations

enum  CoordinateSystem {
  COORDINATESYSTEM_HORIZON, COORDINATESYSTEM_GEOGRAPHIC, COORDINATESYSTEM_EQUATORIAL, COORDINATESYSTEM_ECLIPTIC,
  COORDINATESYSTEM_GALACTIC
}
 This enumerated type is used to identify data as being in one of the coordinate systems discussed in SkyCoordinates. More...

Functions

 NRCSID (SKYCOORDINATESH,"$Id: SkyCoordinates.h,v 1.19 2007/06/08 14:41:47 bema Exp $")
void LALGalacticToEquatorial (LALStatus *, SkyPosition *output, SkyPosition *input)
void LALEquatorialToGalactic (LALStatus *, SkyPosition *output, SkyPosition *input)
void LALEclipticToEquatorial (LALStatus *, SkyPosition *output, SkyPosition *input)
void LALEquatorialToEcliptic (LALStatus *, SkyPosition *output, SkyPosition *input)
void LALGeographicToEquatorial (LALStatus *, SkyPosition *output, SkyPosition *input, LIGOTimeGPS *gpsTime)
void LALEquatorialToGeographic (LALStatus *, SkyPosition *output, SkyPosition *input, LIGOTimeGPS *gpsTime)
void LALSystemToHorizon (LALStatus *, SkyPosition *output, SkyPosition *input, const SkyPosition *zenith)
void LALHorizonToSystem (LALStatus *, SkyPosition *output, SkyPosition *input, const SkyPosition *zenith)
void LALGeodeticToGeocentric (LALStatus *, EarthPosition *location)
void LALGeocentricToGeodetic (LALStatus *, EarthPosition *location)
void LALConvertSkyCoordinates (LALStatus *, SkyPosition *output, SkyPosition *input, ConvertSkyParams *params)
void LALNormalizeSkyPosition (LALStatus *status, SkyPosition *posOut, const SkyPosition *posIn)
 LAL interface to XLALNormalizeSkyPosition().
int XLALNormalizeSkyPosition (SkyPosition *posInOut)
 If sky-position is not in the canonical range $(\alpha,\delta)\in [0,2\pi]\times[-\pi/2, \pi/2]$, normalize it by mapping it into this coordinate-interval.


Detailed Description

Author:
Creighton, T.This header covers routines to perform coordinate transformations among the various spherical coordinate systems used in astronomy.

D.

Date:
2002

Definition in file SkyCoordinates.h.


Define Documentation

#define SKYCOORDINATESH_ENUL   1

Definition at line 41 of file SkyCoordinates.h.

#define SKYCOORDINATESH_ESYS   2

Definition at line 42 of file SkyCoordinates.h.

#define SKYCOORDINATESH_EZERO   3

Definition at line 43 of file SkyCoordinates.h.

#define SKYCOORDINATESH_ESING   4

Definition at line 44 of file SkyCoordinates.h.

#define SKYCOORDINATESH_MSGENUL   "Unexpected null pointer in arguments"

Definition at line 46 of file SkyCoordinates.h.

#define SKYCOORDINATESH_MSGESYS   "Wrong coordinate system in input"

Definition at line 47 of file SkyCoordinates.h.

#define SKYCOORDINATESH_MSGEZERO   "Angular coordinates undefined at origin"

Definition at line 48 of file SkyCoordinates.h.

#define SKYCOORDINATESH_MSGESING   "Point is inside singular ellipsoid"

Definition at line 49 of file SkyCoordinates.h.


Typedef Documentation

typedef struct tagSkyPosition SkyPosition

This structure stores the two spherical coordinates of a sky position; ie a generic latitude and longitude; the structure is not defined specific to a particular coordinate system, but maintains a tag indicating which coordinate system it is expressed in.

typedef struct tagEarthPosition EarthPosition

This structure stores the location of a point on (or near) the surface of the Earth in both geodetic and geocentric coordinates, as described in TerrestrialCoordinates.c .

typedef struct tagConvertSkyParams ConvertSkyParams

This structure stores parameters for the function LALConvertSkyPosition().


Enumeration Type Documentation

enum CoordinateSystem

This enumerated type is used to identify data as being in one of the coordinate systems discussed in SkyCoordinates.

Enumerator:
COORDINATESYSTEM_HORIZON  A horizon coordinate system.

COORDINATESYSTEM_GEOGRAPHIC  The Earth-fixed geographic coordinate system.

COORDINATESYSTEM_EQUATORIAL  The sky-fixed equatorial coordinate system.

COORDINATESYSTEM_ECLIPTIC  The ecliptic coordinate system.

COORDINATESYSTEM_GALACTIC  The galactic coordinate system.

Definition at line 56 of file SkyCoordinates.h.


Function Documentation

NRCSID ( SKYCOORDINATESH  ,
"$Id: SkyCoordinates.  h,
v 1.19 2007/06/08 14:41:47 bema Exp $"   
)

void LALGalacticToEquatorial ( LALStatus ,
SkyPosition output,
SkyPosition input 
)

Definition at line 160 of file CelestialCoordinates.c.

void LALEquatorialToGalactic ( LALStatus ,
SkyPosition output,
SkyPosition input 
)

Definition at line 208 of file CelestialCoordinates.c.

void LALEclipticToEquatorial ( LALStatus ,
SkyPosition output,
SkyPosition input 
)

Definition at line 256 of file CelestialCoordinates.c.

void LALEquatorialToEcliptic ( LALStatus ,
SkyPosition output,
SkyPosition input 
)

Definition at line 301 of file CelestialCoordinates.c.

void LALGeographicToEquatorial ( LALStatus ,
SkyPosition output,
SkyPosition input,
LIGOTimeGPS gpsTime 
)

Definition at line 719 of file TerrestrialCoordinates.c.

void LALEquatorialToGeographic ( LALStatus ,
SkyPosition output,
SkyPosition input,
LIGOTimeGPS gpsTime 
)

Definition at line 685 of file TerrestrialCoordinates.c.

void LALSystemToHorizon ( LALStatus ,
SkyPosition output,
SkyPosition input,
const SkyPosition zenith 
)

Definition at line 753 of file TerrestrialCoordinates.c.

void LALHorizonToSystem ( LALStatus ,
SkyPosition output,
SkyPosition input,
const SkyPosition zenith 
)

Definition at line 808 of file TerrestrialCoordinates.c.

void LALGeodeticToGeocentric ( LALStatus ,
EarthPosition location 
)

Definition at line 862 of file TerrestrialCoordinates.c.

void LALGeocentricToGeodetic ( LALStatus ,
EarthPosition location 
)

Definition at line 917 of file TerrestrialCoordinates.c.

void LALConvertSkyCoordinates ( LALStatus ,
SkyPosition output,
SkyPosition input,
ConvertSkyParams params 
)

Definition at line 189 of file SkyCoordinates.c.

void LALNormalizeSkyPosition ( LALStatus status,
SkyPosition posOut,
const SkyPosition posIn 
)

LAL interface to XLALNormalizeSkyPosition().

Parameters:
posOut  [out] normalized sky-position
posIn  [in] general sky-position

Definition at line 281 of file SkyCoordinates.c.

int XLALNormalizeSkyPosition ( SkyPosition posInOut  ) 

If sky-position is not in the canonical range $(\alpha,\delta)\in [0,2\pi]\times[-\pi/2, \pi/2]$, normalize it by mapping it into this coordinate-interval.

Based on Alicia's function with some additional "unwinding" added. return 0 = OK, -1 = ERROR

Parameters:
posInOut  [in,out] sky-position to normalize

Definition at line 310 of file SkyCoordinates.c.


Generated on Fri Aug 29 02:50:19 2008 for LAL by  doxygen 1.5.2