NAME

Astro::Coords::Elements - Specify astronomical coordinates using orbital elements

SYNOPSIS

$c = new Astro::Coords::Elements( elements => \%elements );

DESCRIPTION

This class is used by Astro::Coords for handling coordinates specified as orbital elements.

METHODS

Constructor

new

Instantiate a new object using the supplied options.

$c = new Astro::Coords::Elements( elements => \%elements );

Returns undef on error.

The elements must be specified in a hash containing the following keys:

suitable for the major planets:

EPOCH 		 =  epoch of elements t0 (TT MJD)
ORBINC          =  inclination i (radians)
ANODE 		 =  longitude of the ascending node  [$\Omega$] (radians)
PERIH 		 =  longitude of perihelion  [$\varpi$] (radians)
AORQ 		 =  mean distance a (AU)
E 		 =  eccentricity e 
AORL 		 =  mean longitude L (radians)
DM 		 =  daily motion n (radians)

suitable for minor planets:

EPOCH 		 =  epoch of elements t0 (TT MJD)
ORBINC        	 =  inclination i (radians)
ANODE 		 =  longitude of the ascending node  [$\Omega$] (radians)
PERIH 		 =  argument of perihelion  [$\omega$] (radians)
AORQ 		 =  mean distance a (AU)
E 		 =  eccentricity e
AORL 		 =  mean anomaly M (radians)

suitable for comets:

EPOCH 		 =  epoch of elements t0 (TT MJD)
ORBINC        	 =  inclination i (radians)
ANODE 		 =  longitude of the ascending node  [$\Omega$] (radians)
PERIH 		 =  argument of perihelion  [$\omega$] (radians)
AORQ 		 =  perihelion distance q (AU)
E 		 =  eccentricity e
EPOCHPERIH      = epoch of perihelion T (TT MJD)

See the documentation to slaPlante() and slaPertel() for more information. Keys must be upper case.

For comets if the only one epoch is specified it is assumed that the epochs are identical. This may cause problems if the epochs are not really close to each other.

In order to better match normal usage, EPOCH can also be specified as a string of the form 'YYYY mmm D.frac' (e.g. '1997 Apr 1.567'). (no decimal place after the month).

Accessor Methods

elements

Returns the hash containing the elements.

%el = $c->elements;

General Methods

array

Return back 11 element array with first element containing the string "ELEMENTS", the next two elements as undef and up to 8 following elements containing the orbital elements in the order presented in the documentation of the constructor.

This method returns a standardised set of elements across all types of coordinates.

Note that EPOCHPERIH is not returned yet as a separate element. If EPOCHPERIH is present it overrides the EPOCH of the elements. This is not very accurate but is usually good enough to determine whether the target is up.

type

Returns the generic type associated with the coordinate system. For this class the answer is always "RADEC".

This is used to aid construction of summary tables when using mixed coordinates.

It could be done using isa relationships.

stringify

Stringify overload. Returns comma-separated list of the elements.

summary

Return a one line summary of the coordinates. In the future will accept arguments to control output.

$summary = $c->summary();
_apparent

Return the apparent RA and Dec (in radians) for the current coordinates and time. Includes perterbation corrections to convert the elements to the required epoch.

Returns empty list on error.

NOTES

Usually called via Astro::Coords.

LINKS

Useful sources of orbital elements can be found at http://ssd.jpl.nasa.gov and http://cfa-www.harvard.edu/iau/Ephemerides/

REQUIREMENTS

Astro::SLA is used for all internal astrometric calculations.

AUTHOR

Tim Jenness <t.jenness@jach.hawaii.edu>

COPYRIGHT

Copyright (C) 2001-2002 Particle Physics and Astronomy Research Council. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.