Convert an angle in radians to degrees, arcminutes, arcseconds, fraction (double
precision).
CALL:
CALL sla_DR2AF (NDP, ANGLE, SIGN, IDMSF)
GIVEN:
NDP
I
number of decimal places of arcseconds
ANGLE
D
angle in radians
RETURNED:
SIGN
C
‘+’ or ‘−’
IDMSF
I(4)
degrees, arcminutes, arcseconds, fraction
NOTES:
(1)
NDP less than zero is interpreted as zero.
(2)
The largest useful value for NDP is determined by the size of ANGLE, the format of
DOUBLE PRECISION floating-point numbers on the target machine, and the risk of
overflowing IDMSF(4). On some architectures, for ANGLE up to 2pi, 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 IDMSF(4).
(3)
The absolute value of ANGLE may exceed 2π.
In cases where it does not, it is up to the caller to test for and handle the case where
ANGLE is very nearly 2π
and rounds up to 360∘,
by testing for IDMSF(1)=360 and setting IDMSF(1-4) to zero.