From d54fe7c1f704a63824c5bfa0ece65245572e9b27 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 4 Mar 2015 21:21:30 -0500 Subject: Initial commit --- src/slalib/daf2r.f | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 src/slalib/daf2r.f (limited to 'src/slalib/daf2r.f') diff --git a/src/slalib/daf2r.f b/src/slalib/daf2r.f new file mode 100644 index 0000000..3f89864 --- /dev/null +++ b/src/slalib/daf2r.f @@ -0,0 +1,55 @@ + SUBROUTINE sla_DAF2R (IDEG, IAMIN, ASEC, RAD, J) +*+ +* - - - - - - +* D A F 2 R +* - - - - - - +* +* Convert degrees, arcminutes, arcseconds to radians +* (double precision) +* +* Given: +* IDEG int degrees +* IAMIN int arcminutes +* ASEC dp arcseconds +* +* Returned: +* RAD dp angle in radians +* J int status: 0 = OK +* 1 = IDEG outside range 0-359 +* 2 = IAMIN outside range 0-59 +* 3 = ASEC outside range 0-59.999... +* +* Notes: +* 1) The result is computed even if any of the range checks +* fail. +* 2) The sign must be dealt with outside this routine. +* +* P.T.Wallace Starlink 23 August 1996 +* +* Copyright (C) 1996 Rutherford Appleton Laboratory +*- + + IMPLICIT NONE + + INTEGER IDEG,IAMIN + DOUBLE PRECISION ASEC,RAD + INTEGER J + +* Arc seconds to radians + DOUBLE PRECISION AS2R + PARAMETER (AS2R=0.484813681109535994D-5) + + + +* Preset status + J=0 + +* Validate arcsec, arcmin, deg + IF (ASEC.LT.0D0.OR.ASEC.GE.60D0) J=3 + IF (IAMIN.LT.0.OR.IAMIN.GT.59) J=2 + IF (IDEG.LT.0.OR.IDEG.GT.359) J=1 + +* Compute angle + RAD=AS2R*(60D0*(60D0*DBLE(IDEG)+DBLE(IAMIN))+ASEC) + + END -- cgit