Astro-PAL
view release on metacpan or search on metacpan
my ($ra,$dec) = (@_);
my ($h,$m,$s) = split(/ /,$ra);
my ($d,$dm,$ds) = split(/ /,$dec);
my ($ra_rad, $j) = Astro::PAL::palDtf2r($h,$m,$s);
# Check for sign. Dont use numeric comparison since this
# will not trap -00 01
my $dsign = ($d =~ /^\s*-/ ? -1 : 1);
$d *= $dsign; # since abs(-0) == -0
my ($dec_rad, $status) = Astro::PAL::palDaf2r($d,$dm,$ds);
$dec_rad *= $dsign;
###########################################################################
my ($ra_j2000_rad, $dec_j2000_rad) = Astro::PAL::palFk45z( $ra_rad, $dec_rad, 1950.0 );
my ($sign, @idmsf) = Astro::PAL::palDr2af(2,$dec_j2000_rad);
my ($sign2, @ihmsf) = Astro::PAL::palDr2tf(2,$ra_j2000_rad);
$nra = join(" ",@ihmsf[0..2]).".$ihmsf[3]";
$ndec = $sign.join(" ",@idmsf[0..2]).".$idmsf[3]";
( run in 2.098 seconds using v1.01-cache-2.11-cpan-71847e10f99 )