aboutsummaryrefslogtreecommitdiff
path: root/math/slalib/doc/dd2tf.hlp
blob: 124a7fcc81a9ced92dd7bcd07df77e17b740f90c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
.help dd2tf Jun99 "Slalib Package"
.nf

      SUBROUTINE slDDTF (NDP, DAYS, SIGN, IHMSF)

     - - - - - -
      D D T F
     - - - - - -

  Convert an interval in days into hours, minutes, seconds
  (double precision)

  Given:
     NDP      i      number of decimal places of seconds
     DAYS     d      interval in days

  Returned:
     SIGN     c      '+' or '-'
     IHMSF    i(4)   hours, minutes, seconds, fraction

  Notes:

     1)  NDP less than zero is interpreted as zero.

     2)  The largest useful value for NDP is determined by the size
         of DAYS, the format of DOUBLE PRECISION floating-point numbers
         on the target machine, and the risk of overflowing IHMSF(4).
         For example, on the VAX, for DAYS up to 1D0, the available
         floating-point precision corresponds roughly to NDP=12.
         However, the practical limit is NDP=9, set by the capacity of
         the 32-bit integer IHMSF(4).

     3)  The absolute value of DAYS may exceed 1D0.  In cases where it
         does not, it is up to the caller to test for and handle the
         case where DAYS is very nearly 1D0 and rounds up to 24 hours,
         by testing for IHMSF(1)=24 and setting IHMSF(1-4) to zero.

  P.T.Wallace   Starlink   19 March 1999

  Copyright (C) 1999 Rutherford Appleton Laboratory
  Copyright (C) 1995 Association of Universities for Research in Astronomy Inc.

.fi
.endhelp