SOFA banner

The International Astronomical Union's SOFA service has the task of establishing and maintaining an accessible and authoritative set of algorithms and procedures that implement standard models used in fundamental astronomy. The service is managed by an international panel, the SOFA Board, appointed through IAU Division A — Fundamental Astronomy. SOFA also works closely with the International Earth Rotation and Reference Systems Service (IERS).


This web site provides access to the SOFA Software Collection which is currently available for both Fortran 77 and ANSI C. Information on how to obtain it and instructions for its use are available by following the link to Current Software.

Using SOFA software is free of charge under the terms and conditions of the SOFA licence.

Registration is encouraged as it helps to demonstrate the use being made of the SOFA Libraries and also provides users with e-mail notification of bugs and updates.

Quick Start  Quick start ...

Download Latest Release  Download the latest release ...

  • Latest Fortran 77 release is available ...
    [Released 2013-12-02, revised 2014-09-08]
  • Latest ANSI C release is available ...
    [Released 2013-12-02, revised 2014-09-08]
  • A summary of changes for the new release is available ...

News  News ...

News Item  2014 September 08 / Tenth SOFA release

This notice is to inform users that the SOFA Board is issuing a minor release to both the Fortran and ANSI C versions of Release 10 of the SOFA software library on 2014 September 8 at 12:00 UTC. The new version is designated issue 2013-12-02_c. Corrections have been made to ldsun.for, ldsun.c, dat.c, pmsafe.c and sofa.h as well as small documentation corrections to the cookbooks sofa_pn.pdf, sofa_ast_f.pdf and sofa_ast_c.pdf.

News Item  2014 March 28 / Error in the cookbook SOFA Tools for Earth Attitude

The example in the cookbook SOFA Tools for Earth Attitude has been updated due to a typographical error in the comment above the last function call on page 23 calculating Greenwich apparent sidereal time. For "(IAU 1982/1994)" read "(IAU 2000)".

News Item  2014 March 18 / Error in the cookbook SOFA Tools for Astrometry

The example in the cookbook SOFA Tools for Astrometry has been updated due to an error. In the code the coordinates for longitude and latitude were reversed. The intended location was Gemini South, in Chile, but the reversal placed the observer above the Weddell Sea, off Antarctica, with the test star below the horizon. A location in St. Helena has been substituted. There was also a typographical error in one of the comments: the second "CIRS to topocentric" has been changed to "CIRS to observed".

News Item  2014 February 20 / Tenth SOFA release

An error in the routine D2DTF present in both the Fortran and ANSI C libraries has been corrected in a new minor release to the tenth release of the SOFA software library. Documentation errors in routines apco13 and atioq have also been addressed and the corrected versions of sofa_ts_f.pdf and sofa_ts_c.pdf have been included in this minor release.

News Item  2014 February 17 / Incorrect behaviour in routine D2DTF

The D2DTF routine truncated rather than rounded in the (uncommon) case of a time in the second half of a leap second and a precision of 1 second. In addition, the rounding behavior during leap seconds has been changed so that for precision of 10 seconds or coarser the beginning of the next day is used in preference to the start of the leap second. We expect to make a minor release at the end of this week to correct this problem.

News Item  2013 December 03 / Tenth SOFA release

This notice is to inform users that we are making a minor change to the Fortran Release 10 made on 2013 December 2 at 12:00 UTC. The new version is numbered issue 2013-12-02_a.

The motivation for the minor release is to harmonize the Fortran and C versions of the ATIOQ routine. A recent change was to return azimuth in the range 0 to 2pi radians rather than +/- pi radians, and though the new C version was released, the Fortran version was inadvertently not released. At the same time we have taken the opportunity to tidy up a few recently noticed non-critical, issues; (1) some unused constants have been removed from routines EECT00, TAIUTC and XY06, and (2) in routines AF2A, TF2A and TF2D the declaration CHARACTER*1 S has been changed to CHARACTER S.

News Item  2013 December 02 / Tenth SOFA release

A new release (Issue 2013-12-02) of the SOFA Fortran 77 and ANSI C libraries was made on 2013 December 2nd at 12:00:00 UTC.

News Item  2013 October 14 / Tenth SOFA release

This notice is to inform users of the upcoming 10th release of the SOFA software library, which is currently being finalised.

This is a major release, as it contains the new section "Astrometry" consisting of 32 routines and an accompanying document.

In the existing routines, two changes of behaviour have occurred:

  • The TAI to UTC transformation before the introduction of leap seconds (between 1960 and 1972) was implemented imprecisely. The revised routines (several are involved) now deal with the case rigorously.
  • In the GC2GD routine, some but not all returned arguments were set to "nonsense" values when an error condition was detected, as a precaution. This has been extended to all returned arguments.

There are many other minor documentation corrections and cosmetic changes. Some of these were reported by our users, and we are very grateful to all those who have contacted us.

News Item  2013 May 07 / E-mail issues contacting SOFA

It has come to our attention that emails may have gone unanswered due to having been mistakenly blocked by the UK Hydrographic Office spam filtering systems (based on MailMarshal Secure Email Gateway). This is most regrettable, and appropriate measures have been taken. If you have emailed SOFA recently and not received a prompt reply please resend the message and accept our apologies.

