SOFA Library Issue 2023-10-11 for ANSI C
This is the master page for the SOFA Library Issue 2023-10-11 for ANSI C. From here you can find your way to all the resources comprising this Issue, including notes and source download pages.
Summary
Issue 2023-10-11 is the nineteenth release of the SOFA Library for ANSI C.
Downloads
The complete SOFA Library source set is available in a single download bundle for Unix (including macOS) or Windows systems. This is the preferred method of obtaining the SOFA Library. The ANSI C SOFA Library Issue 2023-10-11 is available to download in various formats.
Please note: Tarballs contain files with Unix line-terminations and Zip archives contain files with DOS line-terminations. Please download the appropriate file for your operating system.
gzipped (.gz) tarball. (3055571 bytes)
compressed (.Z) tarball. (4656848 bytes)
A zip file: long name, short name. (3686708 bytes)
Structure created by unpacking the ANSI C release tar / zip files:
Additional Information - Changes to sofa.h and sofam.h
The information in sofa.h and sofam.h has been rearranged to eliminate problems encountered by C++ developers. The change has
moved the structures from sofam.h into sofa.h and
thus eliminated the #include "sofam.h" from sofa.h.
The consequence of this change for SOFA functions is that an explicit #include "sofam.h" has had to be added to some of them.
Previously, sofam.h contained both structure definitions and constants, and was #included by sofa.h, which was otherwise dedicated to function prototypes. The difficulty was that short uppercase names in sofam.h were colliding with C++ variables.
The consequence of the change for developers is that any application that uses constants from sofa.h will now need an explicit #include . It should, however, be noted that the contents of sofam.h are not formally part of the SOFA API, and so such an application is vulnerable to future changes. Rather than adding an #include to applications, it would be better to replicate the needed macros in the user code.
This problem does not affect the Fortran library.
Documentation
The SOFA product documentation is available in Adobe Portable Document Format (pdf) or plain ASCII text files to guarantee platform independence. The manual may be downloaded as a single file or in sections if you prefer.
PLEASE NOTE: Any updates, improvements or corrections to the documentation for this release will be posted here.
Complete manual (pdf)
Sections (in order):
Title page (pdf)
Introduction (pdf)
Vector/Matrix library (pdf)
Astronomy Library (pdf)
Routine descriptions (Complete manual only).
Copyright notice (pdf)
Constants (pdf)
Review Board (pdf)
Changes (pdf)