This module provides an interface layer to the C or Fortran version of the SLALIB library. From the abstract of the SLALIB manual (written by Pat Wallace):
"SLALIB is a library used by writers of positional-astronomy applications. Most of the 171 routines are concerned with astronomical position and time, but a number have wider trigonometrical, numerical or general applications."
An example program, stime, is provided. This simply reports the current time (modified Julian day and local sidereal time for the JCMT).
This module requires either the C or Fortran version of the SLALIB library written by Pat Wallace.
This module has been tested with the Starlink Fortran library v2.5 (released 2005), the current Starlink release (hawaiki), and 2008 releases of the C library. It should work fine with older versions (up to 2002).
If you are working with orbital elements you need a version of the library released sometime in 2002. Recent improvements (mid-2005) to the accuracy of the calculations for moving sources (comets and asteroids) means that not all the tests will pass for the orbital elements tests if you are using a relatively old Slalib.
You must have either the C version of the library or the Starlink Fortran version of the library in order to build this module.
The Fortran version of SLALIB is available from Starlink under the
Starlink Software Licence (effectively meaning free for non-commercial
use). You can download it from Starlink (http://www.starlink.rl.ac.uk)
using the Starlink Software Store
(http://www.starlink.rl.ac.uk/Software/software_store.htm).
Specifically: http://www.starlink.rl.ac.uk/cgi-store/storeform1?SLA
The GPL Fortran version of slalib is available from the Starlink developer
site (http://dev.starlink.ac.uk).
Please contact Pat Wallace (ptw@tpsoft.demon.co.uk) for details of how to obtain the (proprietary) C SLALIB library.
A C compiler is required - this is an XS module. A Fortran compiler (such as g77) is required if you are building against the Fortran library [or at least the Fortran runtime libraries].
This module has been tested on linux and Mac OS X but should be fairly portable.
It is assumed the C library is available from /usr/local/lib by default.
The includes files, slalib.h, should be available in the default path. If they are somewhere else the Build.PL should be edited to reflect this location. For example, change the line
my $sla_inc => '',
to
my $sla_inc => '-I/home/me/include',
to pick them up from /home/me/include
% perl Build.PL % ./Build % ./Build test % ./Build install
The tests only test part of the build. Some functions remain untested. In particular orbital element support will not be very good unless you have a modern installation of SLALIB (sometime from 2002).
See Astro::Coords for a general object-oriented wrapper around Astro::SLA.
The module provides documentation on how to use the perl interface to SLALIB. It does not contain information on how to use SLALIB itself. For more information on SLALIB see:
http://www.starlink.ac.uk/star/docs/sun67.htx/sun67.html
Copyright (C) 2007, 2010 Tim Jenness and the Science and Technology Facilities Council. Copyright (C) 1998-2005 Tim Jenness and the Particle Physics and Astronomy Research Council. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place,Suite 330, Boston, MA 02111-1307, USA
The SLALIB library (C version) is proprietary. Please contact Patrick Wallace (ptw@tpsoft.demon.co.uk) if you would like to obtain a copy.
The Starlink SLALIB library (Fortran) is available from Starlink under the GPL.
The array handling code was written by Karl Glazebrook.
See the ChangeLog file for a full list of changes.
Changes for release 1.00:
Changes for release 0.99:
Changes for release 0.98:
Changes for release 0.97:
Changes for release 0.96:
Changes for release 0.95:
Changes for release 0.94:
Changes for release (0.93):
Changes for release 0.92:
Changes for release 0.91:
[patch supplied by Tim Kimball (kimball@stsci.edu)]