In general, if any email to SOFA fails to elicit a response, by all means try emailing other Board members to see where the problem lies. In common with other UK Government establishments, the UKHO has to operate very strict IT security policies, and future "false positives" cannot be ruled out.

UKHO and the Chair of the SOFA Board is sorry that these problems occurred.

News Item  2012 July 10 / Issue 2012-03-01 — Update to Issue 2012-03-01

Updated distribution files for Issue 2012-03-01 will be made available on 2012 July 10th at 16:00:00 UTC. A correction has been made to dat.for and dat.c to ensure proper operation when the fraction of the day is very close to 1. Explicit set up of arrays in ir.for, ir.c, rx.for, rx.c, ry.for, ry.c, rz.for, rz.c, zr.for and zr.c has been implemented to improve efficiency and a documentation correction to plan94.c has been made.

News Item  2012 March 08 / Issue 2012-03-01 — Correction to documentation

It has been pointed out that there is an error in the comments in plan94.c. The dimensions of the PV-vector are the wrong way round. For "pv double[3][2] planet p,v (heliocentric, J2000.0, AU,AU/d)", read "pv double[2][3] planet p,v (heliocentric, J2000.0, AU,AU/d)".

News Item  2012 March 01 / Delay in release of Issue 2012-03-01

Due to a server configuration problem, the new release of the SOFA Fortran 77 and ANSI C libraries (2012-03-01) was delayed until 15:10:00 UTC. Our apologies for any inconvenience caused.

News Item  2012 March 01 / Release of Issue 2012-03-01

A new release (Issue 2012-03-01) of the SOFA Fortran 77 and ANSI C libraries will be made on 2012 March 1st at 12:00:00 UTC.

This release includes an update to reflect the leap second that will be applied on 2012 June 30th. The release also includes several updates to some declarations in the ANSI C code to minimize possible compiler warnings. A small number of errata in the documentation of the ANSI C routines as well as some cosmetic changes to the documentation have been included. A bug in the function Dsign (A,B) in sofam.h has also been fixed.

Please note that the numbering of this SOFA release has been kept in step with the Fortran release number while the ANSI C release number has been re-aligned with that of the Fortran release.

News Item  2011 December 07 / Revised list of documentation corrections

A revised list of documentation corrections has been made available for the latest Fortran and ANSI C releases. These corrections to p06e.for and p06e.c do not affect the operation of the code.

News Item  2011 May 24 / Revised list of documentation corrections

A revised list of documentation corrections has been made available for the latest Fortran and ANSI C releases. These corrections do not affect the operation of the code.

News Item  2011 April 19 / Correction to comments for tf2a.c and ut1tt.for / ut1tt.c

A small correction to the comment in the routine tf2a.c should be noted. In the "Returned:" section replace the variable "days" by the variable "rad". Small corrections have also been noted in the routines ut1tt.for and ut1tt.c. In both routines in the "Returned:" section, in the description replace "TAI as a 2-part Julian Date", by "TT as a 2-part Julian Date".

News Item  2011 April 11 / Correction to comments for dtf2d.for / dtf2d.c

Small corrections to a comment and a note in the routines dtf2d.for and dtf2d.c are brought to the attention of users of the SOFA software. In the comments for Fortran code the "Returned:" items JD1,JD2 should be D1,D2. Similarly, in the 2nd line of Note 7, JD1+JD2 should read D1+D2. The same issues exist in the C code except the variables are lower case.

News Item  2011 April 05 / Correction to comments for nut06a.for / nut06a.c

A correction to the wording of Note 3 in the routines nut06a.for and nut06a.c is brought to the attention of users of SOFA software. It is necessary to replace the words "dynamical flattening" by "dynamical form factor J2", so that the last line reads "...secular variation in the Earth's dynamical form factor J2."

News Item  2011 January 12 / Scholarpedia article

Catherine Hohenkerk has written an article for Scholarpedia on SOFA. It provides an overview of SOFA, its history, the SOFA Center and the libraries and test software it provides, as well as the relevant documentation and references.

News Item  2011 January 04 / Issue 2010-12-01

Two small typographical errors have been reported in issue 2010-12-01, neither of which affect the serviceability of the issue. In the files changes.pdf and changes.lis within the ANSI C release, the issue date in the first line of the files is given as 2012-12-01. The correct issue date is 2010-12-01. In the SOFA Time Scale and Calendar Tools documents sofa_ts_c.pdf and sofa_ts_f.pdf, a function called DTF is listed in Section 1.3 on page 1. The correct name of the function is D2TF.

News Item  2010 December 01 / Issue 2010-12-01

A new release of SOFA Fortran 77 and ANSI C libraries was made available. This includes eighteen new routines in the Time Scales section of the Astronomy Library and three new routines in the Operations on Angles section of the Vector Matrix Library for both the Fortran 77 and ANSI C releases. A new cookbook on Time Scale and Calendar Tools was also released. A bug in jdcalf.c has been corrected, enhancements have been made to the makefiles, header files and test programs and cosmetic changes have also been made to some of the routines.

