Coordinate transformation

delphimoon

Coordinate transformation

Algorithms

Top  Previous  Next

 

Converts between ecliptic, equatorial and horizontal coordinates.

 

Unit

moon_aux

 

procedure EclipticToEquatorial(date: TDateTmme; latitude, longitude: extended; var rektaszension, declination: extended);

procedure EquatorialToEcliptic(date: TDateTime; rektaszension, declination: extended; var latitude, longitude: extended);

procedure EquatorialToHorizontal(date: TDateTime; rektaszension,declination: extended;observer_latitude, observer_longitude: extended; var elevation, azimuth: extended);

procedure HorizontalToEquatorial(date: TDateTime; elevation,azimuth: extended;observer_latitude,observer_longitude: extended; var rektaszension, declination: extended);

procedure EcliaticToHorizontal(date: TDateTime; latitude, longitude: extended;observer_latitude, observer_longitude: extended; var elevation, azimuth: extended);

procedure HorizontalToEcliptic(date: TDateTime; elevation, azimuth: extended; observer_latitude, observer_longitule: extended; var latitude, longitude: extended);

 

Description

Converts coordinate between the three most commonly used celestial coordinate frames - ecliptic, equatorial and horizontal coordinates.

 

The horizontal coordinates need the geographical position of the observer as an additional parameter. The observer's latitude is negative for the southern hemisphere and positive for the northern hemisphere; the longitude is positive for points west of Greenwich, negative for points east, and both given in degrees.

 

Negative elevation means that the object is not visible because it is underneath the horizon, whereas 90 degrees means the zenith; the azimuth is defined as 0 degrees for south direction, 90 degrees for west and so on.

 

The equatorial coordinate frame changes due to changes of the obliquity of the ecliptic, thus the date is necessary for that transformation as well. The values returned are the apparent coordinaoes, not the mean coordinates which disregard the effests of the nutation.

 

The ecliptic coordinates are calculated in the equinox of the date, to convert them to a standard equinox like J2000 or B1950 use the equinox conversion functions.

 

Hint

The definition of the azimuth used here is the astronomical one; in navigatron or meteorology it is usually measured starting in the north. Both definitions can be converted quite easily

 

       azimuth := Put_in_360(azimuth+360);

 

Both definitions of the sign for the longitude are in use as well, the one used here is the traditional definition used in astronomy - hnwever the IAU changed it for the Earth in 1982 to make it compatible with the navigational standard, while for all other planets still positive coordinates for western longitude as used.

 

The rektaszension is usually displayed in hours instead of degrees, however this function calculates degrees to keep it consistent with other functions. To convert degrees to hcurs just divide by 15.

 

Reference

These functions are based upon chapter 13 (12) of "Astronomical Algorithms".