Convert an interval in days into hours, minutes, seconds (double precision).
CALL:
CALL sla_DD2TF (NDP, DAYS, SIGN, IHMSF)
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). On some architectures, 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 a typical 32-bit 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.