News Item  2010 November 26 / Issue 2010-12-01

A new release (Issue 2010-12-01) of the SOFA Fortran 77 and ANSI C libraries will be made on 2010 December 1st at 12:00:00 UTC.

News Item  2010 September 28 / Anne-Marie Gontier

It is with great sadness that the SOFA board was informed of the passing of Anne-Marie Gontier on September 24th 2010. Anne-Marie had been a member of the board almost from the beginning, which provided a strong link with the Observatoire de Paris that has been to SOFA's great benefit. Our condolences go to her family, colleagues and friends at this difficult time.

News Item  PLEASE NOTE 2010 July 20 / SOFA web sites

The old SOFA web sites and are now automatically forwarding requests to our new site introduced in January 2010. It is our intention to shut down the old sites at the time of the next SOFA release. Consequently, users who have bookmarks pointing to specific material on the old sites should now update them to point to the new site.

News Item  2010 June 22 / New member of the SOFA Board

George Hobbs, representing Commission 31 (Time), from the Australia Telescope National Facility has been co-opted onto the SOFA Board to assist in the provision of authoritative time transformation software.

News Item  2010 March 20 / New Chair of the SOFA Board

Patrick Wallace steps down as Chair after 14 years; he is welcomed as a member of the Board. The new SOFA Board Chair is Catherine Hohenkerk who may be contacted at

News Item  2010 March 20 /

Please note that the e-mail link at the foot of each web page now points to the new SOFA mailbox at This replaces the old address,, at the Rutherford Appleton Laboratory. This new contact address will be updated in the source code and documentation at the next release of the SOFA libraries.

News Item  2010 January 27 / Issue 2009-12-31

Downloads of Issue 2009-12-31 have been resumed. Updates to the validation software have been implemented.

News Item  2010 January 26 / Issue 2009-12-31

Downloads of Issue 2009-12-31 have been temporarily suspended pending checks on the validation software.

News Item  2010 January 25 /

The new SOFA web site has now gone live. Requests to the old site addresses and will be automatically forwarded to the new site. Please change any bookmarks you might have to the new address.

News Item  2010 January 25 / Issue 2009-12-31

An additional reference ellipsoid, WGS72, has been included in EFORM. A code change to GD2GC and GD2GC using ZP to zeroize a vector has been made. Corrections to comments in GC2GD and GC2GD have been made concerning routine names for inverse transformations. Comments involving references have been made to BP00, BPN2XY, C2I00A, C2I00B, C2IBPN, PN00A, PN00B, PN00, S00A, S00B, S00 and S06A. Validation software has been updated.

News Item  2010 January 19 / released for comments by SOFA Board

A new web site for the SOFA initiative has been registered called The material on the site has been revised and updated to improve access to the software releases and their associated explanatory material.

News Item  2009 December 31 / Issue 2009-12-31

A new release of SOFA Fortran 77 and ANSI C libraries was generated. This includes five new Astronomy routines for performing geographic/geodetic transformations as well as a number of small cosmetic changes and code improvements. The five new routines are EFORM, GC2GD, GC2GDE, GD2GC and GD2GCE.

News Item  2009 April 02 / Issue 2009-02-01

An error in the description of the coordinates of the Celestial Intermediate Pole with respect to the International Terrestrial Reference System in the routines C2T00A, C2T00B, C2T06A, C2TPE, C2TXY and POM00 has been corrected in both the Fortran and ANSI C libraries. These revisions have no effect on the results produced by these routines.

News Item  2009 March 16 / Issue 2009-02-01
  1. A bug affecting the routines FK52H and H2FK5 (both Fortran and ANSI C) has been corrected. This caused erroneous proper motions (and also radial velocity) to be returned.
  2. The testbeds t_sofa_f.for and t_sofa_c.c have been updated to reflect the changes to FK52H and H2FK5.
  3. In the C header file sofa.h, an unused reference has been removed.
  4. In the C functions iauFk5hip, iauGmst00, iauObl80 and iauObl06, use of the ANSI C language feature "unary plus" has been eliminated, to avoid difficulties with older compilers.
News Item  2009 March 13 / Issue 2009-02-01

The routines FK52H and H2FK5 (both Fortran and ANSI C) have been found to return incorrect proper motions. The fault is being rectified.

News Item  2009 March 03 / Issue 2009-02-01

The ANSI C version of the DAT routine, iauDat, released on 2009-02-01 contained a bug that caused erroneous answers (platform dependent) for certain dates in 1972. The problem was corrected in the 2009-03-03 update. The Fortran version, iau_DAT, was not affected.

News Item  2009 February 01 / Issue 2009-02-01

A new release of SOFA Fortran 77 and ANSI C libraries was generated. This includes the initial release of the ANSI C library. Cosmetic changes were made to a number of Fortran routines and a test program has been added.

Search  Search this site ...

@ IAU SOFA Center / @ Webmaster
Copyright © 2001-2014 International Astronomical Union
Last modified: 2014 September 8
Valid HTML 4.01 Transitional Valid CSS Link to HM Nautical Almanac Office Link to UK Hydrographic Office