diff options
Diffstat (limited to 'math/slalib/doc/dafin.hlp')
-rw-r--r-- | math/slalib/doc/dafin.hlp | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/math/slalib/doc/dafin.hlp b/math/slalib/doc/dafin.hlp new file mode 100644 index 00000000..2fa24d5c --- /dev/null +++ b/math/slalib/doc/dafin.hlp @@ -0,0 +1,90 @@ +.help dafin Jun99 "Slalib Package" +.nf + + SUBROUTINE slDAFN (STRING, IPTR, A, J) + + - - - - - - + D A F N + - - - - - - + + Sexagesimal character string to angle (double precision) + + Given: + STRING c*(*) string containing deg, arcmin, arcsec fields + IPTR i pointer to start of decode (1st = 1) + + Returned: + IPTR i advanced past the decoded angle + A d angle in radians + J i status: 0 = OK + +1 = default, A unchanged + -1 = bad degrees ) + -2 = bad arcminutes ) (note 3) + -3 = bad arcseconds ) + + Example: + + argument before after + + STRING '-57 17 44.806 12 34 56.7' unchanged + IPTR 1 16 (points to 12...) + A ? -1.00000D0 + J ? 0 + + A further call to slDAFN, without adjustment of IPTR, will + decode the second angle, 12deg 34min 56.7sec. + + Notes: + + 1) The first three "fields" in STRING are degrees, arcminutes, + arcseconds, separated by spaces or commas. The degrees field + may be signed, but not the others. The decoding is carried + out by the DFLTIN routine and is free-format. + + 2) Successive fields may be absent, defaulting to zero. For + zero status, the only combinations allowed are degrees alone, + degrees and arcminutes, and all three fields present. If all + three fields are omitted, a status of +1 is returned and A is + unchanged. In all other cases A is changed. + + 3) Range checking: + + The degrees field is not range checked. However, it is + expected to be integral unless the other two fields are absent. + + The arcminutes field is expected to be 0-59, and integral if + the arcseconds field is present. If the arcseconds field + is absent, the arcminutes is expected to be 0-59.9999... + + The arcseconds field is expected to be 0-59.9999... + + 4) Decoding continues even when a check has failed. Under these + circumstances the field takes the supplied value, defaulting + to zero, and the result A is computed and returned. + + 5) Further fields after the three expected ones are not treated + as an error. The pointer IPTR is left in the correct state + for further decoding with the present routine or with DFLTIN + etc. See the example, above. + + 6) If STRING contains hours, minutes, seconds instead of degrees + etc, or if the required units are turns (or days) instead of + radians, the result A should be multiplied as follows: + + for to obtain multiply + STRING A in A by + + d ' " radians 1 = 1D0 + d ' " turns 1/2pi = 0.1591549430918953358D0 + h m s radians 15 = 15D0 + h m s days 15/2pi = 2.3873241463784300365D0 + + Called: slDFLI + + P.T.Wallace Starlink 1 August 1996 + + Copyright (C) 1996 Rutherford Appleton Laboratory + Copyright (C) 1995 Association of Universities for Research in Astronomy Inc. + +.fi +.endhelp |