Changes for SOFA Issue: 2020-07-21
Summary of Changes
The changes fall into the following categories:
- Correction of a sign in routine P06E.
- Correction in the ANSI C macro function dnint in the include file
sofam.h, to improve rounding.
- Improvements in precision and rounding (see items 2 and 3 below).
- Miscellaneous typographical corrections and improvements to
various other documents.
Changes to the SOFA FORTRAN Library
- iau_P06E — Correction. The series are taken from Table 1 of Hilton,
J. et al., 2006, Celest. Mech. Dyn. Astron. 94, 351., and it has been
discovered that the one for general precession, p_A, had the wrong sign
for the t^5 coefficient. The error in the paper has been corrected in
the SOFA code. The correct value is -0.0000000383 arcsec. (Even after
five centuries the error would be lower than 250 microarcsec.)
- iau_PB06 — Improvements in the method of decomposing the rotation
matrix by ensuring that angles near zero are preferred.
- Improvements by ensuring precision is not lost when splitting date and time.
- iau_DAT — Release year updated.
- t_sofa_f.for — Updated due to the correction in iau_P06E.
- Minor corrections/improvements to the documentation of the following routines
- iau_FK524
- iau_FW2M
- iau_GMST82
- iau_TRXP
- iau_XYS00A
Changes to the SOFA ANSI C Library
- iauP06e — Correction. Correction. The series are taken from Table 1
of Hilton, J. et al., 2006, Celest. Mech. Dyn. Astron. 94, 351., and it has
been discovered that the one for general precession, p_A, had the wrong sign
for the t^5 coefficient. The error in the paper has been corrected in the
SOFA code. The correct value is -0.0000000383 arcsec. (Even after five
centuries the error would be lower than 250 microarcsec.)
- sofam.h — Correction to dnint(A). The existing dnint macro could
incorrectly round numbers just over -0.5 and just under +0.5 due to
the loss of precision when calculating ceil(A-0.5) or floor(A+0.5). A
preliminary test for |A|<0.5 has been added to ensure that such numbers
always round to zero. As none of the SOFA C functions depend critically
on perfect rounding, the change is unlikely to affect user applications
noticeably, though critical round-trip tests may see an improvement.
- iauPb06 — Improvements in the method of decomposing the rotation
matrix by ensuring that angles near zero are preferred.
- Improvements by ensuring precision is not lost when splitting date and time.
- iauDat — Release year updated.
- t_sofa_f.for — Updated due to the correction in iauP06e.
- Minor corrections/improvements to the documentation of the following routines
- iauA2af
- iauA2tf
- iauD2tf
- iauFk524
- iauFw2m
- iauGmst82
- iauTrxp
- iauXys00a
The SOFA Board thanks all those who have reported the various issues
that go to ensuring the libraries and documentation are kept up-to-date
and relevant.
SOFA Release 16: This changes file was updated on 2020 July 21.