Convert an interval in days to hours, minutes, seconds (single precision).
CALL:
CALL sla_CD2TF (NDP, DAYS, SIGN, IHMSF)
GIVEN:
NDP
I
number of decimal places of seconds
DAYS
R
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
REAL floating-point numbers on the target machine, and the risk of overflowing
IHMSF(4). On some architectures, for DAYS up to 1.0, the available floating-point
precision corresponds roughly to NDP=3. This is well below the ultimate limit of
NDP=9 set by the capacity of a typical 32-bit IHMSF(4).
(3)
The absolute value of DAYS may exceed 1.0. In cases where it does not, it is up to
the caller to test for and handle the case where DAYS is very nearly 1.0 and rounds
up to 24 hours, by testing for IHMSF(1)=24 and setting IHMSF(1-4) to zero.