diff --git a/WorldWideAstronomy/SOFA/SOFA.vcxproj b/WorldWideAstronomy/SOFA/SOFA.vcxproj index e672d75..c8f758d 100644 --- a/WorldWideAstronomy/SOFA/SOFA.vcxproj +++ b/WorldWideAstronomy/SOFA/SOFA.vcxproj @@ -176,7 +176,11 @@ + + + + diff --git a/WorldWideAstronomy/SOFA/SOFA.vcxproj.filters b/WorldWideAstronomy/SOFA/SOFA.vcxproj.filters index c78b3d8..4a07872 100644 --- a/WorldWideAstronomy/SOFA/SOFA.vcxproj.filters +++ b/WorldWideAstronomy/SOFA/SOFA.vcxproj.filters @@ -242,6 +242,10 @@ + + + + diff --git a/WorldWideAstronomy/SOFA/a2af.c b/WorldWideAstronomy/SOFA/a2af.c index 7ae16bf..58f3a18 100644 --- a/WorldWideAstronomy/SOFA/a2af.c +++ b/WorldWideAstronomy/SOFA/a2af.c @@ -18,12 +18,9 @@ void iauA2af(int ndp, double angle, char *sign, int idmsf[4]) ** angle double angle in radians ** ** Returned: -** sign char '+' or '-' +** sign char* '+' or '-' ** idmsf int[4] degrees, arcminutes, arcseconds, fraction ** -** Called: -** iauD2tf decompose days to hms -** ** Notes: ** ** 1) The argument ndp is interpreted as follows: @@ -56,11 +53,14 @@ void iauA2af(int ndp, double angle, char *sign, int idmsf[4]) ** case where angle is very nearly 2pi and rounds up to 360 degrees, ** by testing for idmsf[0]=360 and setting idmsf[0-3] to zero. ** -** This revision: 2013 June 18 +** Called: +** iauD2tf decompose days to hms +** +** This revision: 2020 April 1 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Hours to degrees * radians to turns */ @@ -74,7 +74,7 @@ void iauA2af(int ndp, double angle, char *sign, int idmsf[4]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/a2tf.c b/WorldWideAstronomy/SOFA/a2tf.c index c17b64c..a651a4e 100644 --- a/WorldWideAstronomy/SOFA/a2tf.c +++ b/WorldWideAstronomy/SOFA/a2tf.c @@ -18,12 +18,9 @@ void iauA2tf(int ndp, double angle, char *sign, int ihmsf[4]) ** angle double angle in radians ** ** Returned: -** sign char '+' or '-' +** sign char* '+' or '-' ** ihmsf int[4] hours, minutes, seconds, fraction ** -** Called: -** iauD2tf decompose days to hms -** ** Notes: ** ** 1) The argument ndp is interpreted as follows: @@ -56,11 +53,14 @@ void iauA2tf(int ndp, double angle, char *sign, int ihmsf[4]) ** case where angle is very nearly 2pi and rounds up to 24 hours, ** by testing for ihmsf[0]=24 and setting ihmsf[0-3] to zero. ** -** This revision: 2013 July 31 +** Called: +** iauD2tf decompose days to hms +** +** This revision: 2020 April 1 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Scale then use days to h,m,s function. */ @@ -70,7 +70,7 @@ void iauA2tf(int ndp, double angle, char *sign, int ihmsf[4]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ab.c b/WorldWideAstronomy/SOFA/ab.c index 70fbc3d..cf6e506 100644 --- a/WorldWideAstronomy/SOFA/ab.c +++ b/WorldWideAstronomy/SOFA/ab.c @@ -55,9 +55,9 @@ void iauAb(double pnat[3], double v[3], double s, double bm1, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int i; @@ -82,7 +82,7 @@ void iauAb(double pnat[3], double v[3], double s, double bm1, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -175,5 +175,4 @@ void iauAb(double pnat[3], double v[3], double s, double bm1, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ae2hd.c b/WorldWideAstronomy/SOFA/ae2hd.c index b736a75..9765972 100644 --- a/WorldWideAstronomy/SOFA/ae2hd.c +++ b/WorldWideAstronomy/SOFA/ae2hd.c @@ -59,9 +59,9 @@ void iauAe2hd (double az, double el, double phi, ** ** Last revision: 2017 September 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double sa, ca, se, ce, sp, cp, x, y, z, r; @@ -89,7 +89,7 @@ void iauAe2hd (double az, double el, double phi, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -182,5 +182,4 @@ void iauAe2hd (double az, double el, double phi, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/af2a.c b/WorldWideAstronomy/SOFA/af2a.c index 63f90bf..4a47009 100644 --- a/WorldWideAstronomy/SOFA/af2a.c +++ b/WorldWideAstronomy/SOFA/af2a.c @@ -41,9 +41,9 @@ int iauAf2a(char s, int ideg, int iamin, double asec, double *rad) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -61,7 +61,7 @@ int iauAf2a(char s, int ideg, int iamin, double asec, double *rad) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/anp.c b/WorldWideAstronomy/SOFA/anp.c index ee08e7b..0093b5b 100644 --- a/WorldWideAstronomy/SOFA/anp.c +++ b/WorldWideAstronomy/SOFA/anp.c @@ -21,9 +21,9 @@ double iauAnp(double a) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double w; @@ -36,7 +36,7 @@ double iauAnp(double a) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/anpm.c b/WorldWideAstronomy/SOFA/anpm.c index 2927d40..96fa2f0 100644 --- a/WorldWideAstronomy/SOFA/anpm.c +++ b/WorldWideAstronomy/SOFA/anpm.c @@ -21,9 +21,9 @@ double iauAnpm(double a) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double w; @@ -36,7 +36,7 @@ double iauAnpm(double a) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/apcg.c b/WorldWideAstronomy/SOFA/apcg.c index d20d3ae..1f0b0c0 100644 --- a/WorldWideAstronomy/SOFA/apcg.c +++ b/WorldWideAstronomy/SOFA/apcg.c @@ -109,9 +109,9 @@ void iauApcg(double date1, double date2, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Geocentric observer */ @@ -126,7 +126,7 @@ void iauApcg(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -219,5 +219,4 @@ void iauApcg(double date1, double date2, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apcg13.c b/WorldWideAstronomy/SOFA/apcg13.c index d1efe81..1a4c3ff 100644 --- a/WorldWideAstronomy/SOFA/apcg13.c +++ b/WorldWideAstronomy/SOFA/apcg13.c @@ -111,9 +111,9 @@ void iauApcg13(double date1, double date2, iauASTROM *astrom) ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double ehpv[2][3], ebpv[2][3]; @@ -129,7 +129,7 @@ void iauApcg13(double date1, double date2, iauASTROM *astrom) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -222,5 +222,4 @@ void iauApcg13(double date1, double date2, iauASTROM *astrom) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apci.c b/WorldWideAstronomy/SOFA/apci.c index 5e59ee6..1862b21 100644 --- a/WorldWideAstronomy/SOFA/apci.c +++ b/WorldWideAstronomy/SOFA/apci.c @@ -119,9 +119,9 @@ void iauApci(double date1, double date2, ** ** This revision: 2013 September 25 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -135,7 +135,7 @@ void iauApci(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -228,5 +228,4 @@ void iauApci(double date1, double date2, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apci13.c b/WorldWideAstronomy/SOFA/apci13.c index 3052a4a..97ae49f 100644 --- a/WorldWideAstronomy/SOFA/apci13.c +++ b/WorldWideAstronomy/SOFA/apci13.c @@ -117,9 +117,9 @@ void iauApci13(double date1, double date2, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double ehpv[2][3], ebpv[2][3], r[3][3], x, y, s; @@ -147,7 +147,7 @@ void iauApci13(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -240,5 +240,4 @@ void iauApci13(double date1, double date2, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apco.c b/WorldWideAstronomy/SOFA/apco.c index 75729b6..43a4dd3 100644 --- a/WorldWideAstronomy/SOFA/apco.c +++ b/WorldWideAstronomy/SOFA/apco.c @@ -159,9 +159,9 @@ void iauApco(double date1, double date2, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double sl, cl, r[3][3], pvc[2][3], pv[2][3]; @@ -209,7 +209,7 @@ void iauApco(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -302,5 +302,4 @@ void iauApco(double date1, double date2, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apco13.c b/WorldWideAstronomy/SOFA/apco13.c index 26c35d6..c017d18 100644 --- a/WorldWideAstronomy/SOFA/apco13.c +++ b/WorldWideAstronomy/SOFA/apco13.c @@ -180,9 +180,9 @@ int iauApco13(double utc1, double utc2, double dut1, ** ** This revision: 2013 December 5 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j; @@ -232,7 +232,7 @@ int iauApco13(double utc1, double utc2, double dut1, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -325,5 +325,4 @@ int iauApco13(double utc1, double utc2, double dut1, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apcs.c b/WorldWideAstronomy/SOFA/apcs.c index ec49eae..3b743e5 100644 --- a/WorldWideAstronomy/SOFA/apcs.c +++ b/WorldWideAstronomy/SOFA/apcs.c @@ -129,9 +129,9 @@ void iauApcs(double date1, double date2, double pv[2][3], ** ** This revision: 2017 March 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* au/d to m/s */ @@ -178,7 +178,7 @@ void iauApcs(double date1, double date2, double pv[2][3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -271,5 +271,4 @@ void iauApcs(double date1, double date2, double pv[2][3], ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apcs13.c b/WorldWideAstronomy/SOFA/apcs13.c index 5d3c226..d0d3695 100644 --- a/WorldWideAstronomy/SOFA/apcs13.c +++ b/WorldWideAstronomy/SOFA/apcs13.c @@ -118,9 +118,9 @@ void iauApcs13(double date1, double date2, double pv[2][3], ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double ehpv[2][3], ebpv[2][3]; @@ -136,7 +136,7 @@ void iauApcs13(double date1, double date2, double pv[2][3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -229,5 +229,4 @@ void iauApcs13(double date1, double date2, double pv[2][3], ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/aper.c b/WorldWideAstronomy/SOFA/aper.c index 5d10ac9..ed128c8 100644 --- a/WorldWideAstronomy/SOFA/aper.c +++ b/WorldWideAstronomy/SOFA/aper.c @@ -96,9 +96,9 @@ void iauAper(double theta, iauASTROM *astrom) ** ** This revision: 2013 September 25 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { astrom->eral = theta + astrom->along; @@ -107,7 +107,7 @@ void iauAper(double theta, iauASTROM *astrom) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -200,5 +200,4 @@ void iauAper(double theta, iauASTROM *astrom) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/aper13.c b/WorldWideAstronomy/SOFA/aper13.c index 8f945a3..e08e30c 100644 --- a/WorldWideAstronomy/SOFA/aper13.c +++ b/WorldWideAstronomy/SOFA/aper13.c @@ -115,9 +115,9 @@ void iauAper13(double ut11, double ut12, iauASTROM *astrom) ** ** This revision: 2013 September 25 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauAper(iauEra00(ut11,ut12), astrom); @@ -126,7 +126,7 @@ void iauAper13(double ut11, double ut12, iauASTROM *astrom) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -219,5 +219,4 @@ void iauAper13(double ut11, double ut12, iauASTROM *astrom) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apio.c b/WorldWideAstronomy/SOFA/apio.c index 3d9ea01..e52711e 100644 --- a/WorldWideAstronomy/SOFA/apio.c +++ b/WorldWideAstronomy/SOFA/apio.c @@ -120,9 +120,9 @@ void iauApio(double sp, double theta, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double sl, cl, pv[2][3]; @@ -158,7 +158,7 @@ void iauApio(double sp, double theta, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -251,5 +251,4 @@ void iauApio(double sp, double theta, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/apio13.c b/WorldWideAstronomy/SOFA/apio13.c index 27e592c..f49d5dc 100644 --- a/WorldWideAstronomy/SOFA/apio13.c +++ b/WorldWideAstronomy/SOFA/apio13.c @@ -169,9 +169,9 @@ int iauApio13(double utc1, double utc2, double dut1, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j; @@ -204,7 +204,7 @@ int iauApio13(double utc1, double utc2, double dut1, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -297,5 +297,4 @@ int iauApio13(double utc1, double utc2, double dut1, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atci13.c b/WorldWideAstronomy/SOFA/atci13.c index a9bfc2c..5e99c32 100644 --- a/WorldWideAstronomy/SOFA/atci13.c +++ b/WorldWideAstronomy/SOFA/atci13.c @@ -85,9 +85,9 @@ void iauAtci13(double rc, double dc, ** ** This revision: 2017 March 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Star-independent astrometry parameters */ @@ -104,7 +104,7 @@ void iauAtci13(double rc, double dc, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -197,5 +197,4 @@ void iauAtci13(double rc, double dc, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atciq.c b/WorldWideAstronomy/SOFA/atciq.c index a536c97..2e254e0 100644 --- a/WorldWideAstronomy/SOFA/atciq.c +++ b/WorldWideAstronomy/SOFA/atciq.c @@ -71,9 +71,9 @@ void iauAtciq(double rc, double dc, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double pco[3], pnat[3], ppr[3], pi[3], w; @@ -99,7 +99,7 @@ void iauAtciq(double rc, double dc, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -192,5 +192,4 @@ void iauAtciq(double rc, double dc, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atciqn.c b/WorldWideAstronomy/SOFA/atciqn.c index 353f805..d054b03 100644 --- a/WorldWideAstronomy/SOFA/atciqn.c +++ b/WorldWideAstronomy/SOFA/atciqn.c @@ -108,9 +108,9 @@ void iauAtciqn(double rc, double dc, double pr, double pd, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double pco[3], pnat[3], ppr[3], pi[3], w; @@ -136,7 +136,7 @@ void iauAtciqn(double rc, double dc, double pr, double pd, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -229,5 +229,4 @@ void iauAtciqn(double rc, double dc, double pr, double pd, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atciqz.c b/WorldWideAstronomy/SOFA/atciqz.c index 45d92cc..7a116ea 100644 --- a/WorldWideAstronomy/SOFA/atciqz.c +++ b/WorldWideAstronomy/SOFA/atciqz.c @@ -70,9 +70,9 @@ void iauAtciqz(double rc, double dc, iauASTROM *astrom, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double pco[3], pnat[3], ppr[3], pi[3], w; @@ -98,7 +98,7 @@ void iauAtciqz(double rc, double dc, iauASTROM *astrom, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -191,5 +191,4 @@ void iauAtciqz(double rc, double dc, iauASTROM *astrom, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atco13.c b/WorldWideAstronomy/SOFA/atco13.c index 131b2ae..e1b401e 100644 --- a/WorldWideAstronomy/SOFA/atco13.c +++ b/WorldWideAstronomy/SOFA/atco13.c @@ -158,9 +158,9 @@ int iauAtco13(double rc, double dc, ** ** This revision: 2016 February 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j; @@ -188,7 +188,7 @@ int iauAtco13(double rc, double dc, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -281,5 +281,4 @@ int iauAtco13(double rc, double dc, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atic13.c b/WorldWideAstronomy/SOFA/atic13.c index b4578b4..aa74394 100644 --- a/WorldWideAstronomy/SOFA/atic13.c +++ b/WorldWideAstronomy/SOFA/atic13.c @@ -78,9 +78,9 @@ void iauAtic13(double ri, double di, double date1, double date2, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Star-independent astrometry parameters */ @@ -97,7 +97,7 @@ void iauAtic13(double ri, double di, double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -190,5 +190,4 @@ void iauAtic13(double ri, double di, double date1, double date2, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/aticq.c b/WorldWideAstronomy/SOFA/aticq.c index 8cc7a79..08d1ee0 100644 --- a/WorldWideAstronomy/SOFA/aticq.c +++ b/WorldWideAstronomy/SOFA/aticq.c @@ -66,9 +66,9 @@ void iauAticq(double ri, double di, iauASTROM *astrom, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j, i; @@ -144,7 +144,7 @@ void iauAticq(double ri, double di, iauASTROM *astrom, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -237,5 +237,4 @@ void iauAticq(double ri, double di, iauASTROM *astrom, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/aticqn.c b/WorldWideAstronomy/SOFA/aticqn.c index 899c7f3..46623af 100644 --- a/WorldWideAstronomy/SOFA/aticqn.c +++ b/WorldWideAstronomy/SOFA/aticqn.c @@ -3,9 +3,9 @@ void iauAticqn(double ri, double di, iauASTROM *astrom, int n, iauLDBODY b[], double *rc, double *dc) /* -** - - - - - - - - - +** - - - - - - - - - - ** i a u A t i c q n -** - - - - - - - - - +** - - - - - - - - - - ** ** Quick CIRS to ICRS astrometric place transformation, given the star- ** independent astrometry parameters plus a list of light-deflecting @@ -102,11 +102,11 @@ void iauAticqn(double ri, double di, iauASTROM *astrom, ** iauC2s p-vector to spherical ** iauAnp normalize angle into range +/- pi ** -** This revision: 2013 October 9 +** This revision: 2018 December 13 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j, i; @@ -182,7 +182,7 @@ void iauAticqn(double ri, double di, iauASTROM *astrom, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -275,5 +275,4 @@ void iauAticqn(double ri, double di, iauASTROM *astrom, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atio13.c b/WorldWideAstronomy/SOFA/atio13.c index ad741c9..172dad2 100644 --- a/WorldWideAstronomy/SOFA/atio13.c +++ b/WorldWideAstronomy/SOFA/atio13.c @@ -139,11 +139,11 @@ int iauAtio13(double ri, double di, ** iauApio13 astrometry parameters, CIRS-observed, 2013 ** iauAtioq quick CIRS to observed ** -** This revision: 2016 February 2 +** This revision: 2016 February 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j; @@ -167,7 +167,7 @@ int iauAtio13(double ri, double di, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -260,5 +260,4 @@ int iauAtio13(double ri, double di, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atioq.c b/WorldWideAstronomy/SOFA/atioq.c index ff52590..151c7dc 100644 --- a/WorldWideAstronomy/SOFA/atioq.c +++ b/WorldWideAstronomy/SOFA/atioq.c @@ -102,9 +102,9 @@ void iauAtioq(double ri, double di, iauASTROM *astrom, ** ** This revision: 2016 March 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Minimum cos(alt) and sin(alt) for refraction purposes */ @@ -188,7 +188,7 @@ void iauAtioq(double ri, double di, iauASTROM *astrom, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -281,5 +281,4 @@ void iauAtioq(double ri, double di, iauASTROM *astrom, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atoc13.c b/WorldWideAstronomy/SOFA/atoc13.c index 59cdf2f..a9d2789 100644 --- a/WorldWideAstronomy/SOFA/atoc13.c +++ b/WorldWideAstronomy/SOFA/atoc13.c @@ -148,9 +148,9 @@ int iauAtoc13(const char *type, double ob1, double ob2, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j; @@ -178,7 +178,7 @@ int iauAtoc13(const char *type, double ob1, double ob2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -271,5 +271,4 @@ int iauAtoc13(const char *type, double ob1, double ob2, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atoi13.c b/WorldWideAstronomy/SOFA/atoi13.c index b869f25..0fb4fd3 100644 --- a/WorldWideAstronomy/SOFA/atoi13.c +++ b/WorldWideAstronomy/SOFA/atoi13.c @@ -147,9 +147,9 @@ int iauAtoi13(const char *type, double ob1, double ob2, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j; @@ -173,7 +173,7 @@ int iauAtoi13(const char *type, double ob1, double ob2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -266,5 +266,4 @@ int iauAtoi13(const char *type, double ob1, double ob2, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/atoiq.c b/WorldWideAstronomy/SOFA/atoiq.c index 61769a0..67ca1ec 100644 --- a/WorldWideAstronomy/SOFA/atoiq.c +++ b/WorldWideAstronomy/SOFA/atoiq.c @@ -92,9 +92,9 @@ void iauAtoiq(const char *type, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int c; @@ -202,7 +202,7 @@ void iauAtoiq(const char *type, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -295,5 +295,4 @@ void iauAtoiq(const char *type, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/bi00.c b/WorldWideAstronomy/SOFA/bi00.c index e7c5600..19e2921 100644 --- a/WorldWideAstronomy/SOFA/bi00.c +++ b/WorldWideAstronomy/SOFA/bi00.c @@ -48,9 +48,9 @@ void iauBi00(double *dpsibi, double *depsbi, double *dra) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* The frame bias corrections in longitude and obliquity */ @@ -70,7 +70,7 @@ void iauBi00(double *dpsibi, double *depsbi, double *dra) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/bp00.c b/WorldWideAstronomy/SOFA/bp00.c index 4394914..058a797 100644 --- a/WorldWideAstronomy/SOFA/bp00.c +++ b/WorldWideAstronomy/SOFA/bp00.c @@ -77,9 +77,9 @@ void iauBp00(double date1, double date2, ** ** This revision: 2013 August 21 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* J2000.0 obliquity (Lieske et al. 1977) */ @@ -126,7 +126,7 @@ void iauBp00(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/bp06.c b/WorldWideAstronomy/SOFA/bp06.c index b6413f0..680d799 100644 --- a/WorldWideAstronomy/SOFA/bp06.c +++ b/WorldWideAstronomy/SOFA/bp06.c @@ -71,9 +71,9 @@ void iauBp06(double date1, double date2, ** ** This revision: 2013 August 21 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double gamb, phib, psib, epsa, rbpw[3][3], rbt[3][3]; @@ -97,7 +97,7 @@ void iauBp06(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/bpn2xy.c b/WorldWideAstronomy/SOFA/bpn2xy.c index 546cbea..28012e1 100644 --- a/WorldWideAstronomy/SOFA/bpn2xy.c +++ b/WorldWideAstronomy/SOFA/bpn2xy.c @@ -41,9 +41,9 @@ void iauBpn2xy(double rbpn[3][3], double *x, double *y) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Extract the X,Y coordinates. */ @@ -54,7 +54,7 @@ void iauBpn2xy(double rbpn[3][3], double *x, double *y) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2i00a.c b/WorldWideAstronomy/SOFA/c2i00a.c index cbd71b3..26042a0 100644 --- a/WorldWideAstronomy/SOFA/c2i00a.c +++ b/WorldWideAstronomy/SOFA/c2i00a.c @@ -75,9 +75,9 @@ void iauC2i00a(double date1, double date2, double rc2i[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rbpn[3][3]; @@ -93,7 +93,7 @@ void iauC2i00a(double date1, double date2, double rc2i[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2i00b.c b/WorldWideAstronomy/SOFA/c2i00b.c index b5522f2..945e70e 100644 --- a/WorldWideAstronomy/SOFA/c2i00b.c +++ b/WorldWideAstronomy/SOFA/c2i00b.c @@ -75,9 +75,9 @@ void iauC2i00b(double date1, double date2, double rc2i[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rbpn[3][3]; @@ -93,7 +93,7 @@ void iauC2i00b(double date1, double date2, double rc2i[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2i06a.c b/WorldWideAstronomy/SOFA/c2i06a.c index 9ce073d..7aa7046 100644 --- a/WorldWideAstronomy/SOFA/c2i06a.c +++ b/WorldWideAstronomy/SOFA/c2i06a.c @@ -66,9 +66,9 @@ void iauC2i06a(double date1, double date2, double rc2i[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rbpn[3][3], x, y, s; @@ -90,7 +90,7 @@ void iauC2i06a(double date1, double date2, double rc2i[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2ibpn.c b/WorldWideAstronomy/SOFA/c2ibpn.c index c81851b..0fae02c 100644 --- a/WorldWideAstronomy/SOFA/c2ibpn.c +++ b/WorldWideAstronomy/SOFA/c2ibpn.c @@ -78,9 +78,9 @@ void iauC2ibpn(double date1, double date2, double rbpn[3][3], ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, y; @@ -96,7 +96,7 @@ void iauC2ibpn(double date1, double date2, double rbpn[3][3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2ixy.c b/WorldWideAstronomy/SOFA/c2ixy.c index ce96a24..d584835 100644 --- a/WorldWideAstronomy/SOFA/c2ixy.c +++ b/WorldWideAstronomy/SOFA/c2ixy.c @@ -72,9 +72,9 @@ void iauC2ixy(double date1, double date2, double x, double y, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -85,7 +85,7 @@ void iauC2ixy(double date1, double date2, double x, double y, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2ixys.c b/WorldWideAstronomy/SOFA/c2ixys.c index 1c5abab..20e76ef 100644 --- a/WorldWideAstronomy/SOFA/c2ixys.c +++ b/WorldWideAstronomy/SOFA/c2ixys.c @@ -54,9 +54,9 @@ void iauC2ixys(double x, double y, double s, double rc2i[3][3]) ** ** This revision: 2014 November 7 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double r2, e, d; @@ -77,7 +77,7 @@ void iauC2ixys(double x, double y, double s, double rc2i[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2s.c b/WorldWideAstronomy/SOFA/c2s.c index e9d134e..09c5fc6 100644 --- a/WorldWideAstronomy/SOFA/c2s.c +++ b/WorldWideAstronomy/SOFA/c2s.c @@ -30,9 +30,9 @@ void iauC2s(double p[3], double *theta, double *phi) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, y, z, d2; @@ -50,7 +50,7 @@ void iauC2s(double p[3], double *theta, double *phi) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2t00a.c b/WorldWideAstronomy/SOFA/c2t00a.c index 84e1232..391947a 100644 --- a/WorldWideAstronomy/SOFA/c2t00a.c +++ b/WorldWideAstronomy/SOFA/c2t00a.c @@ -81,9 +81,9 @@ void iauC2t00a(double tta, double ttb, double uta, double utb, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rc2i[3][3], era, sp, rpom[3][3]; @@ -108,7 +108,7 @@ void iauC2t00a(double tta, double ttb, double uta, double utb, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2t00b.c b/WorldWideAstronomy/SOFA/c2t00b.c index 2909514..b3025b2 100644 --- a/WorldWideAstronomy/SOFA/c2t00b.c +++ b/WorldWideAstronomy/SOFA/c2t00b.c @@ -80,9 +80,9 @@ void iauC2t00b(double tta, double ttb, double uta, double utb, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rc2i[3][3], era, rpom[3][3]; @@ -104,7 +104,7 @@ void iauC2t00b(double tta, double ttb, double uta, double utb, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2t06a.c b/WorldWideAstronomy/SOFA/c2t06a.c index 872a2f5..d1b47f9 100644 --- a/WorldWideAstronomy/SOFA/c2t06a.c +++ b/WorldWideAstronomy/SOFA/c2t06a.c @@ -79,9 +79,9 @@ void iauC2t06a(double tta, double ttb, double uta, double utb, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rc2i[3][3], era, sp, rpom[3][3]; @@ -106,7 +106,7 @@ void iauC2t06a(double tta, double ttb, double uta, double utb, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2tcio.c b/WorldWideAstronomy/SOFA/c2tcio.c index b1079fe..9685047 100644 --- a/WorldWideAstronomy/SOFA/c2tcio.c +++ b/WorldWideAstronomy/SOFA/c2tcio.c @@ -59,9 +59,9 @@ void iauC2tcio(double rc2i[3][3], double era, double rpom[3][3], ** ** This revision: 2013 August 24 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double r[3][3]; @@ -76,7 +76,7 @@ void iauC2tcio(double rc2i[3][3], double era, double rpom[3][3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2teqx.c b/WorldWideAstronomy/SOFA/c2teqx.c index 1ca4af5..c4878c7 100644 --- a/WorldWideAstronomy/SOFA/c2teqx.c +++ b/WorldWideAstronomy/SOFA/c2teqx.c @@ -59,9 +59,9 @@ void iauC2teqx(double rbpn[3][3], double gst, double rpom[3][3], ** ** This revision: 2013 August 24 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double r[3][3]; @@ -76,7 +76,7 @@ void iauC2teqx(double rbpn[3][3], double gst, double rpom[3][3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2tpe.c b/WorldWideAstronomy/SOFA/c2tpe.c index a04b5e4..99b186d 100644 --- a/WorldWideAstronomy/SOFA/c2tpe.c +++ b/WorldWideAstronomy/SOFA/c2tpe.c @@ -90,9 +90,9 @@ void iauC2tpe(double tta, double ttb, double uta, double utb, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double epsa, rb[3][3], rp[3][3], rbp[3][3], rn[3][3], @@ -121,7 +121,7 @@ void iauC2tpe(double tta, double ttb, double uta, double utb, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/c2txy.c b/WorldWideAstronomy/SOFA/c2txy.c index 0255017..f9baa5e 100644 --- a/WorldWideAstronomy/SOFA/c2txy.c +++ b/WorldWideAstronomy/SOFA/c2txy.c @@ -86,9 +86,9 @@ void iauC2txy(double tta, double ttb, double uta, double utb, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rc2i[3][3], era, sp, rpom[3][3]; @@ -113,7 +113,7 @@ void iauC2txy(double tta, double ttb, double uta, double utb, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/cal2jd.c b/WorldWideAstronomy/SOFA/cal2jd.c index 60d3d1f..8130ee7 100644 --- a/WorldWideAstronomy/SOFA/cal2jd.c +++ b/WorldWideAstronomy/SOFA/cal2jd.c @@ -50,9 +50,9 @@ int iauCal2jd(int iy, int im, int id, double *djm0, double *djm) ** ** This revision: 2013 August 7 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j, ly, my; @@ -93,7 +93,7 @@ int iauCal2jd(int iy, int im, int id, double *djm0, double *djm) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/cp.c b/WorldWideAstronomy/SOFA/cp.c index 0a6c740..ab5ded2 100644 --- a/WorldWideAstronomy/SOFA/cp.c +++ b/WorldWideAstronomy/SOFA/cp.c @@ -21,9 +21,9 @@ void iauCp(double p[3], double c[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { c[0] = p[0]; @@ -34,7 +34,7 @@ void iauCp(double p[3], double c[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/cpv.c b/WorldWideAstronomy/SOFA/cpv.c index b991a5e..4bea81d 100644 --- a/WorldWideAstronomy/SOFA/cpv.c +++ b/WorldWideAstronomy/SOFA/cpv.c @@ -24,9 +24,9 @@ void iauCpv(double pv[2][3], double c[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauCp(pv[0], c[0]); @@ -36,7 +36,7 @@ void iauCpv(double pv[2][3], double c[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/cr.c b/WorldWideAstronomy/SOFA/cr.c index 730e169..f161679 100644 --- a/WorldWideAstronomy/SOFA/cr.c +++ b/WorldWideAstronomy/SOFA/cr.c @@ -24,9 +24,9 @@ void iauCr(double r[3][3], double c[3][3]) ** ** This revision: 2016 May 19 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauCp(r[0], c[0]); @@ -37,7 +37,7 @@ void iauCr(double r[3][3], double c[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/d2dtf.c b/WorldWideAstronomy/SOFA/d2dtf.c index cc660fc..279e738 100644 --- a/WorldWideAstronomy/SOFA/d2dtf.c +++ b/WorldWideAstronomy/SOFA/d2dtf.c @@ -78,9 +78,9 @@ int iauD2dtf(const char *scale, int ndp, double d1, double d2, ** ** This revision: 2014 February 15 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int leap; @@ -190,7 +190,7 @@ int iauD2dtf(const char *scale, int ndp, double d1, double d2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/d2tf.c b/WorldWideAstronomy/SOFA/d2tf.c index 091a2ed..f50677a 100644 --- a/WorldWideAstronomy/SOFA/d2tf.c +++ b/WorldWideAstronomy/SOFA/d2tf.c @@ -18,7 +18,7 @@ void iauD2tf(int ndp, double days, char *sign, int ihmsf[4]) ** days double interval in days ** ** Returned: -** sign char '+' or '-' +** sign char* '+' or '-' ** ihmsf int[4] hours, minutes, seconds, fraction ** ** Notes: @@ -53,11 +53,11 @@ void iauD2tf(int ndp, double days, char *sign, int ihmsf[4]) ** case where days is very nearly 1.0 and rounds up to 24 hours, ** by testing for ihmsf[0]=24 and setting ihmsf[0-3] to zero. ** -** This revision: 2013 June 18 +** This revision: 2020 April 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int nrs, n; @@ -114,7 +114,7 @@ void iauD2tf(int ndp, double days, char *sign, int ihmsf[4]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/dat.c b/WorldWideAstronomy/SOFA/dat.c index 1f67e50..b7f60d6 100644 --- a/WorldWideAstronomy/SOFA/dat.c +++ b/WorldWideAstronomy/SOFA/dat.c @@ -1,6 +1,6 @@ #include "sofa.h" -int iauDat(int iy, int im, int id, double fd, double *deltat ) +int iauDat(int iy, int im, int id, double fd, double *deltat) /* ** - - - - - - - ** i a u D a t @@ -120,15 +120,15 @@ int iauDat(int iy, int im, int id, double fd, double *deltat ) ** Called: ** iauCal2jd Gregorian calendar to JD ** -** This revision: 2017 October 7 +** This revision: 2020 May 31 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Release year for this version of iauDat */ - enum { IYV = 2017}; + enum { IYV = 2020}; /* Reference dates (MJD) and drift rates (s/day), pre leap seconds */ static const double drift[][2] = { diff --git a/WorldWideAstronomy/SOFA/dtdb.c b/WorldWideAstronomy/SOFA/dtdb.c index d425a10..d6ee573 100644 --- a/WorldWideAstronomy/SOFA/dtdb.c +++ b/WorldWideAstronomy/SOFA/dtdb.c @@ -164,9 +164,9 @@ double iauDtdb(double date1, double date2, ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, tsol, w, elsun, emsun, d, elj, els, wt, w0, w1, w2, w3, w4, @@ -1167,7 +1167,7 @@ double iauDtdb(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/dtf2d.c b/WorldWideAstronomy/SOFA/dtf2d.c index ea89275..200d93b 100644 --- a/WorldWideAstronomy/SOFA/dtf2d.c +++ b/WorldWideAstronomy/SOFA/dtf2d.c @@ -82,9 +82,9 @@ int iauDtf2d(const char *scale, int iy, int im, int id, ** ** This revision: 2013 July 26 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int js, iy2, im2, id2; @@ -157,7 +157,7 @@ int iauDtf2d(const char *scale, int iy, int im, int id, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/eceq06.c b/WorldWideAstronomy/SOFA/eceq06.c index 9c1e836..ec42135 100644 --- a/WorldWideAstronomy/SOFA/eceq06.c +++ b/WorldWideAstronomy/SOFA/eceq06.c @@ -60,9 +60,9 @@ void iauEceq06(double date1, double date2, double dl, double db, ** ** This revision: 2016 February 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rm[3][3], v1[3], v2[3], a, b; @@ -86,7 +86,7 @@ void iauEceq06(double date1, double date2, double dl, double db, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -179,5 +179,4 @@ void iauEceq06(double date1, double date2, double dl, double db, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ecm06.c b/WorldWideAstronomy/SOFA/ecm06.c index 0995c8e..29ba346 100644 --- a/WorldWideAstronomy/SOFA/ecm06.c +++ b/WorldWideAstronomy/SOFA/ecm06.c @@ -66,9 +66,9 @@ void iauEcm06(double date1, double date2, double rm[3][3]) ** ** This revision: 2015 December 11 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double ob, bp[3][3], e[3][3]; @@ -89,7 +89,7 @@ void iauEcm06(double date1, double date2, double rm[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -182,5 +182,4 @@ void iauEcm06(double date1, double date2, double rm[3][3]) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ee00.c b/WorldWideAstronomy/SOFA/ee00.c index ab680e9..0e18788 100644 --- a/WorldWideAstronomy/SOFA/ee00.c +++ b/WorldWideAstronomy/SOFA/ee00.c @@ -67,9 +67,9 @@ double iauEe00(double date1, double date2, double epsa, double dpsi) ** ** This revision: 2008 May 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double ee; @@ -82,7 +82,7 @@ double iauEe00(double date1, double date2, double epsa, double dpsi) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ee00a.c b/WorldWideAstronomy/SOFA/ee00a.c index e5b3e8a..0db0cd1 100644 --- a/WorldWideAstronomy/SOFA/ee00a.c +++ b/WorldWideAstronomy/SOFA/ee00a.c @@ -65,9 +65,9 @@ double iauEe00a(double date1, double date2) ** ** This revision: 2008 May 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dpsipr, depspr, epsa, dpsi, deps, ee; @@ -89,7 +89,7 @@ double iauEe00a(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ee00b.c b/WorldWideAstronomy/SOFA/ee00b.c index b88725e..0ccbb03 100644 --- a/WorldWideAstronomy/SOFA/ee00b.c +++ b/WorldWideAstronomy/SOFA/ee00b.c @@ -71,9 +71,9 @@ double iauEe00b(double date1, double date2) ** ** This revision: 2008 May 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dpsipr, depspr, epsa, dpsi, deps, ee; @@ -95,7 +95,7 @@ double iauEe00b(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ee06a.c b/WorldWideAstronomy/SOFA/ee06a.c index c1bdbd1..c061a9e 100644 --- a/WorldWideAstronomy/SOFA/ee06a.c +++ b/WorldWideAstronomy/SOFA/ee06a.c @@ -57,9 +57,9 @@ double iauEe06a(double date1, double date2) ** ** This revision: 2008 May 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double gst06a, gmst06, ee; @@ -76,7 +76,7 @@ double iauEe06a(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/eect00.c b/WorldWideAstronomy/SOFA/eect00.c index 6217cf1..72534de 100644 --- a/WorldWideAstronomy/SOFA/eect00.c +++ b/WorldWideAstronomy/SOFA/eect00.c @@ -96,11 +96,11 @@ double iauEect00(double date1, double date2) ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), ** IERS Technical Note No. 32, BKG (2004) ** -** This revision: 2017 October 12 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Time since J2000.0, in Julian centuries */ @@ -179,7 +179,7 @@ double iauEect00(double date1, double date2) const int NE0 = (int) (sizeof e0 / sizeof (TERM)); const int NE1 = (int) (sizeof e1 / sizeof (TERM)); -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Interval between fundamental epoch J2000.0 and current date (JC). */ t = ((date1 - DJ00) + date2) / DJC; @@ -236,7 +236,7 @@ double iauEect00(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/eform.c b/WorldWideAstronomy/SOFA/eform.c index 2a8eafb..645257b 100644 --- a/WorldWideAstronomy/SOFA/eform.c +++ b/WorldWideAstronomy/SOFA/eform.c @@ -62,9 +62,9 @@ int iauEform ( int n, double *a, double *f ) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -100,7 +100,7 @@ int iauEform ( int n, double *a, double *f ) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -193,5 +193,4 @@ int iauEform ( int n, double *a, double *f ) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/eo06a.c b/WorldWideAstronomy/SOFA/eo06a.c index 4f9a19a..f38dd39 100644 --- a/WorldWideAstronomy/SOFA/eo06a.c +++ b/WorldWideAstronomy/SOFA/eo06a.c @@ -61,9 +61,9 @@ double iauEo06a(double date1, double date2) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double r[3][3], x, y, s, eo; @@ -85,7 +85,7 @@ double iauEo06a(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/eors.c b/WorldWideAstronomy/SOFA/eors.c index 74290d7..21a7e3d 100644 --- a/WorldWideAstronomy/SOFA/eors.c +++ b/WorldWideAstronomy/SOFA/eors.c @@ -40,9 +40,9 @@ double iauEors(double rnpb[3][3], double s) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, ax, xs, ys, zs, p, q, eo; @@ -62,7 +62,7 @@ double iauEors(double rnpb[3][3], double s) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/epb.c b/WorldWideAstronomy/SOFA/epb.c index ec0aea8..fcb1d59 100644 --- a/WorldWideAstronomy/SOFA/epb.c +++ b/WorldWideAstronomy/SOFA/epb.c @@ -33,9 +33,9 @@ double iauEpb(double dj1, double dj2) ** ** This revision: 2013 August 21 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* J2000.0-B1900.0 (2415019.81352) in days */ @@ -45,7 +45,7 @@ double iauEpb(double dj1, double dj2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/epb2jd.c b/WorldWideAstronomy/SOFA/epb2jd.c index e5a9a5f..c819722 100644 --- a/WorldWideAstronomy/SOFA/epb2jd.c +++ b/WorldWideAstronomy/SOFA/epb2jd.c @@ -33,9 +33,9 @@ void iauEpb2jd(double epb, double *djm0, double *djm) ** ** This revision: 2013 August 13 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { *djm0 = DJM0; @@ -45,7 +45,7 @@ void iauEpb2jd(double epb, double *djm0, double *djm) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/epj.c b/WorldWideAstronomy/SOFA/epj.c index 6302408..4d7e40f 100644 --- a/WorldWideAstronomy/SOFA/epj.c +++ b/WorldWideAstronomy/SOFA/epj.c @@ -33,9 +33,9 @@ double iauEpj(double dj1, double dj2) ** ** This revision: 2013 August 7 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double epj; @@ -47,7 +47,7 @@ double iauEpj(double dj1, double dj2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/epj2jd.c b/WorldWideAstronomy/SOFA/epj2jd.c index a681064..4b41aed 100644 --- a/WorldWideAstronomy/SOFA/epj2jd.c +++ b/WorldWideAstronomy/SOFA/epj2jd.c @@ -33,9 +33,9 @@ void iauEpj2jd(double epj, double *djm0, double *djm) ** ** This revision: 2013 August 7 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { *djm0 = DJM0; @@ -45,7 +45,7 @@ void iauEpj2jd(double epj, double *djm0, double *djm) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/epv00.c b/WorldWideAstronomy/SOFA/epv00.c index d287fd8..720b30c 100644 --- a/WorldWideAstronomy/SOFA/epv00.c +++ b/WorldWideAstronomy/SOFA/epv00.c @@ -99,11 +99,11 @@ int iauEpv00(double date1, double date2, ** 5) It is permissible to use the same array for pvh and pvb, which ** will receive the barycentric values. ** -** This revision: 2017 March 16 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* @@ -2393,7 +2393,7 @@ int iauEpv00(double date1, double date2, double t, t2, xyz, xyzd, a, b, c, ct, p, cp, ph[3], vh[3], pb[3], vb[3], x, y, z; -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Time since reference epoch, Julian years. */ t = ((date1 - DJ00) + date2) / DJY; @@ -2543,7 +2543,7 @@ int iauEpv00(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/eqec06.c b/WorldWideAstronomy/SOFA/eqec06.c index 3302a33..ed3e6c0 100644 --- a/WorldWideAstronomy/SOFA/eqec06.c +++ b/WorldWideAstronomy/SOFA/eqec06.c @@ -61,9 +61,9 @@ void iauEqec06(double date1, double date2, double dr, double dd, ** ** This revision: 2016 February 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rm[3][3], v1[3], v2[3], a, b; @@ -87,7 +87,7 @@ void iauEqec06(double date1, double date2, double dr, double dd, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -180,5 +180,4 @@ void iauEqec06(double date1, double date2, double dr, double dd, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/eqeq94.c b/WorldWideAstronomy/SOFA/eqeq94.c index f6a8532..dcb4638 100644 --- a/WorldWideAstronomy/SOFA/eqeq94.c +++ b/WorldWideAstronomy/SOFA/eqeq94.c @@ -58,9 +58,9 @@ double iauEqeq94(double date1, double date2) ** ** This revision: 2017 October 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, om, dpsi, deps, eps0, ee; @@ -86,7 +86,7 @@ double iauEqeq94(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/era00.c b/WorldWideAstronomy/SOFA/era00.c index 125abf5..58d521a 100644 --- a/WorldWideAstronomy/SOFA/era00.c +++ b/WorldWideAstronomy/SOFA/era00.c @@ -61,9 +61,9 @@ double iauEra00(double dj1, double dj2) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double d1, d2, t, f, theta; @@ -90,7 +90,7 @@ double iauEra00(double dj1, double dj2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fad03.c b/WorldWideAstronomy/SOFA/fad03.c index 2461765..40d8543 100644 --- a/WorldWideAstronomy/SOFA/fad03.c +++ b/WorldWideAstronomy/SOFA/fad03.c @@ -38,9 +38,9 @@ double iauFad03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -57,7 +57,7 @@ double iauFad03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fae03.c b/WorldWideAstronomy/SOFA/fae03.c index da638e6..6a61456 100644 --- a/WorldWideAstronomy/SOFA/fae03.c +++ b/WorldWideAstronomy/SOFA/fae03.c @@ -41,9 +41,9 @@ double iauFae03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -56,7 +56,7 @@ double iauFae03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/faf03.c b/WorldWideAstronomy/SOFA/faf03.c index 17a8d07..e3f7e98 100644 --- a/WorldWideAstronomy/SOFA/faf03.c +++ b/WorldWideAstronomy/SOFA/faf03.c @@ -39,9 +39,9 @@ double iauFaf03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -60,7 +60,7 @@ double iauFaf03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/faju03.c b/WorldWideAstronomy/SOFA/faju03.c index 4012d39..6c32628 100644 --- a/WorldWideAstronomy/SOFA/faju03.c +++ b/WorldWideAstronomy/SOFA/faju03.c @@ -41,9 +41,9 @@ double iauFaju03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -56,7 +56,7 @@ double iauFaju03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fal03.c b/WorldWideAstronomy/SOFA/fal03.c index 68fb781..3787e26 100644 --- a/WorldWideAstronomy/SOFA/fal03.c +++ b/WorldWideAstronomy/SOFA/fal03.c @@ -38,9 +38,9 @@ double iauFal03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -57,7 +57,7 @@ double iauFal03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/falp03.c b/WorldWideAstronomy/SOFA/falp03.c index 89b1979..9d4e1b2 100644 --- a/WorldWideAstronomy/SOFA/falp03.c +++ b/WorldWideAstronomy/SOFA/falp03.c @@ -38,9 +38,9 @@ double iauFalp03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -57,7 +57,7 @@ double iauFalp03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fama03.c b/WorldWideAstronomy/SOFA/fama03.c index 2f2ea8a..cfffd30 100644 --- a/WorldWideAstronomy/SOFA/fama03.c +++ b/WorldWideAstronomy/SOFA/fama03.c @@ -41,9 +41,9 @@ double iauFama03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -56,7 +56,7 @@ double iauFama03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fame03.c b/WorldWideAstronomy/SOFA/fame03.c index 43397c3..8347021 100644 --- a/WorldWideAstronomy/SOFA/fame03.c +++ b/WorldWideAstronomy/SOFA/fame03.c @@ -41,9 +41,9 @@ double iauFame03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -56,7 +56,7 @@ double iauFame03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fane03.c b/WorldWideAstronomy/SOFA/fane03.c index 750b614..50227d3 100644 --- a/WorldWideAstronomy/SOFA/fane03.c +++ b/WorldWideAstronomy/SOFA/fane03.c @@ -38,9 +38,9 @@ double iauFane03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -53,7 +53,7 @@ double iauFane03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/faom03.c b/WorldWideAstronomy/SOFA/faom03.c index 530541a..953bd42 100644 --- a/WorldWideAstronomy/SOFA/faom03.c +++ b/WorldWideAstronomy/SOFA/faom03.c @@ -38,9 +38,9 @@ double iauFaom03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -58,7 +58,7 @@ double iauFaom03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fapa03.c b/WorldWideAstronomy/SOFA/fapa03.c index 1b75a93..3ec1d56 100644 --- a/WorldWideAstronomy/SOFA/fapa03.c +++ b/WorldWideAstronomy/SOFA/fapa03.c @@ -42,9 +42,9 @@ double iauFapa03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -57,7 +57,7 @@ double iauFapa03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fasa03.c b/WorldWideAstronomy/SOFA/fasa03.c index d18cbab..263ac99 100644 --- a/WorldWideAstronomy/SOFA/fasa03.c +++ b/WorldWideAstronomy/SOFA/fasa03.c @@ -41,9 +41,9 @@ double iauFasa03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -56,7 +56,7 @@ double iauFasa03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/faur03.c b/WorldWideAstronomy/SOFA/faur03.c index 8af6314..916939e 100644 --- a/WorldWideAstronomy/SOFA/faur03.c +++ b/WorldWideAstronomy/SOFA/faur03.c @@ -38,9 +38,9 @@ double iauFaur03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -53,7 +53,7 @@ double iauFaur03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fave03.c b/WorldWideAstronomy/SOFA/fave03.c index e543ba9..d2ffaee 100644 --- a/WorldWideAstronomy/SOFA/fave03.c +++ b/WorldWideAstronomy/SOFA/fave03.c @@ -41,9 +41,9 @@ double iauFave03(double t) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double a; @@ -56,7 +56,7 @@ double iauFave03(double t) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fk52h.c b/WorldWideAstronomy/SOFA/fk52h.c index f4b2c37..40b6ee4 100644 --- a/WorldWideAstronomy/SOFA/fk52h.c +++ b/WorldWideAstronomy/SOFA/fk52h.c @@ -60,9 +60,9 @@ void iauFk52h(double r5, double d5, ** ** This revision: 2017 October 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int i; @@ -97,7 +97,7 @@ void iauFk52h(double r5, double d5, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fk5hip.c b/WorldWideAstronomy/SOFA/fk5hip.c index 58a2bce..387e1cc 100644 --- a/WorldWideAstronomy/SOFA/fk5hip.c +++ b/WorldWideAstronomy/SOFA/fk5hip.c @@ -43,9 +43,9 @@ void iauFk5hip(double r5h[3][3], double s5h[3]) ** ** This revision: 2017 October 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double v[3]; @@ -80,7 +80,7 @@ void iauFk5hip(double r5h[3][3], double s5h[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fk5hz.c b/WorldWideAstronomy/SOFA/fk5hz.c index 2abf9f5..87d1cbc 100644 --- a/WorldWideAstronomy/SOFA/fk5hz.c +++ b/WorldWideAstronomy/SOFA/fk5hz.c @@ -76,9 +76,9 @@ void iauFk5hz(double r5, double d5, double date1, double date2, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, p5e[3], r5h[3][3], s5h[3], vst[3], rst[3][3], p5[3], @@ -114,7 +114,7 @@ void iauFk5hz(double r5, double d5, double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fw2m.c b/WorldWideAstronomy/SOFA/fw2m.c index d2debf1..9d4f21e 100644 --- a/WorldWideAstronomy/SOFA/fw2m.c +++ b/WorldWideAstronomy/SOFA/fw2m.c @@ -44,13 +44,16 @@ void iauFw2m(double gamb, double phib, double psi, double eps, ** ** NxPxB = R_1(-eps).R_3(-psi).R_1(phib).R_3(gamb) ** -** 3) Three different matrices can be constructed, depending on the -** supplied angles: +** 3) The present function can construct three different matrices, +** depending on which angles are supplied as the arguments gamb, +** phib, psi and eps: ** ** o To obtain the nutation x precession x frame bias matrix, -** generate the four precession angles, generate the nutation -** components and add them to the psi_bar and epsilon_A angles, -** and call the present function. +** first generate the four precession angles known conventionally +** as gamma_bar, phi_bar, psi_bar and epsilon_A, then generate +** the nutation components Dpsi and Depsilon and add them to +** psi_bar and epsilon_A, and finally call the present function +** using those four angles as arguments. ** ** o To obtain the precession x frame bias matrix, generate the ** four precession angles and call the present function. @@ -66,15 +69,16 @@ void iauFw2m(double gamb, double phib, double psi, double eps, ** iauRz rotate around Z-axis ** iauRx rotate around X-axis ** -** Reference: +** References: ** +** Capitaine, N. & Wallace, P.T., 2006, Astron.Astrophys. 450, 855 ** Hilton, J. et al., 2006, Celest.Mech.Dyn.Astron. 94, 351 ** -** This revision: 2013 June 18 +** This revision: 2019 July 26 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Construct the matrix. */ @@ -88,7 +92,7 @@ void iauFw2m(double gamb, double phib, double psi, double eps, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/fw2xy.c b/WorldWideAstronomy/SOFA/fw2xy.c index 828c36b..c3197d5 100644 --- a/WorldWideAstronomy/SOFA/fw2xy.c +++ b/WorldWideAstronomy/SOFA/fw2xy.c @@ -57,9 +57,9 @@ void iauFw2xy(double gamb, double phib, double psi, double eps, ** ** This revision: 2013 September 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double r[3][3]; @@ -75,7 +75,7 @@ void iauFw2xy(double gamb, double phib, double psi, double eps, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/g2icrs.c b/WorldWideAstronomy/SOFA/g2icrs.c index 17c85bb..40e6cea 100644 --- a/WorldWideAstronomy/SOFA/g2icrs.c +++ b/WorldWideAstronomy/SOFA/g2icrs.c @@ -68,9 +68,9 @@ void iauG2icrs ( double dl, double db, double *dr, double *dd ) ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double v1[3], v2[3]; @@ -115,7 +115,7 @@ void iauG2icrs ( double dl, double db, double *dr, double *dd ) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -208,5 +208,4 @@ void iauG2icrs ( double dl, double db, double *dr, double *dd ) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/gc2gd.c b/WorldWideAstronomy/SOFA/gc2gd.c index 0a28f58..3038f33 100644 --- a/WorldWideAstronomy/SOFA/gc2gd.c +++ b/WorldWideAstronomy/SOFA/gc2gd.c @@ -58,9 +58,9 @@ int iauGc2gd ( int n, double xyz[3], ** ** This revision: 2013 September 1 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j; @@ -88,7 +88,7 @@ int iauGc2gd ( int n, double xyz[3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -181,5 +181,4 @@ int iauGc2gd ( int n, double xyz[3], ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/gc2gde.c b/WorldWideAstronomy/SOFA/gc2gde.c index 5eb2972..d14e870 100644 --- a/WorldWideAstronomy/SOFA/gc2gde.c +++ b/WorldWideAstronomy/SOFA/gc2gde.c @@ -63,9 +63,9 @@ int iauGc2gde ( double a, double f, double xyz[3], ** ** This revision: 2014 November 7 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double aeps2, e2, e4t, ec2, ec, b, x, y, z, p2, absz, p, s0, pn, zc, @@ -153,7 +153,7 @@ int iauGc2gde ( double a, double f, double xyz[3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -246,5 +246,4 @@ int iauGc2gde ( double a, double f, double xyz[3], ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/gd2gc.c b/WorldWideAstronomy/SOFA/gd2gc.c index 7cea14e..8ae7c3d 100644 --- a/WorldWideAstronomy/SOFA/gd2gc.c +++ b/WorldWideAstronomy/SOFA/gd2gc.c @@ -61,9 +61,9 @@ int iauGd2gc ( int n, double elong, double phi, double height, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j; @@ -87,7 +87,7 @@ int iauGd2gc ( int n, double elong, double phi, double height, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -180,5 +180,4 @@ int iauGd2gc ( int n, double elong, double phi, double height, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/gd2gce.c b/WorldWideAstronomy/SOFA/gd2gce.c index 5ea9dd9..a3fd6f0 100644 --- a/WorldWideAstronomy/SOFA/gd2gce.c +++ b/WorldWideAstronomy/SOFA/gd2gce.c @@ -62,9 +62,9 @@ int iauGd2gce ( double a, double f, double elong, double phi, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double sp, cp, w, d, ac, as, r; @@ -91,7 +91,7 @@ int iauGd2gce ( double a, double f, double elong, double phi, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -184,5 +184,4 @@ int iauGd2gce ( double a, double f, double elong, double phi, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/gmst00.c b/WorldWideAstronomy/SOFA/gmst00.c index f045cb1..b184fa3 100644 --- a/WorldWideAstronomy/SOFA/gmst00.c +++ b/WorldWideAstronomy/SOFA/gmst00.c @@ -75,9 +75,9 @@ double iauGmst00(double uta, double utb, double tta, double ttb) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, gmst; @@ -99,7 +99,7 @@ double iauGmst00(double uta, double utb, double tta, double ttb) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/gmst06.c b/WorldWideAstronomy/SOFA/gmst06.c index ba2981e..6d7471c 100644 --- a/WorldWideAstronomy/SOFA/gmst06.c +++ b/WorldWideAstronomy/SOFA/gmst06.c @@ -65,9 +65,9 @@ double iauGmst06(double uta, double utb, double tta, double ttb) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, gmst; @@ -90,7 +90,7 @@ double iauGmst06(double uta, double utb, double tta, double ttb) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/gmst82.c b/WorldWideAstronomy/SOFA/gmst82.c index b42d537..81806a7 100644 --- a/WorldWideAstronomy/SOFA/gmst82.c +++ b/WorldWideAstronomy/SOFA/gmst82.c @@ -65,11 +65,11 @@ double iauGmst82(double dj1, double dj2) ** ** Aoki et al., Astron.Astrophys., 105, 359-361 (1982). ** -** This revision: 2017 October 12 +** This revision: 2020 January 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Coefficients of IAU 1982 GMST-UT1 model */ @@ -78,9 +78,8 @@ double iauGmst82(double dj1, double dj2) double C = 0.093104; double D = -6.2e-6; -/* Note: the first constant, A, has to be adjusted by 12 hours */ -/* because the UT1 is supplied as a Julian date, which begins */ -/* at noon. */ +/* The first constant, A, has to be adjusted by 12 hours because the */ +/* UT1 is supplied as a Julian date, which begins at noon. */ double d1, d2, t, f, gmst; @@ -105,7 +104,7 @@ double iauGmst82(double dj1, double dj2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/gst00a.c b/WorldWideAstronomy/SOFA/gst00a.c index 7be40d2..1089384 100644 --- a/WorldWideAstronomy/SOFA/gst00a.c +++ b/WorldWideAstronomy/SOFA/gst00a.c @@ -76,9 +76,9 @@ double iauGst00a(double uta, double utb, double tta, double ttb) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double gmst00, ee00a, gst; @@ -92,7 +92,7 @@ double iauGst00a(double uta, double utb, double tta, double ttb) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/gst00b.c b/WorldWideAstronomy/SOFA/gst00b.c index 98400cf..604ea36 100644 --- a/WorldWideAstronomy/SOFA/gst00b.c +++ b/WorldWideAstronomy/SOFA/gst00b.c @@ -84,9 +84,9 @@ double iauGst00b(double uta, double utb) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double gmst00, ee00b, gst; @@ -100,7 +100,7 @@ double iauGst00b(double uta, double utb) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/gst06.c b/WorldWideAstronomy/SOFA/gst06.c index d60b3ce..27a7098 100644 --- a/WorldWideAstronomy/SOFA/gst06.c +++ b/WorldWideAstronomy/SOFA/gst06.c @@ -71,9 +71,9 @@ double iauGst06(double uta, double utb, double tta, double ttb, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, y, s, era, eors, gst; @@ -94,7 +94,7 @@ double iauGst06(double uta, double utb, double tta, double ttb, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/gst06a.c b/WorldWideAstronomy/SOFA/gst06a.c index 758b8a7..0e6bdf7 100644 --- a/WorldWideAstronomy/SOFA/gst06a.c +++ b/WorldWideAstronomy/SOFA/gst06a.c @@ -67,9 +67,9 @@ double iauGst06a(double uta, double utb, double tta, double ttb) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rnpb[3][3], gst; @@ -85,7 +85,7 @@ double iauGst06a(double uta, double utb, double tta, double ttb) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/gst94.c b/WorldWideAstronomy/SOFA/gst94.c index 807fbcf..ffb4654 100644 --- a/WorldWideAstronomy/SOFA/gst94.c +++ b/WorldWideAstronomy/SOFA/gst94.c @@ -69,9 +69,9 @@ double iauGst94(double uta, double utb) ** ** This revision: 2008 May 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double gmst82, eqeq94, gst; @@ -85,7 +85,7 @@ double iauGst94(double uta, double utb) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/h2fk5.c b/WorldWideAstronomy/SOFA/h2fk5.c index 873cf66..7824d80 100644 --- a/WorldWideAstronomy/SOFA/h2fk5.c +++ b/WorldWideAstronomy/SOFA/h2fk5.c @@ -62,9 +62,9 @@ void iauH2fk5(double rh, double dh, ** ** This revision: 2017 October 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int i; @@ -102,7 +102,7 @@ void iauH2fk5(double rh, double dh, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/hd2ae.c b/WorldWideAstronomy/SOFA/hd2ae.c index 33a75fb..533e762 100644 --- a/WorldWideAstronomy/SOFA/hd2ae.c +++ b/WorldWideAstronomy/SOFA/hd2ae.c @@ -63,9 +63,9 @@ void iauHd2ae (double ha, double dec, double phi, ** ** Last revision: 2017 September 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double sh, ch, sd, cd, sp, cp, x, y, z, r, a; @@ -94,7 +94,7 @@ void iauHd2ae (double ha, double dec, double phi, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -187,5 +187,4 @@ void iauHd2ae (double ha, double dec, double phi, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/hd2pa.c b/WorldWideAstronomy/SOFA/hd2pa.c index 957ec48..fc1c0b1 100644 --- a/WorldWideAstronomy/SOFA/hd2pa.c +++ b/WorldWideAstronomy/SOFA/hd2pa.c @@ -51,9 +51,9 @@ double iauHd2pa (double ha, double dec, double phi) ** ** Last revision: 2017 September 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double cp, cqsz, sqsz; @@ -68,7 +68,7 @@ double iauHd2pa (double ha, double dec, double phi) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -161,5 +161,4 @@ double iauHd2pa (double ha, double dec, double phi) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/hfk5z.c b/WorldWideAstronomy/SOFA/hfk5z.c index 84579a2..92c3262 100644 --- a/WorldWideAstronomy/SOFA/hfk5z.c +++ b/WorldWideAstronomy/SOFA/hfk5z.c @@ -81,9 +81,9 @@ void iauHfk5z(double rh, double dh, double date1, double date2, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, ph[3], r5h[3][3], s5h[3], sh[3], vst[3], @@ -129,7 +129,7 @@ void iauHfk5z(double rh, double dh, double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/icrs2g.c b/WorldWideAstronomy/SOFA/icrs2g.c index 5544045..f5158b8 100644 --- a/WorldWideAstronomy/SOFA/icrs2g.c +++ b/WorldWideAstronomy/SOFA/icrs2g.c @@ -68,9 +68,9 @@ void iauIcrs2g ( double dr, double dd, double *dl, double *db ) ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double v1[3], v2[3]; @@ -115,7 +115,7 @@ void iauIcrs2g ( double dr, double dd, double *dl, double *db ) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -208,5 +208,4 @@ void iauIcrs2g ( double dr, double dd, double *dl, double *db ) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ir.c b/WorldWideAstronomy/SOFA/ir.c index 5baaa58..44d4328 100644 --- a/WorldWideAstronomy/SOFA/ir.c +++ b/WorldWideAstronomy/SOFA/ir.c @@ -18,9 +18,9 @@ void iauIr(double r[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { r[0][0] = 1.0; @@ -37,7 +37,7 @@ void iauIr(double r[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/jd2cal.c b/WorldWideAstronomy/SOFA/jd2cal.c index de1fb3d..4530e91 100644 --- a/WorldWideAstronomy/SOFA/jd2cal.c +++ b/WorldWideAstronomy/SOFA/jd2cal.c @@ -1,4 +1,5 @@ #include "sofa.h" +#include int iauJd2cal(double dj1, double dj2, int *iy, int *im, int *id, double *fd) @@ -44,53 +45,94 @@ int iauJd2cal(double dj1, double dj2, ** 2400000.5 50123.2 (MJD method) ** 2450123.5 0.2 (date & time method) ** +** Separating integer and fraction uses the "compensated summation" +** algorithm of Kahan-Neumaier to preserve as much precision as +** possible irrespective of the jd1+jd2 apportionment. +** ** 3) In early eras the conversion is from the "proleptic Gregorian ** calendar"; no account is taken of the date(s) of adoption of ** the Gregorian calendar, nor is the AD/BC numbering convention ** observed. ** -** Reference: +** References: ** ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992), ** Section 12.92 (p604). ** -** This revision: 2017 January 12 +** Klein, A., A Generalized Kahan-Babuska-Summation-Algorithm. +** Computing 76, 279-293 (2006), Section 3. +** +** This revision: 2020 June 24 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Minimum and maximum allowed JD */ const double DJMIN = -68569.5; const double DJMAX = 1e9; - long jd, l, n, i, k; - double dj, d1, d2, f1, f2, f, d; + long jd, i, l, n, k; + double dj, f1, f2, d, s, cs, v[2], x, t, f; /* Verify date is acceptable. */ dj = dj1 + dj2; if (dj < DJMIN || dj > DJMAX) return -1; -/* Copy the date, big then small, and re-align to midnight. */ - if (dj1 >= dj2) { - d1 = dj1; - d2 = dj2; - } else { - d1 = dj2; - d2 = dj1; +/* Separate day and fraction (where -0.5 <= fraction < 0.5). */ + d = dnint(dj1); + f1 = dj1 - d; + jd = (long) d; + d = dnint(dj2); + f2 = dj2 - d; + jd += (long) d; + +/* Compute f1+f2+0.5 using compensated summation (Klein 2006). */ + s = 0.5; + cs = 0.0; + v[0] = f1; + v[1] = f2; + for ( i = 0; i < 2; i++ ) { + x = v[i]; + t = s + x; + cs += fabs(s) >= fabs(x) ? (s-t) + x : (x-t) + s; + s = t; + if ( s >= 1.0 ) { + jd++; + s -= 1.0; + } + } + f = s + cs; + cs = f - s; + +/* Deal with negative f. */ + if ( f < 0.0 ) { + + /* Compensated summation: assume that |s| <= 1.0. */ + f = s + 1.0; + cs += (1.0-f) + s; + s = f; + f = s + cs; + cs = f - s; + jd--; } - d2 -= 0.5; -/* Separate day and fraction. */ - f1 = fmod(d1, 1.0); - f2 = fmod(d2, 1.0); - f = fmod(f1 + f2, 1.0); - if (f < 0.0) f += 1.0; - d = dnint(d1-f1) + dnint(d2-f2) + dnint(f1+f2-f); - jd = (long) dnint(d) + 1L; +/* Deal with f that is 1.0 or more (when rounded to double). */ + if ( (f-1.0) >= -DBL_EPSILON/4.0 ) { + + /* Compensated summation: assume that |s| <= 1.0. */ + t = s - 1.0; + cs += (s-t) - 1.0; + s = t; + f = s + cs; + if ( -DBL_EPSILON/2.0 < f ) { + jd++; + f = gmax(f, 0.0); + } + } /* Express day in Gregorian calendar. */ l = jd + 68569L; @@ -109,7 +151,7 @@ int iauJd2cal(double dj1, double dj2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/jdcalf.c b/WorldWideAstronomy/SOFA/jdcalf.c index 5dd974e..e2c5787 100644 --- a/WorldWideAstronomy/SOFA/jdcalf.c +++ b/WorldWideAstronomy/SOFA/jdcalf.c @@ -60,15 +60,15 @@ int iauJdcalf(int ndp, double dj1, double dj2, int iymdf[4]) ** P. Kenneth Seidelmann (ed), University Science Books (1992), ** Section 12.92 (p604). ** -** This revision: 2016 December 2 +** This revision: 2020 April 13 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int j, js; - double denom, d1, d2, f1, f2, f; + double denom, d1, d2, f1, f2, d, djd, f, rf; /* Denominator of fraction (e.g. 100 for 2 decimal places). */ @@ -80,32 +80,43 @@ int iauJdcalf(int ndp, double dj1, double dj2, int iymdf[4]) denom = 1.0; } -/* Copy the date, big then small, and realign to midnight. */ - if (dj1 >= dj2) { +/* Copy the date, big then small. */ + if (fabs(dj1) >= fabs(dj2)) { d1 = dj1; d2 = dj2; } else { d1 = dj2; d2 = dj1; } - d2 -= 0.5; -/* Separate days and fractions. */ - f1 = fmod(d1, 1.0); - f2 = fmod(d2, 1.0); - d1 = dnint(d1-f1); - d2 = dnint(d2-f2); +/* Realign to midnight (without rounding error). */ + d1 -= 0.5; + +/* Separate day and fraction (as precisely as possible). */ + d = dnint(d1); + f1 = d1 - d; + djd = d; + d = dnint(d2); + f2 = d2 - d; + djd += d; + d = dnint(f1 + f2); + f = (f1 - d) + f2; + if (f < 0.0) { + f += 1.0; + d -= 1.0; + } + djd += d; /* Round the total fraction to the specified number of places. */ - f = dnint((f1+f2)*denom) / denom; + rf = dnint(f*denom) / denom; -/* Re-assemble the rounded date and re-align to noon. */ - d2 += f + 0.5; +/* Re-align to noon. */ + djd += 0.5; /* Convert to Gregorian calendar. */ - js = iauJd2cal(d1, d2, &iymdf[0], &iymdf[1], &iymdf[2], &f); + js = iauJd2cal(djd, rf, &iymdf[0], &iymdf[1], &iymdf[2], &f); if (js == 0) { - iymdf[3] = (int) (f * denom); + iymdf[3] = (int) dnint(f * denom); } else { j = js; } @@ -115,7 +126,7 @@ int iauJdcalf(int ndp, double dj1, double dj2, int iymdf[4]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ld.c b/WorldWideAstronomy/SOFA/ld.c index 6f5877f..0b31836 100644 --- a/WorldWideAstronomy/SOFA/ld.c +++ b/WorldWideAstronomy/SOFA/ld.c @@ -75,9 +75,9 @@ void iauLd(double bm, double p[3], double q[3], double e[3], ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int i; @@ -106,7 +106,7 @@ void iauLd(double bm, double p[3], double q[3], double e[3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -199,5 +199,4 @@ void iauLd(double bm, double p[3], double q[3], double e[3], ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ldn.c b/WorldWideAstronomy/SOFA/ldn.c index f3b0c3f..c102948 100644 --- a/WorldWideAstronomy/SOFA/ldn.c +++ b/WorldWideAstronomy/SOFA/ldn.c @@ -85,9 +85,9 @@ void iauLdn(int n, iauLDBODY b[], double ob[3], double sc[3], ** ** This revision: 2017 March 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Light time for 1 au (days) */ @@ -128,7 +128,7 @@ void iauLdn(int n, iauLDBODY b[], double ob[3], double sc[3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -221,5 +221,4 @@ void iauLdn(int n, iauLDBODY b[], double ob[3], double sc[3], ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ldsun.c b/WorldWideAstronomy/SOFA/ldsun.c index a969ba7..f79477b 100644 --- a/WorldWideAstronomy/SOFA/ldsun.c +++ b/WorldWideAstronomy/SOFA/ldsun.c @@ -40,9 +40,9 @@ void iauLdsun(double p[3], double e[3], double em, double p1[3]) ** ** This revision: 2016 June 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double em2, dlim; @@ -60,7 +60,7 @@ void iauLdsun(double p[3], double e[3], double em, double p1[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -153,5 +153,4 @@ void iauLdsun(double p[3], double e[3], double em, double p1[3]) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/lteceq.c b/WorldWideAstronomy/SOFA/lteceq.c index d7dcc43..d519fb2 100644 --- a/WorldWideAstronomy/SOFA/lteceq.c +++ b/WorldWideAstronomy/SOFA/lteceq.c @@ -57,9 +57,9 @@ void iauLteceq(double epj, double dl, double db, double *dr, double *dd) ** ** This revision: 2016 February 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rm[3][3], v1[3], v2[3], a, b; @@ -83,7 +83,7 @@ void iauLteceq(double epj, double dl, double db, double *dr, double *dd) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -176,5 +176,4 @@ void iauLteceq(double epj, double dl, double db, double *dr, double *dd) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ltecm.c b/WorldWideAstronomy/SOFA/ltecm.c index 388c51f..d5ae6e9 100644 --- a/WorldWideAstronomy/SOFA/ltecm.c +++ b/WorldWideAstronomy/SOFA/ltecm.c @@ -63,9 +63,9 @@ void iauLtecm(double epj, double rm[3][3]) ** ** This revision: 2015 December 6 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Frame bias (IERS Conventions 2010, Eqs. 5.21 and 5.33) */ @@ -102,7 +102,7 @@ void iauLtecm(double epj, double rm[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -195,5 +195,4 @@ void iauLtecm(double epj, double rm[3][3]) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/lteqec.c b/WorldWideAstronomy/SOFA/lteqec.c index f9dbdb9..f0fd175 100644 --- a/WorldWideAstronomy/SOFA/lteqec.c +++ b/WorldWideAstronomy/SOFA/lteqec.c @@ -58,9 +58,9 @@ void iauLteqec(double epj, double dr, double dd, double *dl, double *db) ** ** This revision: 2016 February 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rm[3][3], v1[3], v2[3], a, b; @@ -84,7 +84,7 @@ void iauLteqec(double epj, double dr, double dd, double *dl, double *db) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -177,5 +177,4 @@ void iauLteqec(double epj, double dr, double dd, double *dl, double *db) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ltp.c b/WorldWideAstronomy/SOFA/ltp.c index a082658..b951bf8 100644 --- a/WorldWideAstronomy/SOFA/ltp.c +++ b/WorldWideAstronomy/SOFA/ltp.c @@ -54,9 +54,9 @@ void iauLtp(double epj, double rp[3][3]) ** ** This revision: 2015 December 6 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int i; @@ -85,7 +85,7 @@ void iauLtp(double epj, double rp[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -178,5 +178,4 @@ void iauLtp(double epj, double rp[3][3]) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ltpb.c b/WorldWideAstronomy/SOFA/ltpb.c index c59c4fd..5464f60 100644 --- a/WorldWideAstronomy/SOFA/ltpb.c +++ b/WorldWideAstronomy/SOFA/ltpb.c @@ -52,9 +52,9 @@ void iauLtpb(double epj, double rpb[3][3]) ** ** This revision: 2015 December 6 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Frame bias (IERS Conventions 2010, Eqs. 5.21 and 5.33) */ @@ -78,7 +78,7 @@ void iauLtpb(double epj, double rpb[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -171,5 +171,4 @@ void iauLtpb(double epj, double rpb[3][3]) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ltpecl.c b/WorldWideAstronomy/SOFA/ltpecl.c index c6f8f69..9ea6507 100644 --- a/WorldWideAstronomy/SOFA/ltpecl.c +++ b/WorldWideAstronomy/SOFA/ltpecl.c @@ -43,9 +43,9 @@ void iauLtpecl(double epj, double vec[3]) ** ** This revision: 2016 February 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Obliquity at J2000.0 (radians). */ @@ -122,7 +122,7 @@ void iauLtpecl(double epj, double vec[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -215,5 +215,4 @@ void iauLtpecl(double epj, double vec[3]) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/ltpequ.c b/WorldWideAstronomy/SOFA/ltpequ.c index 657c71f..3c4acb3 100644 --- a/WorldWideAstronomy/SOFA/ltpequ.c +++ b/WorldWideAstronomy/SOFA/ltpequ.c @@ -43,9 +43,9 @@ void iauLtpequ(double epj, double veq[3]) ** ** This revision: 2016 February 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Polynomial coefficients */ @@ -122,7 +122,7 @@ void iauLtpequ(double epj, double veq[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -215,5 +215,4 @@ void iauLtpequ(double epj, double veq[3]) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/makefile b/WorldWideAstronomy/SOFA/makefile index a3dcd12..99d68c9 100644 --- a/WorldWideAstronomy/SOFA/makefile +++ b/WorldWideAstronomy/SOFA/makefile @@ -33,7 +33,7 @@ # make distclean delete all generated binaries # make realclean same as distclean # -# Last revision: 2018 January 26 +# Last revision: 2019 July 22 # # Copyright International Astronomical Union. All rights reserved. # @@ -183,7 +183,11 @@ SOFA_OBS = iauA2af.o \ iauFasa03.o \ iauFaur03.o \ iauFave03.o \ + iauFk425.o \ + iauFk45z.o \ + iauFk524.o \ iauFk52h.o \ + iauFk54z.o \ iauFk5hip.o \ iauFk5hz.o \ iauFw2m.o \ @@ -572,8 +576,16 @@ iauFaur03.o : faur03.c sofa.h sofam.h $(CCOMPC) $(CFLAGF) -o $@ faur03.c iauFave03.o : fave03.c sofa.h sofam.h $(CCOMPC) $(CFLAGF) -o $@ fave03.c +iauFk425.o : fk425.c sofa.h sofam.h + $(CCOMPC) $(CFLAGF) -o $@ fk425.c +iauFk45z.o : fk45z.c sofa.h sofam.h + $(CCOMPC) $(CFLAGF) -o $@ fk45z.c +iauFk524.o : fk524.c sofa.h sofam.h + $(CCOMPC) $(CFLAGF) -o $@ fk524.c iauFk52h.o : fk52h.c sofa.h sofam.h $(CCOMPC) $(CFLAGF) -o $@ fk52h.c +iauFk54z.o : fk54z.c sofa.h sofam.h + $(CCOMPC) $(CFLAGF) -o $@ fk54z.c iauFk5hip.o : fk5hip.c sofa.h sofam.h $(CCOMPC) $(CFLAGF) -o $@ fk5hip.c iauFk5hz.o : fk5hz.c sofa.h sofam.h diff --git a/WorldWideAstronomy/SOFA/num00a.c b/WorldWideAstronomy/SOFA/num00a.c index 82cfea3..87c089e 100644 --- a/WorldWideAstronomy/SOFA/num00a.c +++ b/WorldWideAstronomy/SOFA/num00a.c @@ -59,9 +59,9 @@ void iauNum00a(double date1, double date2, double rmatn[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dpsi, deps, epsa, rb[3][3], rp[3][3], rbp[3][3], rbpn[3][3]; @@ -75,7 +75,7 @@ void iauNum00a(double date1, double date2, double rmatn[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/num00b.c b/WorldWideAstronomy/SOFA/num00b.c index 049db8b..6e8152a 100644 --- a/WorldWideAstronomy/SOFA/num00b.c +++ b/WorldWideAstronomy/SOFA/num00b.c @@ -59,9 +59,9 @@ void iauNum00b(double date1, double date2, double rmatn[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dpsi, deps, epsa, rb[3][3], rp[3][3], rbp[3][3], rbpn[3][3]; @@ -75,7 +75,7 @@ void iauNum00b(double date1, double date2, double rmatn[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/num06a.c b/WorldWideAstronomy/SOFA/num06a.c index 3e479a3..3327516 100644 --- a/WorldWideAstronomy/SOFA/num06a.c +++ b/WorldWideAstronomy/SOFA/num06a.c @@ -58,9 +58,9 @@ void iauNum06a(double date1, double date2, double rmatn[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double eps, dp, de; @@ -79,7 +79,7 @@ void iauNum06a(double date1, double date2, double rmatn[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/numat.c b/WorldWideAstronomy/SOFA/numat.c index f5ecbf3..9c190b6 100644 --- a/WorldWideAstronomy/SOFA/numat.c +++ b/WorldWideAstronomy/SOFA/numat.c @@ -48,9 +48,9 @@ void iauNumat(double epsa, double dpsi, double deps, double rmatn[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Build the rotation matrix. */ @@ -63,7 +63,7 @@ void iauNumat(double epsa, double dpsi, double deps, double rmatn[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/nut00a.c b/WorldWideAstronomy/SOFA/nut00a.c index fed5116..452bfa2 100644 --- a/WorldWideAstronomy/SOFA/nut00a.c +++ b/WorldWideAstronomy/SOFA/nut00a.c @@ -153,11 +153,11 @@ void iauNut00a(double date1, double date2, double *dpsi, double *deps) ** Wallace, P.T., "Software for Implementing the IAU 2000 ** Resolutions", in IERS Workshop 5.1 (2002) ** -** This revision: 2013 June 18 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int i; @@ -1856,7 +1856,7 @@ void iauNut00a(double date1, double date2, double *dpsi, double *deps) /* Number of terms in the planetary nutation model */ const int NPL = (int) (sizeof xpl / sizeof xpl[0]); -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Interval between fundamental date J2000.0 and given date (JC). */ t = ((date1 - DJ00) + date2) / DJC; @@ -2001,7 +2001,7 @@ void iauNut00a(double date1, double date2, double *dpsi, double *deps) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/nut00b.c b/WorldWideAstronomy/SOFA/nut00b.c index b447977..6d1df2c 100644 --- a/WorldWideAstronomy/SOFA/nut00b.c +++ b/WorldWideAstronomy/SOFA/nut00b.c @@ -121,11 +121,11 @@ void iauNut00b(double date1, double date2, double *dpsi, double *deps) ** Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., ** Francou, G., Laskar, J., Astron.Astrophys. 282, 663-683 (1994) ** -** This revision: 2013 June 18 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, el, elp, f, d, om, arg, dp, de, sarg, carg, @@ -255,7 +255,7 @@ void iauNut00b(double date1, double date2, double *dpsi, double *deps) /* Number of terms in the series */ const int NLS = (int) (sizeof x / sizeof x[0]); -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Interval between fundamental epoch J2000.0 and given date (JC). */ t = ((date1 - DJ00) + date2) / DJC; @@ -326,7 +326,7 @@ void iauNut00b(double date1, double date2, double *dpsi, double *deps) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/nut06a.c b/WorldWideAstronomy/SOFA/nut06a.c index 4bbb698..96e1724 100644 --- a/WorldWideAstronomy/SOFA/nut06a.c +++ b/WorldWideAstronomy/SOFA/nut06a.c @@ -79,9 +79,9 @@ void iauNut06a(double date1, double date2, double *dpsi, double *deps) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, fj2, dp, de; @@ -104,7 +104,7 @@ void iauNut06a(double date1, double date2, double *dpsi, double *deps) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/nut80.c b/WorldWideAstronomy/SOFA/nut80.c index 82c8b36..80ba6d3 100644 --- a/WorldWideAstronomy/SOFA/nut80.c +++ b/WorldWideAstronomy/SOFA/nut80.c @@ -53,11 +53,11 @@ void iauNut80(double date1, double date2, double *dpsi, double *deps) ** P. Kenneth Seidelmann (ed), University Science Books (1992), ** Section 3.222 (p111). ** -** This revision: 2013 June 18 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, el, elp, f, d, om, dp, de, arg, s, c; @@ -211,7 +211,7 @@ void iauNut80(double date1, double date2, double *dpsi, double *deps) /* Number of terms in the series */ const int NT = (int) (sizeof x / sizeof x[0]); -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Interval between fundamental epoch J2000.0 and given date (JC). */ t = ((date1 - DJ00) + date2) / DJC; @@ -279,7 +279,7 @@ void iauNut80(double date1, double date2, double *dpsi, double *deps) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/nutm80.c b/WorldWideAstronomy/SOFA/nutm80.c index b66dc2b..19431e0 100644 --- a/WorldWideAstronomy/SOFA/nutm80.c +++ b/WorldWideAstronomy/SOFA/nutm80.c @@ -52,9 +52,9 @@ void iauNutm80(double date1, double date2, double rmatn[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dpsi, deps, epsa; @@ -71,7 +71,7 @@ void iauNutm80(double date1, double date2, double rmatn[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/obl06.c b/WorldWideAstronomy/SOFA/obl06.c index 9b5b8f6..bd793f5 100644 --- a/WorldWideAstronomy/SOFA/obl06.c +++ b/WorldWideAstronomy/SOFA/obl06.c @@ -49,9 +49,9 @@ double iauObl06(double date1, double date2) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, eps0; @@ -72,7 +72,7 @@ double iauObl06(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/obl80.c b/WorldWideAstronomy/SOFA/obl80.c index 8b4dc67..81b449a 100644 --- a/WorldWideAstronomy/SOFA/obl80.c +++ b/WorldWideAstronomy/SOFA/obl80.c @@ -51,9 +51,9 @@ double iauObl80(double date1, double date2) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, eps0; @@ -72,7 +72,7 @@ double iauObl80(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/p06e.c b/WorldWideAstronomy/SOFA/p06e.c index 479a5f0..7c951dd 100644 --- a/WorldWideAstronomy/SOFA/p06e.c +++ b/WorldWideAstronomy/SOFA/p06e.c @@ -76,13 +76,17 @@ void iauP06e(double date1, double date2, ** za z_A equatorial precession: -3rd 323 Euler angle ** zetaa zeta_A equatorial precession: -1st 323 Euler angle ** thetaa theta_A equatorial precession: 2nd 323 Euler angle -** pa p_A general precession +** pa p_A general precession (n.b. see below) ** gam gamma_J2000 J2000.0 RA difference of ecliptic poles ** phi phi_J2000 J2000.0 codeclination of ecliptic pole ** psi psi_J2000 longitude difference of equator poles, J2000.0 ** ** The returned values are all radians. ** +** Note that the t^5 coefficient in the series for p_A from +** Capitaine et al. (2003) is incorrectly signed in Hilton et al. +** (2006). +** ** 3) Hilton et al. (2006) Table 1 also contains angles that depend on ** models distinct from the P03 precession theory itself, namely the ** IAU 2000A frame bias and nutation. The quoted polynomials are @@ -118,18 +122,21 @@ void iauP06e(double date1, double date2, ** 8) It is permissible to re-use the same variable in the returned ** arguments. The quantities are stored in the stated order. ** -** Reference: +** References: +** +** Capitaine, N., Wallace, P.T. & Chapront, J., 2003, +** Astron.Astrophys., 412, 567 ** ** Hilton, J. et al., 2006, Celest.Mech.Dyn.Astron. 94, 351 ** ** Called: ** iauObl06 mean obliquity, IAU 2006 ** -** This revision: 2013 June 18 +** This revision: 2020 June 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t; @@ -245,7 +252,7 @@ void iauP06e(double date1, double date2, ( 1.1054348 + ( 0.00007964 + ( -0.000023857 + - ( 0.0000000383 ) + ( -0.0000000383 ) * t) * t) * t) * t) * t * DAS2R; /* Fukushima-Williams angles for precession. */ @@ -275,7 +282,7 @@ void iauP06e(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/p2pv.c b/WorldWideAstronomy/SOFA/p2pv.c index 996eaef..a8d3327 100644 --- a/WorldWideAstronomy/SOFA/p2pv.c +++ b/WorldWideAstronomy/SOFA/p2pv.c @@ -25,9 +25,9 @@ void iauP2pv(double p[3], double pv[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauCp(p, pv[0]); @@ -37,7 +37,7 @@ void iauP2pv(double p[3], double pv[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/p2s.c b/WorldWideAstronomy/SOFA/p2s.c index fd7b282..8dc5f3b 100644 --- a/WorldWideAstronomy/SOFA/p2s.c +++ b/WorldWideAstronomy/SOFA/p2s.c @@ -33,9 +33,9 @@ void iauP2s(double p[3], double *theta, double *phi, double *r) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauC2s(p, theta, phi); @@ -45,7 +45,7 @@ void iauP2s(double p[3], double *theta, double *phi, double *r) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pap.c b/WorldWideAstronomy/SOFA/pap.c index 8577fbe..c7c9dd9 100644 --- a/WorldWideAstronomy/SOFA/pap.c +++ b/WorldWideAstronomy/SOFA/pap.c @@ -44,9 +44,9 @@ double iauPap(double a[3], double b[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double am, au[3], bm, st, ct, xa, ya, za, eta[3], xi[3], a2b[3], pa; @@ -93,7 +93,7 @@ double iauPap(double a[3], double b[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pas.c b/WorldWideAstronomy/SOFA/pas.c index 6e1394b..f7ac164 100644 --- a/WorldWideAstronomy/SOFA/pas.c +++ b/WorldWideAstronomy/SOFA/pas.c @@ -33,9 +33,9 @@ double iauPas(double al, double ap, double bl, double bp) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dl, x, y, pa; @@ -50,7 +50,7 @@ double iauPas(double al, double ap, double bl, double bp) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pb06.c b/WorldWideAstronomy/SOFA/pb06.c index 16e533a..6bd6a7f 100644 --- a/WorldWideAstronomy/SOFA/pb06.c +++ b/WorldWideAstronomy/SOFA/pb06.c @@ -68,37 +68,43 @@ void iauPb06(double date1, double date2, ** iauPmat06 PB matrix, IAU 2006 ** iauRz rotate around Z-axis ** -** This revision: 2013 June 18 +** This revision: 2020 May 27 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { - double r[3][3], r31, r32; + double r[3][3], y, x; /* Precession matrix via Fukushima-Williams angles. */ iauPmat06(date1, date2, r); -/* Solve for z. */ - *bz = atan2(r[1][2], r[0][2]); +/* Solve for z, choosing the +/- pi alternative. */ + y = r[1][2]; + x = -r[0][2]; + if ( x < 0.0 ) { + y = -y; + x = -x; + } + *bz = ( x != 0.0 || y != 0.0 ) ? - atan2(y,x) : 0.0; -/* Remove it from the matrix. */ - iauRz(*bz, r); +/* Derotate it out of the matrix. */ + iauRz ( *bz, r ); /* Solve for the remaining two angles. */ - *bzeta = atan2 (r[1][0], r[1][1]); - r31 = r[2][0]; - r32 = r[2][1]; - *btheta = atan2(-dsign(sqrt(r31 * r31 + r32 * r32), r[0][2]), - r[2][2]); + y = r[0][2]; + x = r[2][2]; + *btheta = ( x != 0.0 || y != 0.0 ) ? - atan2(y,x) : 0.0; - return; + y = -r[1][0]; + x = r[1][1]; + *bzeta = ( x != 0.0 || y != 0.0 ) ? - atan2(y,x) : 0.0; /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pdp.c b/WorldWideAstronomy/SOFA/pdp.c index 4fc2921..a5a21c1 100644 --- a/WorldWideAstronomy/SOFA/pdp.c +++ b/WorldWideAstronomy/SOFA/pdp.c @@ -22,9 +22,9 @@ double iauPdp(double a[3], double b[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double w; @@ -38,7 +38,7 @@ double iauPdp(double a[3], double b[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pfw06.c b/WorldWideAstronomy/SOFA/pfw06.c index 749aebc..f1ac7b2 100644 --- a/WorldWideAstronomy/SOFA/pfw06.c +++ b/WorldWideAstronomy/SOFA/pfw06.c @@ -80,9 +80,9 @@ void iauPfw06(double date1, double date2, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t; @@ -119,7 +119,7 @@ void iauPfw06(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/plan94.c b/WorldWideAstronomy/SOFA/plan94.c index 974dcca..49347fb 100644 --- a/WorldWideAstronomy/SOFA/plan94.c +++ b/WorldWideAstronomy/SOFA/plan94.c @@ -162,11 +162,11 @@ int iauPlan94(double date1, double date2, int np, double pv[2][3]) ** Chapront-Touze, M., Francou, G., and Laskar, J., ** Astron.Astrophys., 282, 663 (1994). ** -** This revision: 2017 October 12 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Gaussian constant */ @@ -343,7 +343,7 @@ int iauPlan94(double date1, double date2, int np, double pv[2][3]) { -47645, 11647, 2166, 3194, 679, 0,-244, -419, -2531, 48 } }; -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Validate the planet number. */ if ((np < 1) || (np > 8)) { @@ -468,7 +468,7 @@ int iauPlan94(double date1, double date2, int np, double pv[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pm.c b/WorldWideAstronomy/SOFA/pm.c index 5e7bcd3..1dfd8f7 100644 --- a/WorldWideAstronomy/SOFA/pm.c +++ b/WorldWideAstronomy/SOFA/pm.c @@ -21,16 +21,16 @@ double iauPm(double p[3]) ** ** This revision: 2013 August 7 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { return sqrt( p[0]*p[0] + p[1]*p[1] + p[2]*p[2] ); /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pmat00.c b/WorldWideAstronomy/SOFA/pmat00.c index 9b279d7..2a7f848 100644 --- a/WorldWideAstronomy/SOFA/pmat00.c +++ b/WorldWideAstronomy/SOFA/pmat00.c @@ -57,9 +57,9 @@ void iauPmat00(double date1, double date2, double rbp[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rb[3][3], rp[3][3]; @@ -72,7 +72,7 @@ void iauPmat00(double date1, double date2, double rbp[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pmat06.c b/WorldWideAstronomy/SOFA/pmat06.c index e051f27..3b6a0b3 100644 --- a/WorldWideAstronomy/SOFA/pmat06.c +++ b/WorldWideAstronomy/SOFA/pmat06.c @@ -58,9 +58,9 @@ void iauPmat06(double date1, double date2, double rbp[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double gamb, phib, psib, epsa; @@ -76,7 +76,7 @@ void iauPmat06(double date1, double date2, double rbp[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pmat76.c b/WorldWideAstronomy/SOFA/pmat76.c index d613cfc..a500ffa 100644 --- a/WorldWideAstronomy/SOFA/pmat76.c +++ b/WorldWideAstronomy/SOFA/pmat76.c @@ -73,9 +73,9 @@ void iauPmat76(double date1, double date2, double rmatp[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double zeta, z, theta, wmat[3][3]; @@ -95,7 +95,7 @@ void iauPmat76(double date1, double date2, double rmatp[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pmp.c b/WorldWideAstronomy/SOFA/pmp.c index cb8be1e..1f03e6f 100644 --- a/WorldWideAstronomy/SOFA/pmp.c +++ b/WorldWideAstronomy/SOFA/pmp.c @@ -26,9 +26,9 @@ void iauPmp(double a[3], double b[3], double amb[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { amb[0] = a[0] - b[0]; @@ -39,7 +39,7 @@ void iauPmp(double a[3], double b[3], double amb[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pmpx.c b/WorldWideAstronomy/SOFA/pmpx.c index 4f44675..786c3a9 100644 --- a/WorldWideAstronomy/SOFA/pmpx.c +++ b/WorldWideAstronomy/SOFA/pmpx.c @@ -53,9 +53,9 @@ void iauPmpx(double rc, double dc, double pr, double pd, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Km/s to au/year */ @@ -98,7 +98,7 @@ void iauPmpx(double rc, double dc, double pr, double pd, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -191,5 +191,4 @@ void iauPmpx(double rc, double dc, double pr, double pd, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/pmsafe.c b/WorldWideAstronomy/SOFA/pmsafe.c index 4fc880f..a473cb7 100644 --- a/WorldWideAstronomy/SOFA/pmsafe.c +++ b/WorldWideAstronomy/SOFA/pmsafe.c @@ -112,9 +112,9 @@ int iauPmsafe(double ra1, double dec1, double pmr1, double pmd1, ** ** This revision: 2014 July 1 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -151,7 +151,7 @@ int iauPmsafe(double ra1, double dec1, double pmr1, double pmd1, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -244,5 +244,4 @@ int iauPmsafe(double ra1, double dec1, double pmr1, double pmd1, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/pn.c b/WorldWideAstronomy/SOFA/pn.c index 5fea4b5..ee45bea 100644 --- a/WorldWideAstronomy/SOFA/pn.c +++ b/WorldWideAstronomy/SOFA/pn.c @@ -35,9 +35,9 @@ void iauPn(double p[3], double *r, double u[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double w; @@ -63,7 +63,7 @@ void iauPn(double p[3], double *r, double u[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pn00.c b/WorldWideAstronomy/SOFA/pn00.c index fac5a81..9bffbb1 100644 --- a/WorldWideAstronomy/SOFA/pn00.c +++ b/WorldWideAstronomy/SOFA/pn00.c @@ -102,9 +102,9 @@ void iauPn00(double date1, double date2, double dpsi, double deps, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dpsipr, depspr, rbpw[3][3], rnw[3][3]; @@ -131,7 +131,7 @@ void iauPn00(double date1, double date2, double dpsi, double deps, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pn00a.c b/WorldWideAstronomy/SOFA/pn00a.c index 55da069..cc4dc63 100644 --- a/WorldWideAstronomy/SOFA/pn00a.c +++ b/WorldWideAstronomy/SOFA/pn00a.c @@ -102,9 +102,9 @@ void iauPn00a(double date1, double date2, ** ** This revision: 2013 November 14 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Nutation. */ @@ -117,7 +117,7 @@ void iauPn00a(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pn00b.c b/WorldWideAstronomy/SOFA/pn00b.c index 89c71b8..a1ebd1e 100644 --- a/WorldWideAstronomy/SOFA/pn00b.c +++ b/WorldWideAstronomy/SOFA/pn00b.c @@ -102,9 +102,9 @@ void iauPn00b(double date1, double date2, ** ** This revision: 2013 November 13 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Nutation. */ @@ -117,7 +117,7 @@ void iauPn00b(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pn06.c b/WorldWideAstronomy/SOFA/pn06.c index b476bdf..8142869 100644 --- a/WorldWideAstronomy/SOFA/pn06.c +++ b/WorldWideAstronomy/SOFA/pn06.c @@ -100,9 +100,9 @@ void iauPn06(double date1, double date2, double dpsi, double deps, ** ** This revision: 2013 November 14 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double gamb, phib, psib, eps, r1[3][3], r2[3][3], rt[3][3]; @@ -141,7 +141,7 @@ void iauPn06(double date1, double date2, double dpsi, double deps, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pn06a.c b/WorldWideAstronomy/SOFA/pn06a.c index 13ce5e8..c3d0d7d 100644 --- a/WorldWideAstronomy/SOFA/pn06a.c +++ b/WorldWideAstronomy/SOFA/pn06a.c @@ -92,9 +92,9 @@ void iauPn06a(double date1, double date2, ** ** This revision: 2013 November 13 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Nutation. */ @@ -107,7 +107,7 @@ void iauPn06a(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pnm00a.c b/WorldWideAstronomy/SOFA/pnm00a.c index ea0ad2f..ed61a56 100644 --- a/WorldWideAstronomy/SOFA/pnm00a.c +++ b/WorldWideAstronomy/SOFA/pnm00a.c @@ -60,9 +60,9 @@ void iauPnm00a(double date1, double date2, double rbpn[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dpsi, deps, epsa, rb[3][3], rp[3][3], rbp[3][3], rn[3][3]; @@ -75,7 +75,7 @@ void iauPnm00a(double date1, double date2, double rbpn[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pnm00b.c b/WorldWideAstronomy/SOFA/pnm00b.c index 26286c2..ef67db9 100644 --- a/WorldWideAstronomy/SOFA/pnm00b.c +++ b/WorldWideAstronomy/SOFA/pnm00b.c @@ -60,9 +60,9 @@ void iauPnm00b(double date1, double date2, double rbpn[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dpsi, deps, epsa, rb[3][3], rp[3][3], rbp[3][3], rn[3][3]; @@ -75,7 +75,7 @@ void iauPnm00b(double date1, double date2, double rbpn[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pnm06a.c b/WorldWideAstronomy/SOFA/pnm06a.c index e9e3b93..ac3404b 100644 --- a/WorldWideAstronomy/SOFA/pnm06a.c +++ b/WorldWideAstronomy/SOFA/pnm06a.c @@ -57,9 +57,9 @@ void iauPnm06a(double date1, double date2, double rnpb[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double gamb, phib, psib, epsa, dp, de; @@ -78,7 +78,7 @@ void iauPnm06a(double date1, double date2, double rnpb[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pnm80.c b/WorldWideAstronomy/SOFA/pnm80.c index f5bc5ee..12d11f4 100644 --- a/WorldWideAstronomy/SOFA/pnm80.c +++ b/WorldWideAstronomy/SOFA/pnm80.c @@ -59,9 +59,9 @@ void iauPnm80(double date1, double date2, double rmatpn[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rmatp[3][3], rmatn[3][3]; @@ -80,7 +80,7 @@ void iauPnm80(double date1, double date2, double rmatpn[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pom00.c b/WorldWideAstronomy/SOFA/pom00.c index 1709d98..96e74c5 100644 --- a/WorldWideAstronomy/SOFA/pom00.c +++ b/WorldWideAstronomy/SOFA/pom00.c @@ -53,9 +53,9 @@ void iauPom00(double xp, double yp, double sp, double rpom[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -69,7 +69,7 @@ void iauPom00(double xp, double yp, double sp, double rpom[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ppp.c b/WorldWideAstronomy/SOFA/ppp.c index 5d4e3af..1f788d1 100644 --- a/WorldWideAstronomy/SOFA/ppp.c +++ b/WorldWideAstronomy/SOFA/ppp.c @@ -26,9 +26,9 @@ void iauPpp(double a[3], double b[3], double apb[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { apb[0] = a[0] + b[0]; @@ -39,7 +39,7 @@ void iauPpp(double a[3], double b[3], double apb[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ppsp.c b/WorldWideAstronomy/SOFA/ppsp.c index 9b011ef..5024e2e 100644 --- a/WorldWideAstronomy/SOFA/ppsp.c +++ b/WorldWideAstronomy/SOFA/ppsp.c @@ -30,9 +30,9 @@ void iauPpsp(double a[3], double s, double b[3], double apsb[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double sb[3]; @@ -48,7 +48,7 @@ void iauPpsp(double a[3], double s, double b[3], double apsb[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pr00.c b/WorldWideAstronomy/SOFA/pr00.c index 348251b..3176b73 100644 --- a/WorldWideAstronomy/SOFA/pr00.c +++ b/WorldWideAstronomy/SOFA/pr00.c @@ -73,9 +73,9 @@ void iauPr00(double date1, double date2, double *dpsipr, double *depspr) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t; @@ -96,7 +96,7 @@ void iauPr00(double date1, double date2, double *dpsipr, double *depspr) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/prec76.c b/WorldWideAstronomy/SOFA/prec76.c index 07b1935..ffcbd02 100644 --- a/WorldWideAstronomy/SOFA/prec76.c +++ b/WorldWideAstronomy/SOFA/prec76.c @@ -73,9 +73,9 @@ void iauPrec76(double date01, double date02, double date11, double date12, ** ** This revision: 2013 November 19 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t0, t, tas2r, w; @@ -102,7 +102,7 @@ void iauPrec76(double date01, double date02, double date11, double date12, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pv2p.c b/WorldWideAstronomy/SOFA/pv2p.c index ac68fd9..c117469 100644 --- a/WorldWideAstronomy/SOFA/pv2p.c +++ b/WorldWideAstronomy/SOFA/pv2p.c @@ -24,9 +24,9 @@ void iauPv2p(double pv[2][3], double p[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauCp(pv[0], p); @@ -35,7 +35,7 @@ void iauPv2p(double pv[2][3], double p[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pv2s.c b/WorldWideAstronomy/SOFA/pv2s.c index 8296b8a..267e6b8 100644 --- a/WorldWideAstronomy/SOFA/pv2s.c +++ b/WorldWideAstronomy/SOFA/pv2s.c @@ -41,9 +41,9 @@ void iauPv2s(double pv[2][3], ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, y, z, xd, yd, zd, rxy2, rxy, r2, rtrue, rw, xyp; @@ -98,7 +98,7 @@ void iauPv2s(double pv[2][3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pvdpv.c b/WorldWideAstronomy/SOFA/pvdpv.c index e7d1308..0f3f0bd 100644 --- a/WorldWideAstronomy/SOFA/pvdpv.c +++ b/WorldWideAstronomy/SOFA/pvdpv.c @@ -32,9 +32,9 @@ void iauPvdpv(double a[2][3], double b[2][3], double adb[2]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double adbd, addb; @@ -56,7 +56,7 @@ void iauPvdpv(double a[2][3], double b[2][3], double adb[2]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pvm.c b/WorldWideAstronomy/SOFA/pvm.c index fab1c2a..7726281 100644 --- a/WorldWideAstronomy/SOFA/pvm.c +++ b/WorldWideAstronomy/SOFA/pvm.c @@ -25,9 +25,9 @@ void iauPvm(double pv[2][3], double *r, double *s) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Distance. */ @@ -40,7 +40,7 @@ void iauPvm(double pv[2][3], double *r, double *s) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pvmpv.c b/WorldWideAstronomy/SOFA/pvmpv.c index d8e33fe..efd78be 100644 --- a/WorldWideAstronomy/SOFA/pvmpv.c +++ b/WorldWideAstronomy/SOFA/pvmpv.c @@ -29,9 +29,9 @@ void iauPvmpv(double a[2][3], double b[2][3], double amb[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauPmp(a[0], b[0], amb[0]); @@ -41,7 +41,7 @@ void iauPvmpv(double a[2][3], double b[2][3], double amb[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pvppv.c b/WorldWideAstronomy/SOFA/pvppv.c index 684205f..dad3052 100644 --- a/WorldWideAstronomy/SOFA/pvppv.c +++ b/WorldWideAstronomy/SOFA/pvppv.c @@ -29,9 +29,9 @@ void iauPvppv(double a[2][3], double b[2][3], double apb[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauPpp(a[0], b[0], apb[0]); @@ -41,7 +41,7 @@ void iauPvppv(double a[2][3], double b[2][3], double apb[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pvstar.c b/WorldWideAstronomy/SOFA/pvstar.c index 691e567..bde411d 100644 --- a/WorldWideAstronomy/SOFA/pvstar.c +++ b/WorldWideAstronomy/SOFA/pvstar.c @@ -100,9 +100,9 @@ int iauPvstar(double pv[2][3], double *ra, double *dec, ** ** This revision: 2017 March 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double r, x[3], vr, ur[3], vt, ut[3], bett, betr, d, w, del, @@ -161,7 +161,7 @@ int iauPvstar(double pv[2][3], double *ra, double *dec, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pvtob.c b/WorldWideAstronomy/SOFA/pvtob.c index 7bb2790..1590c6a 100644 --- a/WorldWideAstronomy/SOFA/pvtob.c +++ b/WorldWideAstronomy/SOFA/pvtob.c @@ -68,9 +68,9 @@ void iauPvtob(double elong, double phi, double hm, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Earth rotation rate in radians per UT1 second */ @@ -107,7 +107,7 @@ void iauPvtob(double elong, double phi, double hm, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -200,5 +200,4 @@ void iauPvtob(double elong, double phi, double hm, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/pvu.c b/WorldWideAstronomy/SOFA/pvu.c index 18af766..013fafa 100644 --- a/WorldWideAstronomy/SOFA/pvu.c +++ b/WorldWideAstronomy/SOFA/pvu.c @@ -35,9 +35,9 @@ void iauPvu(double dt, double pv[2][3], double upv[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauPpsp(pv[0], dt, pv[1], upv[0]); @@ -47,7 +47,7 @@ void iauPvu(double dt, double pv[2][3], double upv[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pvup.c b/WorldWideAstronomy/SOFA/pvup.c index 1c805e4..413f735 100644 --- a/WorldWideAstronomy/SOFA/pvup.c +++ b/WorldWideAstronomy/SOFA/pvup.c @@ -29,9 +29,9 @@ void iauPvup(double dt, double pv[2][3], double p[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { p[0] = pv[0][0] + dt * pv[1][0]; @@ -42,7 +42,7 @@ void iauPvup(double dt, double pv[2][3], double p[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pvxpv.c b/WorldWideAstronomy/SOFA/pvxpv.c index 274c0ff..94e6174 100644 --- a/WorldWideAstronomy/SOFA/pvxpv.c +++ b/WorldWideAstronomy/SOFA/pvxpv.c @@ -37,9 +37,9 @@ void iauPvxpv(double a[2][3], double b[2][3], double axb[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double wa[2][3], wb[2][3], axbd[3], adxb[3]; @@ -61,7 +61,7 @@ void iauPvxpv(double a[2][3], double b[2][3], double axb[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/pxp.c b/WorldWideAstronomy/SOFA/pxp.c index 37327ab..10e9508 100644 --- a/WorldWideAstronomy/SOFA/pxp.c +++ b/WorldWideAstronomy/SOFA/pxp.c @@ -26,9 +26,9 @@ void iauPxp(double a[3], double b[3], double axb[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double xa, ya, za, xb, yb, zb; @@ -48,7 +48,7 @@ void iauPxp(double a[3], double b[3], double axb[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/refco.c b/WorldWideAstronomy/SOFA/refco.c index 5d0aa2b..7964c44 100644 --- a/WorldWideAstronomy/SOFA/refco.c +++ b/WorldWideAstronomy/SOFA/refco.c @@ -152,9 +152,9 @@ void iauRefco(double phpa, double tc, double rh, double wl, ** ** This revision: 2013 October 9 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int optic; @@ -207,7 +207,7 @@ void iauRefco(double phpa, double tc, double rh, double wl, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -300,5 +300,4 @@ void iauRefco(double phpa, double tc, double rh, double wl, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/rm2v.c b/WorldWideAstronomy/SOFA/rm2v.c index 8ce1c9b..f405315 100644 --- a/WorldWideAstronomy/SOFA/rm2v.c +++ b/WorldWideAstronomy/SOFA/rm2v.c @@ -36,9 +36,9 @@ void iauRm2v(double r[3][3], double w[3]) ** ** This revision: 2015 January 30 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, y, z, s2, c2, phi, f; @@ -65,7 +65,7 @@ void iauRm2v(double r[3][3], double w[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/rv2m.c b/WorldWideAstronomy/SOFA/rv2m.c index e8afa28..5fd6895 100644 --- a/WorldWideAstronomy/SOFA/rv2m.c +++ b/WorldWideAstronomy/SOFA/rv2m.c @@ -33,9 +33,9 @@ void iauRv2m(double w[3], double r[3][3]) ** ** This revision: 2015 January 30 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, y, z, phi, s, c, f; @@ -72,7 +72,7 @@ void iauRv2m(double w[3], double r[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/rx.c b/WorldWideAstronomy/SOFA/rx.c index 1326a21..4869ea4 100644 --- a/WorldWideAstronomy/SOFA/rx.c +++ b/WorldWideAstronomy/SOFA/rx.c @@ -35,9 +35,9 @@ void iauRx(double phi, double r[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double s, c, a10, a11, a12, a20, a21, a22; @@ -64,7 +64,7 @@ void iauRx(double phi, double r[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/rxp.c b/WorldWideAstronomy/SOFA/rxp.c index ed3605f..32e1af7 100644 --- a/WorldWideAstronomy/SOFA/rxp.c +++ b/WorldWideAstronomy/SOFA/rxp.c @@ -28,9 +28,9 @@ void iauRxp(double r[3][3], double p[3], double rp[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double w, wrp[3]; @@ -53,7 +53,7 @@ void iauRxp(double r[3][3], double p[3], double rp[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/rxpv.c b/WorldWideAstronomy/SOFA/rxpv.c index 74aa307..8680550 100644 --- a/WorldWideAstronomy/SOFA/rxpv.c +++ b/WorldWideAstronomy/SOFA/rxpv.c @@ -28,9 +28,9 @@ void iauRxpv(double r[3][3], double pv[2][3], double rpv[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauRxp(r, pv[0], rpv[0]); @@ -40,7 +40,7 @@ void iauRxpv(double r[3][3], double pv[2][3], double rpv[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/rxr.c b/WorldWideAstronomy/SOFA/rxr.c index 1ea6511..e9070ca 100644 --- a/WorldWideAstronomy/SOFA/rxr.c +++ b/WorldWideAstronomy/SOFA/rxr.c @@ -29,9 +29,9 @@ void iauRxr(double a[3][3], double b[3][3], double atb[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int i, j, k; @@ -53,7 +53,7 @@ void iauRxr(double a[3][3], double b[3][3], double atb[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ry.c b/WorldWideAstronomy/SOFA/ry.c index 6985fcb..14bd98c 100644 --- a/WorldWideAstronomy/SOFA/ry.c +++ b/WorldWideAstronomy/SOFA/ry.c @@ -35,9 +35,9 @@ void iauRy(double theta, double r[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double s, c, a00, a01, a02, a20, a21, a22; @@ -64,7 +64,7 @@ void iauRy(double theta, double r[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/rz.c b/WorldWideAstronomy/SOFA/rz.c index c437532..815c207 100644 --- a/WorldWideAstronomy/SOFA/rz.c +++ b/WorldWideAstronomy/SOFA/rz.c @@ -35,9 +35,9 @@ void iauRz(double psi, double r[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double s, c, a00, a01, a02, a10, a11, a12; @@ -64,7 +64,7 @@ void iauRz(double psi, double r[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s00.c b/WorldWideAstronomy/SOFA/s00.c index 98a9182..808fc37 100644 --- a/WorldWideAstronomy/SOFA/s00.c +++ b/WorldWideAstronomy/SOFA/s00.c @@ -81,11 +81,11 @@ double iauS00(double date1, double date2, double x, double y) ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), ** IERS Technical Note No. 32, BKG (2004) ** -** This revision: 2013 June 18 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Time since J2000.0, in Julian centuries */ @@ -235,7 +235,7 @@ double iauS00(double date1, double date2, double x, double y) const int NS3 = (int) (sizeof s3 / sizeof (TERM)); const int NS4 = (int) (sizeof s4 / sizeof (TERM)); -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Interval between fundamental epoch J2000.0 and current date (JC). */ t = ((date1 - DJ00) + date2) / DJC; @@ -325,7 +325,7 @@ double iauS00(double date1, double date2, double x, double y) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s00a.c b/WorldWideAstronomy/SOFA/s00a.c index d36345b..026e1b4 100644 --- a/WorldWideAstronomy/SOFA/s00a.c +++ b/WorldWideAstronomy/SOFA/s00a.c @@ -76,9 +76,9 @@ double iauS00a(double date1, double date2) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rbpn[3][3], x, y, s; @@ -97,7 +97,7 @@ double iauS00a(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s00b.c b/WorldWideAstronomy/SOFA/s00b.c index 3d13d66..36bcd55 100644 --- a/WorldWideAstronomy/SOFA/s00b.c +++ b/WorldWideAstronomy/SOFA/s00b.c @@ -76,9 +76,9 @@ double iauS00b(double date1, double date2) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rbpn[3][3], x, y, s; @@ -97,7 +97,7 @@ double iauS00b(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s06.c b/WorldWideAstronomy/SOFA/s06.c index 7869e0a..1de4e8b 100644 --- a/WorldWideAstronomy/SOFA/s06.c +++ b/WorldWideAstronomy/SOFA/s06.c @@ -78,11 +78,11 @@ double iauS06(double date1, double date2, double x, double y) ** McCarthy, D.D., Petit, G. (eds.) 2004, IERS Conventions (2003), ** IERS Technical Note No. 32, BKG ** -** This revision: 2013 June 18 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Time since J2000.0, in Julian centuries */ @@ -232,7 +232,7 @@ double iauS06(double date1, double date2, double x, double y) static const int NS3 = (int) (sizeof s3 / sizeof (TERM)); static const int NS4 = (int) (sizeof s4 / sizeof (TERM)); -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Interval between fundamental epoch J2000.0 and current date (JC). */ t = ((date1 - DJ00) + date2) / DJC; @@ -322,7 +322,7 @@ double iauS06(double date1, double date2, double x, double y) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s06a.c b/WorldWideAstronomy/SOFA/s06a.c index b94da0d..f987e03 100644 --- a/WorldWideAstronomy/SOFA/s06a.c +++ b/WorldWideAstronomy/SOFA/s06a.c @@ -78,9 +78,9 @@ double iauS06a(double date1, double date2) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rnpb[3][3], x, y, s; @@ -99,7 +99,7 @@ double iauS06a(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s2c.c b/WorldWideAstronomy/SOFA/s2c.c index 6c5e73c..a48a060 100644 --- a/WorldWideAstronomy/SOFA/s2c.c +++ b/WorldWideAstronomy/SOFA/s2c.c @@ -22,9 +22,9 @@ void iauS2c(double theta, double phi, double c[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double cp; @@ -39,7 +39,7 @@ void iauS2c(double theta, double phi, double c[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s2p.c b/WorldWideAstronomy/SOFA/s2p.c index efbe2a1..9d5e0b8 100644 --- a/WorldWideAstronomy/SOFA/s2p.c +++ b/WorldWideAstronomy/SOFA/s2p.c @@ -27,9 +27,9 @@ void iauS2p(double theta, double phi, double r, double p[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double u[3]; @@ -42,7 +42,7 @@ void iauS2p(double theta, double phi, double r, double p[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s2pv.c b/WorldWideAstronomy/SOFA/s2pv.c index 390024c..e88fb24 100644 --- a/WorldWideAstronomy/SOFA/s2pv.c +++ b/WorldWideAstronomy/SOFA/s2pv.c @@ -28,9 +28,9 @@ void iauS2pv(double theta, double phi, double r, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double st, ct, sp, cp, rcp, x, y, rpd, w; @@ -57,7 +57,7 @@ void iauS2pv(double theta, double phi, double r, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/s2xpv.c b/WorldWideAstronomy/SOFA/s2xpv.c index 79f1600..28a3d0d 100644 --- a/WorldWideAstronomy/SOFA/s2xpv.c +++ b/WorldWideAstronomy/SOFA/s2xpv.c @@ -29,9 +29,9 @@ void iauS2xpv(double s1, double s2, double pv[2][3], double spv[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauSxp(s1, pv[0], spv[0]); @@ -41,7 +41,7 @@ void iauS2xpv(double s1, double s2, double pv[2][3], double spv[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/sepp.c b/WorldWideAstronomy/SOFA/sepp.c index e8c5e24..54ef2ab 100644 --- a/WorldWideAstronomy/SOFA/sepp.c +++ b/WorldWideAstronomy/SOFA/sepp.c @@ -37,9 +37,9 @@ double iauSepp(double a[3], double b[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double axb[3], ss, cs, s; @@ -59,7 +59,7 @@ double iauSepp(double a[3], double b[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/seps.c b/WorldWideAstronomy/SOFA/seps.c index 8ef187b..57318d9 100644 --- a/WorldWideAstronomy/SOFA/seps.c +++ b/WorldWideAstronomy/SOFA/seps.c @@ -28,9 +28,9 @@ double iauSeps(double al, double ap, double bl, double bp) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double ac[3], bc[3], s; @@ -47,7 +47,7 @@ double iauSeps(double al, double ap, double bl, double bp) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/sofa.h b/WorldWideAstronomy/SOFA/sofa.h index 177802e..68c160e 100644 --- a/WorldWideAstronomy/SOFA/sofa.h +++ b/WorldWideAstronomy/SOFA/sofa.h @@ -11,11 +11,11 @@ ** This file is part of the International Astronomical Union's ** SOFA (Standards Of Fundamental Astronomy) software collection. ** -** This revision: 2017 October 7 +** This revision: 2018 December 5 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ #include "sofam.h" @@ -296,10 +296,28 @@ int iauStarpv(double ra, double dec, double pv[2][3]); /* Astronomy/StarCatalogs */ + +void iauFk425(double r1950, double d1950, + double dr1950, double dd1950, + double p1950, double v1950, + double *r2000, double *d2000, + double *dr2000, double *dd2000, + double *p2000, double *v2000); +void iauFk45z(double r1950, double d1950, double bepoch, + double *r2000, double *d2000); +void iauFk524(double r2000, double d2000, + double dr2000, double dd2000, + double p2000, double v2000, + double *r1950, double *d1950, + double *dr1950, double *dd1950, + double *p1950, double *v1950); void iauFk52h(double r5, double d5, double dr5, double dd5, double px5, double rv5, double *rh, double *dh, double *drh, double *ddh, double *pxh, double *rvh); +void iauFk54z(double r2000, double d2000, double bepoch, + double *r1950, double *d1950, + double *dr1950, double *dd1950); void iauFk5hip(double r5h[3][3], double s5h[3]); void iauFk5hz(double r5, double d5, double date1, double date2, double *rh, double *dh); @@ -479,7 +497,7 @@ void iauSxpv(double s, double pv[2][3], double spv[2][3]); /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/sofam.h b/WorldWideAstronomy/SOFA/sofam.h index 6d11cd9..be6b7a7 100644 --- a/WorldWideAstronomy/SOFA/sofam.h +++ b/WorldWideAstronomy/SOFA/sofam.h @@ -15,11 +15,11 @@ ** the context of the SOFA software, and have no other official IAU ** status. In addition, self consistency is not guaranteed. ** -** This revision: 2017 March 16 +** This revision: 2020 June 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ /* Star-independent astrometry parameters */ @@ -135,7 +135,8 @@ typedef struct { #define dint(A) ((A)<0.0?ceil(A):floor(A)) /* dnint(A) - round to nearest whole number (double) */ -#define dnint(A) ((A)<0.0?ceil((A)-0.5):floor((A)+0.5)) +#define dnint(A) (fabs(A)<0.5?0.0\ + :((A)<0.0?ceil((A)-0.5):floor((A)+0.5))) /* dsign(A,B) - magnitude of A with sign of B (double) */ #define dsign(A,B) ((B)<0.0?-fabs(A):fabs(A)) @@ -155,7 +156,7 @@ typedef struct { /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/sp00.c b/WorldWideAstronomy/SOFA/sp00.c index 776d936..c0987c4 100644 --- a/WorldWideAstronomy/SOFA/sp00.c +++ b/WorldWideAstronomy/SOFA/sp00.c @@ -54,9 +54,9 @@ double iauSp00(double date1, double date2) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double t, sp; @@ -72,7 +72,7 @@ double iauSp00(double date1, double date2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/starpm.c b/WorldWideAstronomy/SOFA/starpm.c index e533762..db6235c 100644 --- a/WorldWideAstronomy/SOFA/starpm.c +++ b/WorldWideAstronomy/SOFA/starpm.c @@ -113,9 +113,9 @@ int iauStarpm(double ra1, double dec1, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double pv1[2][3], tl1, dt, pv[2][3], r2, rdv, v2, c2mv2, tl2, @@ -159,7 +159,7 @@ int iauStarpm(double ra1, double dec1, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/starpv.c b/WorldWideAstronomy/SOFA/starpv.c index b3edf67..e3008e4 100644 --- a/WorldWideAstronomy/SOFA/starpv.c +++ b/WorldWideAstronomy/SOFA/starpv.c @@ -120,9 +120,9 @@ int iauStarpv(double ra, double dec, ** ** This revision: 2017 March 16 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { /* Smallest allowed parallax */ @@ -219,7 +219,7 @@ int iauStarpv(double ra, double dec, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/sxp.c b/WorldWideAstronomy/SOFA/sxp.c index 6859000..bbb3c50 100644 --- a/WorldWideAstronomy/SOFA/sxp.c +++ b/WorldWideAstronomy/SOFA/sxp.c @@ -25,9 +25,9 @@ void iauSxp(double s, double p[3], double sp[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { sp[0] = s * p[0]; @@ -38,7 +38,7 @@ void iauSxp(double s, double p[3], double sp[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/sxpv.c b/WorldWideAstronomy/SOFA/sxpv.c index bac5b5a..1567a60 100644 --- a/WorldWideAstronomy/SOFA/sxpv.c +++ b/WorldWideAstronomy/SOFA/sxpv.c @@ -28,9 +28,9 @@ void iauSxpv(double s, double pv[2][3], double spv[2][3]) ** ** This revision: 2013 August 7 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauS2xpv(s, s, pv, spv); @@ -39,7 +39,7 @@ void iauSxpv(double s, double pv[2][3], double spv[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/t_sofa_c.c b/WorldWideAstronomy/SOFA/t_sofa_c.c index 6871936..c4e701d 100644 --- a/WorldWideAstronomy/SOFA/t_sofa_c.c +++ b/WorldWideAstronomy/SOFA/t_sofa_c.c @@ -17,11 +17,11 @@ static int verbose = 0; ** ** All messages go to stdout. ** -** This revision: 2017 October 21 +** This revision: 2020 May 30 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ static void viv(int ival, int ivalok, @@ -3844,6 +3844,125 @@ static void t_fave03(int *status) "iauFave03", "", status); } +static void t_fk425(int *status) +/* +** - - - - - - - - +** t _ f k 4 2 5 +** - - - - - - - - +** +** Test iauFk425 function. +** +** Returned: +** status int FALSE = success, TRUE = fail +** +** Called: iauFk425, vvd +** +** This revision: 2018 December 6 +*/ +{ + double r1950, d1950, dr1950, dd1950, p1950, v1950, + r2000, d2000, dr2000, dd2000, p2000, v2000; + + + r1950 = 0.07626899753879587532; + d1950 = -1.137405378399605780; + dr1950 = 0.1973749217849087460e-4; + dd1950 = 0.5659714913272723189e-5; + p1950 = 0.134; + v1950 = 8.7; + + iauFk425(r1950, d1950, dr1950, dd1950, p1950, v1950, + &r2000, &d2000, &dr2000, &dd2000, &p2000, &v2000); + + vvd(r2000, 0.08757989933556446040, 1e-14, + "iauFk425", "r2000", status); + vvd(d2000, -1.132279113042091895, 1e-12, + "iauFk425", "d2000", status); + vvd(dr2000, 0.1953670614474396139e-4, 1e-17, + "iauFk425", "dr2000", status); + vvd(dd2000, 0.5637686678659640164e-5, 1e-18, + "iauFk425", "dd2000", status); + vvd(p2000, 0.1339919950582767871, 1e-13, "iauFk425", "p2000", status); + vvd(v2000, 8.736999669183529069, 1e-12, "iauFk425", "v2000", status); + +} + +static void t_fk45z(int *status) +/* +** - - - - - - - - +** t _ f k 4 5 z +** - - - - - - - - +** +** Test iauFk45z function. +** +** Returned: +** status int FALSE = success, TRUE = fail +** +** Called: iauFk45z, vvd +** +** This revision: 2018 December 6 +*/ +{ + double r1950, d1950, bepoch, r2000, d2000; + + + r1950 = 0.01602284975382960982; + d1950 = -0.1164347929099906024; + bepoch = 1954.677617625256806; + + iauFk45z(r1950, d1950, bepoch, &r2000, &d2000); + + vvd(r2000, 0.02719295911606862303, 1e-15, + "iauFk45z", "r2000", status); + vvd(d2000, -0.1115766001565926892, 1e-13, + "iauFk45z", "d2000", status); + +} + +static void t_fk524(int *status) +/* +** - - - - - - - - +** t _ f k 5 2 4 +** - - - - - - - - +** +** Test iauFk524 function. +** +** Returned: +** status int FALSE = success, TRUE = fail +** +** Called: iauFk524, vvd +** +** This revision: 2018 December 6 +*/ +{ + double r2000, d2000, dr2000, dd2000, p2000, v2000, + r1950, d1950, dr1950, dd1950, p1950, v1950; + + + r2000 = 0.8723503576487275595; + d2000 = -0.7517076365138887672; + dr2000 = 0.2019447755430472323e-4; + dd2000 = 0.3541563940505160433e-5; + p2000 = 0.1559; + v2000 = 86.87; + + iauFk524(r2000, d2000, dr2000, dd2000, p2000, v2000, + &r1950, &d1950, &dr1950,&dd1950, &p1950, &v1950); + + vvd(r1950, 0.8636359659799603487, 1e-13, + "iauFk524", "r1950", status); + vvd(d1950, -0.7550281733160843059, 1e-13, + "iauFk524", "d1950", status); + vvd(dr1950, 0.2023628192747172486e-4, 1e-17, + "iauFk524", "dr1950", status); + vvd(dd1950, 0.3624459754935334718e-5, 1e-18, + "iauFk524", "dd1950", status); + vvd(p1950, 0.1560079963299390241, 1e-13, + "iauFk524", "p1950", status); + vvd(v1950, 86.79606353469163751, 1e-11, "iauFk524", "v1950", status); + +} + static void t_fk52h(int *status) /* ** - - - - - - - - @@ -3888,6 +4007,42 @@ static void t_fk52h(int *status) } +static void t_fk54z(int *status) +/* +** - - - - - - - - +** t _ f k 5 4 z +** - - - - - - - - +** +** Test iauFk54z function. +** +** Returned: +** status int FALSE = success, TRUE = fail +** +** Called: iauFk54z, vvd +** +** This revision: 2018 December 6 +*/ +{ + double r2000, d2000, bepoch, r1950, d1950, dr1950, dd1950; + + + r2000 = 0.02719026625066316119; + d2000 = -0.1115815170738754813; + bepoch = 1954.677308160316374; + + iauFk54z(r2000, d2000, bepoch, &r1950, &d1950, &dr1950, &dd1950); + + vvd(r1950, 0.01602015588390065476, 1e-14, + "iauFk54z", "r1950", status); + vvd(d1950, -0.1164397101110765346, 1e-13, + "iauFk54z", "d1950", status); + vvd(dr1950, -0.1175712648471090704e-7, 1e-20, + "iauFk54z", "dr1950", status); + vvd(dd1950, 0.2108109051316431056e-7, 1e-20, + "iauFk54z", "dd1950", status); + +} + static void t_fk5hip(int *status) /* ** - - - - - - - - - @@ -5512,7 +5667,7 @@ static void t_p06e(int *status) ** ** Called: iauP06e, vvd ** -** This revision: 2013 August 7 +** This revision: 2020 May 30 */ { double eps0, psia, oma, bpa, bqa, pia, bpia, @@ -5547,7 +5702,7 @@ static void t_p06e(int *status) "iauP06e", "zetaa", status); vvd(thetaa, 0.2650932701657497181e-3, 1e-14, "iauP06e", "thetaa", status); - vvd(pa, 0.6651637681381016344e-3, 1e-14, + vvd(pa, 0.6651637681381016288e-3, 1e-14, "iauP06e", "pa", status); vvd(gam, 0.1398077115963754987e-5, 1e-14, "iauP06e", "gam", status); @@ -9838,7 +9993,11 @@ int main(int argc, char *argv[]) t_fasa03(&status); t_faur03(&status); t_fave03(&status); + t_fk425(&status); + t_fk45z(&status); + t_fk524(&status); t_fk52h(&status); + t_fk54z(&status); t_fk5hip(&status); t_fk5hz(&status); t_fw2m(&status); @@ -9998,7 +10157,7 @@ int main(int argc, char *argv[]) } /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/taitt.c b/WorldWideAstronomy/SOFA/taitt.c index 850d36f..e12e8f5 100644 --- a/WorldWideAstronomy/SOFA/taitt.c +++ b/WorldWideAstronomy/SOFA/taitt.c @@ -38,11 +38,11 @@ int iauTaitt(double tai1, double tai2, double *tt1, double *tt2) ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -51,7 +51,7 @@ int iauTaitt(double tai1, double tai2, double *tt1, double *tt2) /* Result, safeguarding precision. */ - if ( tai1 > tai2 ) { + if ( fabs(tai1) > fabs(tai2) ) { *tt1 = tai1; *tt2 = tai2 + dtat; } else { @@ -64,7 +64,7 @@ int iauTaitt(double tai1, double tai2, double *tt1, double *tt2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/taiut1.c b/WorldWideAstronomy/SOFA/taiut1.c index b9b2f62..0a4980c 100644 --- a/WorldWideAstronomy/SOFA/taiut1.c +++ b/WorldWideAstronomy/SOFA/taiut1.c @@ -40,11 +40,11 @@ int iauTaiut1(double tai1, double tai2, double dta, ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. ** */ { @@ -53,7 +53,7 @@ int iauTaiut1(double tai1, double tai2, double dta, /* Result, safeguarding precision. */ dtad = dta / DAYSEC; - if ( tai1 > tai2 ) { + if ( fabs(tai1) > fabs(tai2) ) { *ut11 = tai1; *ut12 = tai2 + dtad; } else { @@ -66,7 +66,7 @@ int iauTaiut1(double tai1, double tai2, double dta, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/taiutc.c b/WorldWideAstronomy/SOFA/taiutc.c index 9e125d7..4d0e045 100644 --- a/WorldWideAstronomy/SOFA/taiutc.c +++ b/WorldWideAstronomy/SOFA/taiutc.c @@ -61,11 +61,11 @@ int iauTaiutc(double tai1, double tai2, double *utc1, double *utc2) ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 September 12 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int big1; @@ -74,7 +74,7 @@ int iauTaiutc(double tai1, double tai2, double *utc1, double *utc2) /* Put the two parts of the TAI into big-first order. */ - big1 = ( tai1 >= tai2 ); + big1 = ( fabs(tai1) >= fabs(tai2) ); if ( big1 ) { a1 = tai1; a2 = tai2; @@ -113,7 +113,7 @@ int iauTaiutc(double tai1, double tai2, double *utc1, double *utc2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tcbtdb.c b/WorldWideAstronomy/SOFA/tcbtdb.c index cbf873b..0982c90 100644 --- a/WorldWideAstronomy/SOFA/tcbtdb.c +++ b/WorldWideAstronomy/SOFA/tcbtdb.c @@ -52,11 +52,11 @@ int iauTcbtdb(double tcb1, double tcb2, double *tdb1, double *tdb2) ** ** IAU 2006 Resolution B3 ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -71,7 +71,7 @@ int iauTcbtdb(double tcb1, double tcb2, double *tdb1, double *tdb2) /* Result, safeguarding precision. */ - if ( tcb1 > tcb2 ) { + if ( fabs(tcb1) > fabs(tcb2) ) { d = tcb1 - t77td; *tdb1 = tcb1; *tdb2 = tcb2 + tdb0 - ( d + ( tcb2 - t77tf ) ) * ELB; @@ -86,7 +86,7 @@ int iauTcbtdb(double tcb1, double tcb2, double *tdb1, double *tdb2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tcgtt.c b/WorldWideAstronomy/SOFA/tcgtt.c index a5f5aa0..72abed7 100644 --- a/WorldWideAstronomy/SOFA/tcgtt.c +++ b/WorldWideAstronomy/SOFA/tcgtt.c @@ -37,11 +37,11 @@ int iauTcgtt(double tcg1, double tcg2, double *tt1, double *tt2) ** ** IAU 2000 Resolution B1.9 ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -50,7 +50,7 @@ int iauTcgtt(double tcg1, double tcg2, double *tt1, double *tt2) /* Result, safeguarding precision. */ - if ( tcg1 > tcg2 ) { + if ( fabs(tcg1) > fabs(tcg2) ) { *tt1 = tcg1; *tt2 = tcg2 - ( ( tcg1 - DJM0 ) + ( tcg2 - t77t ) ) * ELG; } else { @@ -63,7 +63,7 @@ int iauTcgtt(double tcg1, double tcg2, double *tt1, double *tt2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tdbtcb.c b/WorldWideAstronomy/SOFA/tdbtcb.c index a445d76..370627b 100644 --- a/WorldWideAstronomy/SOFA/tdbtcb.c +++ b/WorldWideAstronomy/SOFA/tdbtcb.c @@ -52,11 +52,11 @@ int iauTdbtcb(double tdb1, double tdb2, double *tcb1, double *tcb2) ** ** IAU 2006 Resolution B3 ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -74,7 +74,7 @@ int iauTdbtcb(double tdb1, double tdb2, double *tcb1, double *tcb2) /* Result, preserving date format but safeguarding precision. */ - if ( tdb1 > tdb2 ) { + if ( fabs(tdb1) > fabs(tdb2) ) { d = t77td - tdb1; f = tdb2 - tdb0; *tcb1 = tdb1; @@ -82,7 +82,7 @@ int iauTdbtcb(double tdb1, double tdb2, double *tcb1, double *tcb2) } else { d = t77td - tdb2; f = tdb1 - tdb0; - *tcb1 = f + ( d - ( f - t77tf ) ) * elbb; + *tcb1 = f - ( d - ( f - t77tf ) ) * elbb; *tcb2 = tdb2; } @@ -91,7 +91,7 @@ int iauTdbtcb(double tdb1, double tdb2, double *tcb1, double *tcb2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tdbtt.c b/WorldWideAstronomy/SOFA/tdbtt.c index b0b6ffd..039991b 100644 --- a/WorldWideAstronomy/SOFA/tdbtt.c +++ b/WorldWideAstronomy/SOFA/tdbtt.c @@ -50,11 +50,11 @@ int iauTdbtt(double tdb1, double tdb2, double dtr, ** ** IAU 2006 Resolution 3 ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. ** */ { @@ -63,7 +63,7 @@ int iauTdbtt(double tdb1, double tdb2, double dtr, /* Result, safeguarding precision. */ dtrd = dtr / DAYSEC; - if ( tdb1 > tdb2 ) { + if ( fabs(tdb1) > fabs(tdb2) ) { *tt1 = tdb1; *tt2 = tdb2 - dtrd; } else { @@ -76,7 +76,7 @@ int iauTdbtt(double tdb1, double tdb2, double dtr, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tf2a.c b/WorldWideAstronomy/SOFA/tf2a.c index f4df97b..dd56016 100644 --- a/WorldWideAstronomy/SOFA/tf2a.c +++ b/WorldWideAstronomy/SOFA/tf2a.c @@ -41,9 +41,9 @@ int iauTf2a(char s, int ihour, int imin, double sec, double *rad) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -61,7 +61,7 @@ int iauTf2a(char s, int ihour, int imin, double sec, double *rad) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tf2d.c b/WorldWideAstronomy/SOFA/tf2d.c index 545179b..7909f41 100644 --- a/WorldWideAstronomy/SOFA/tf2d.c +++ b/WorldWideAstronomy/SOFA/tf2d.c @@ -41,9 +41,9 @@ int iauTf2d(char s, int ihour, int imin, double sec, double *days) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -61,7 +61,7 @@ int iauTf2d(char s, int ihour, int imin, double sec, double *days) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tpors.c b/WorldWideAstronomy/SOFA/tpors.c index ad5021f..8739d28 100644 --- a/WorldWideAstronomy/SOFA/tpors.c +++ b/WorldWideAstronomy/SOFA/tpors.c @@ -90,9 +90,9 @@ int iauTpors(double xi, double eta, double a, double b, ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double xi2, r, sb, cb, rsb, rcb, w2, w, s, c; @@ -126,7 +126,7 @@ int iauTpors(double xi, double eta, double a, double b, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -219,5 +219,4 @@ int iauTpors(double xi, double eta, double a, double b, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/tporv.c b/WorldWideAstronomy/SOFA/tporv.c index 836ac75..4a82870 100644 --- a/WorldWideAstronomy/SOFA/tporv.c +++ b/WorldWideAstronomy/SOFA/tporv.c @@ -85,9 +85,9 @@ int iauTporv(double xi, double eta, double v[3], ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, y, z, rxy2, xi2, eta2p1, r, rsb, rcb, w2, w, c; @@ -123,7 +123,7 @@ int iauTporv(double xi, double eta, double v[3], /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -216,5 +216,4 @@ int iauTporv(double xi, double eta, double v[3], ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/tpsts.c b/WorldWideAstronomy/SOFA/tpsts.c index 6e8cc59..0cab32b 100644 --- a/WorldWideAstronomy/SOFA/tpsts.c +++ b/WorldWideAstronomy/SOFA/tpsts.c @@ -57,9 +57,9 @@ void iauTpsts(double xi, double eta, double a0, double b0, ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double sb0, cb0, d; @@ -74,7 +74,7 @@ void iauTpsts(double xi, double eta, double a0, double b0, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -167,5 +167,4 @@ void iauTpsts(double xi, double eta, double a0, double b0, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/tpstv.c b/WorldWideAstronomy/SOFA/tpstv.c index 6a3622f..d35db7c 100644 --- a/WorldWideAstronomy/SOFA/tpstv.c +++ b/WorldWideAstronomy/SOFA/tpstv.c @@ -66,9 +66,9 @@ void iauTpstv(double xi, double eta, double v0[3], double v[3]) ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double x, y, z, f, r; @@ -98,7 +98,7 @@ void iauTpstv(double xi, double eta, double v0[3], double v[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -191,5 +191,4 @@ void iauTpstv(double xi, double eta, double v0[3], double v[3]) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/tpxes.c b/WorldWideAstronomy/SOFA/tpxes.c index fe2a33e..79c2d4c 100644 --- a/WorldWideAstronomy/SOFA/tpxes.c +++ b/WorldWideAstronomy/SOFA/tpxes.c @@ -61,9 +61,9 @@ int iauTpxes(double a, double b, double a0, double b0, ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { const double TINY = 1e-6; @@ -107,7 +107,7 @@ int iauTpxes(double a, double b, double a0, double b0, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -200,5 +200,4 @@ int iauTpxes(double a, double b, double a0, double b0, ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/tpxev.c b/WorldWideAstronomy/SOFA/tpxev.c index 6ea785d..a93bc3a 100644 --- a/WorldWideAstronomy/SOFA/tpxev.c +++ b/WorldWideAstronomy/SOFA/tpxev.c @@ -72,9 +72,9 @@ int iauTpxev(double v[3], double v0[3], double *xi, double *eta) ** ** This revision: 2018 January 2 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { const double TINY = 1e-6; @@ -127,7 +127,7 @@ int iauTpxev(double v[3], double v0[3], double *xi, double *eta) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** @@ -220,5 +220,4 @@ int iauTpxev(double v[3], double v0[3], double *xi, double *eta) ** United Kingdom ** **--------------------------------------------------------------------*/ - } diff --git a/WorldWideAstronomy/SOFA/tr.c b/WorldWideAstronomy/SOFA/tr.c index e566a0b..e44c613 100644 --- a/WorldWideAstronomy/SOFA/tr.c +++ b/WorldWideAstronomy/SOFA/tr.c @@ -27,9 +27,9 @@ void iauTr(double r[3][3], double rt[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double wm[3][3]; @@ -47,7 +47,7 @@ void iauTr(double r[3][3], double rt[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/trxp.c b/WorldWideAstronomy/SOFA/trxp.c index 2ac95eb..f271d60 100644 --- a/WorldWideAstronomy/SOFA/trxp.c +++ b/WorldWideAstronomy/SOFA/trxp.c @@ -18,7 +18,7 @@ void iauTrxp(double r[3][3], double p[3], double trp[3]) ** p double[3] p-vector ** ** Returned: -** trp double[3] r * p +** trp double[3] r^T * p ** ** Note: ** It is permissible for p and trp to be the same array. @@ -27,11 +27,11 @@ void iauTrxp(double r[3][3], double p[3], double trp[3]) ** iauTr transpose r-matrix ** iauRxp product of r-matrix and p-vector ** -** This revision: 2013 June 18 +** This revision: 2020 May 24 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double tr[3][3]; @@ -47,7 +47,7 @@ void iauTrxp(double r[3][3], double p[3], double trp[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/trxpv.c b/WorldWideAstronomy/SOFA/trxpv.c index 7967240..4bab996 100644 --- a/WorldWideAstronomy/SOFA/trxpv.c +++ b/WorldWideAstronomy/SOFA/trxpv.c @@ -29,9 +29,9 @@ void iauTrxpv(double r[3][3], double pv[2][3], double trpv[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double tr[3][3]; @@ -47,7 +47,7 @@ void iauTrxpv(double r[3][3], double pv[2][3], double trpv[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tttai.c b/WorldWideAstronomy/SOFA/tttai.c index 93e1849..8998c8a 100644 --- a/WorldWideAstronomy/SOFA/tttai.c +++ b/WorldWideAstronomy/SOFA/tttai.c @@ -38,11 +38,11 @@ int iauTttai(double tt1, double tt2, double *tai1, double *tai2) ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -51,7 +51,7 @@ int iauTttai(double tt1, double tt2, double *tai1, double *tai2) /* Result, safeguarding precision. */ - if ( tt1 > tt2 ) { + if ( fabs(tt1) > fabs(tt2) ) { *tai1 = tt1; *tai2 = tt2 - dtat; } else { @@ -64,7 +64,7 @@ int iauTttai(double tt1, double tt2, double *tai1, double *tai2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tttcg.c b/WorldWideAstronomy/SOFA/tttcg.c index b5accfb..09092e6 100644 --- a/WorldWideAstronomy/SOFA/tttcg.c +++ b/WorldWideAstronomy/SOFA/tttcg.c @@ -37,11 +37,11 @@ int iauTttcg(double tt1, double tt2, double *tcg1, double *tcg2) ** ** IAU 2000 Resolution B1.9 ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -53,7 +53,7 @@ int iauTttcg(double tt1, double tt2, double *tcg1, double *tcg2) /* Result, safeguarding precision. */ - if ( tt1 > tt2 ) { + if ( fabs(tt1) > fabs(tt2) ) { *tcg1 = tt1; *tcg2 = tt2 + ( ( tt1 - DJM0 ) + ( tt2 - t77t ) ) * elgg; } else { @@ -66,7 +66,7 @@ int iauTttcg(double tt1, double tt2, double *tcg1, double *tcg2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/tttdb.c b/WorldWideAstronomy/SOFA/tttdb.c index 3f43576..1f74fee 100644 --- a/WorldWideAstronomy/SOFA/tttdb.c +++ b/WorldWideAstronomy/SOFA/tttdb.c @@ -50,11 +50,11 @@ int iauTttdb(double tt1, double tt2, double dtr, ** ** IAU 2006 Resolution 3 ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dtrd; @@ -62,7 +62,7 @@ int iauTttdb(double tt1, double tt2, double dtr, /* Result, safeguarding precision. */ dtrd = dtr / DAYSEC; - if ( tt1 > tt2 ) { + if ( fabs(tt1) > fabs(tt2) ) { *tdb1 = tt1; *tdb2 = tt2 + dtrd; } else { @@ -75,7 +75,7 @@ int iauTttdb(double tt1, double tt2, double dtr, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ttut1.c b/WorldWideAstronomy/SOFA/ttut1.c index 8e41bb8..d38caef 100644 --- a/WorldWideAstronomy/SOFA/ttut1.c +++ b/WorldWideAstronomy/SOFA/ttut1.c @@ -39,11 +39,11 @@ int iauTtut1(double tt1, double tt2, double dt, ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dtd; @@ -51,7 +51,7 @@ int iauTtut1(double tt1, double tt2, double dt, /* Result, safeguarding precision. */ dtd = dt / DAYSEC; - if ( tt1 > tt2 ) { + if ( fabs(tt1) > fabs(tt2) ) { *ut11 = tt1; *ut12 = tt2 - dtd; } else { @@ -64,7 +64,7 @@ int iauTtut1(double tt1, double tt2, double dt, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ut1tai.c b/WorldWideAstronomy/SOFA/ut1tai.c index 6d16f01..39419c5 100644 --- a/WorldWideAstronomy/SOFA/ut1tai.c +++ b/WorldWideAstronomy/SOFA/ut1tai.c @@ -40,11 +40,11 @@ int iauUt1tai(double ut11, double ut12, double dta, ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dtad; @@ -52,7 +52,7 @@ int iauUt1tai(double ut11, double ut12, double dta, /* Result, safeguarding precision. */ dtad = dta / DAYSEC; - if ( ut11 > ut12 ) { + if ( fabs(ut11) > fabs(ut12) ) { *tai1 = ut11; *tai2 = ut12 - dtad; } else { @@ -65,7 +65,7 @@ int iauUt1tai(double ut11, double ut12, double dta, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ut1tt.c b/WorldWideAstronomy/SOFA/ut1tt.c index 18a919e..18292db 100644 --- a/WorldWideAstronomy/SOFA/ut1tt.c +++ b/WorldWideAstronomy/SOFA/ut1tt.c @@ -39,11 +39,11 @@ int iauUt1tt(double ut11, double ut12, double dt, ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double dtd; @@ -51,7 +51,7 @@ int iauUt1tt(double ut11, double ut12, double dt, /* Result, safeguarding precision. */ dtd = dt / DAYSEC; - if ( ut11 > ut12 ) { + if ( fabs(ut11) > fabs(ut12) ) { *tt1 = ut11; *tt2 = ut12 + dtd; } else { @@ -64,7 +64,7 @@ int iauUt1tt(double ut11, double ut12, double dt, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/ut1utc.c b/WorldWideAstronomy/SOFA/ut1utc.c index e99b212..0393e9c 100644 --- a/WorldWideAstronomy/SOFA/ut1utc.c +++ b/WorldWideAstronomy/SOFA/ut1utc.c @@ -67,11 +67,11 @@ int iauUt1utc(double ut11, double ut12, double dut1, ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 June 18 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int big1; @@ -83,7 +83,7 @@ int iauUt1utc(double ut11, double ut12, double dut1, duts = dut1; /* Put the two parts of the UT1 into big-first order. */ - big1 = ( ut11 >= ut12 ); + big1 = ( fabs(ut11) >= fabs(ut12) ); if ( big1 ) { u1 = ut11; u2 = ut12; @@ -147,7 +147,7 @@ int iauUt1utc(double ut11, double ut12, double dut1, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/utctai.c b/WorldWideAstronomy/SOFA/utctai.c index f6dd9b1..a8c6336 100644 --- a/WorldWideAstronomy/SOFA/utctai.c +++ b/WorldWideAstronomy/SOFA/utctai.c @@ -63,11 +63,11 @@ int iauUtctai(double utc1, double utc2, double *tai1, double *tai2) ** Explanatory Supplement to the Astronomical Almanac, ** P. Kenneth Seidelmann (ed), University Science Books (1992) ** -** This revision: 2013 July 26 +** This revision: 2019 June 20 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. ** */ { @@ -77,7 +77,7 @@ int iauUtctai(double utc1, double utc2, double *tai1, double *tai2) /* Put the two parts of the UTC into big-first order. */ - big1 = ( utc1 >= utc2 ); + big1 = ( fabs(utc1) >= fabs(utc2) ); if ( big1 ) { u1 = utc1; u2 = utc2; @@ -132,7 +132,7 @@ int iauUtctai(double utc1, double utc2, double *tai1, double *tai2) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/utcut1.c b/WorldWideAstronomy/SOFA/utcut1.c index 392895e..f945b96 100644 --- a/WorldWideAstronomy/SOFA/utcut1.c +++ b/WorldWideAstronomy/SOFA/utcut1.c @@ -70,9 +70,9 @@ int iauUtcut1(double utc1, double utc2, double dut1, ** ** This revision: 2013 August 12 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { int iy, im, id, js, jw; @@ -101,7 +101,7 @@ int iauUtcut1(double utc1, double utc2, double dut1, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/xy06.c b/WorldWideAstronomy/SOFA/xy06.c index 53c2424..578c95b 100644 --- a/WorldWideAstronomy/SOFA/xy06.c +++ b/WorldWideAstronomy/SOFA/xy06.c @@ -90,11 +90,11 @@ void iauXy06(double date1, double date2, double *x, double *y) ** ** Wallace, P.T. & Capitaine, N., 2006, Astron.Astrophys. 459, 981 ** -** This revision: 2013 August 21 +** This revision: 2019 June 23 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { @@ -2563,7 +2563,7 @@ void iauXy06(double date1, double date2, double *x, double *y) sc[2]; int jpt, i, j, jxy, ialast, ifreq, m, ia, jsc; -/*--------------------------------------------------------------------*/ +/* ------------------------------------------------------------------ */ /* Interval between fundamental date J2000.0 and given date (JC). */ t = ((date1 - DJ00) + date2) / DJC; @@ -2712,7 +2712,7 @@ void iauXy06(double date1, double date2, double *x, double *y) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/xys00a.c b/WorldWideAstronomy/SOFA/xys00a.c index 10a320a..a2b5fb4 100644 --- a/WorldWideAstronomy/SOFA/xys00a.c +++ b/WorldWideAstronomy/SOFA/xys00a.c @@ -21,7 +21,7 @@ void iauXys00a(double date1, double date2, ** ** Returned: ** x,y double Celestial Intermediate Pole (Note 2) -** s double the CIO locator s (Note 2) +** s double the CIO locator s (Note 3) ** ** Notes: ** @@ -64,11 +64,11 @@ void iauXys00a(double date1, double date2, ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), ** IERS Technical Note No. 32, BKG (2004) ** -** This revision: 2013 June 18 +** This revision: 2019 November 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rbpn[3][3]; @@ -87,7 +87,7 @@ void iauXys00a(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/xys00b.c b/WorldWideAstronomy/SOFA/xys00b.c index 62563f2..69ec5b4 100644 --- a/WorldWideAstronomy/SOFA/xys00b.c +++ b/WorldWideAstronomy/SOFA/xys00b.c @@ -66,9 +66,9 @@ void iauXys00b(double date1, double date2, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rbpn[3][3]; @@ -87,7 +87,7 @@ void iauXys00b(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/xys06a.c b/WorldWideAstronomy/SOFA/xys06a.c index b9df0c9..d9b8e6c 100644 --- a/WorldWideAstronomy/SOFA/xys06a.c +++ b/WorldWideAstronomy/SOFA/xys06a.c @@ -66,9 +66,9 @@ void iauXys06a(double date1, double date2, ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { double rbpn[3][3]; @@ -87,7 +87,7 @@ void iauXys06a(double date1, double date2, /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/zp.c b/WorldWideAstronomy/SOFA/zp.c index ad9dc02..bc28a3f 100644 --- a/WorldWideAstronomy/SOFA/zp.c +++ b/WorldWideAstronomy/SOFA/zp.c @@ -18,9 +18,9 @@ void iauZp(double p[3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { p[0] = 0.0; @@ -31,7 +31,7 @@ void iauZp(double p[3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/zpv.c b/WorldWideAstronomy/SOFA/zpv.c index 18d75c7..6020070 100644 --- a/WorldWideAstronomy/SOFA/zpv.c +++ b/WorldWideAstronomy/SOFA/zpv.c @@ -21,9 +21,9 @@ void iauZpv(double pv[2][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { iauZp(pv[0]); @@ -33,7 +33,7 @@ void iauZpv(double pv[2][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/SOFA/zr.c b/WorldWideAstronomy/SOFA/zr.c index dcc944b..d9aeb95 100644 --- a/WorldWideAstronomy/SOFA/zr.c +++ b/WorldWideAstronomy/SOFA/zr.c @@ -18,9 +18,9 @@ void iauZr(double r[3][3]) ** ** This revision: 2013 June 18 ** -** SOFA release 2018-01-30 +** SOFA release 2020-07-21 ** -** Copyright (C) 2018 IAU SOFA Board. See notes at end. +** Copyright (C) 2020 IAU SOFA Board. See notes at end. */ { r[0][0] = 0.0; @@ -37,7 +37,7 @@ void iauZr(double r[3][3]) /*---------------------------------------------------------------------- ** -** Copyright (C) 2018 +** Copyright (C) 2020 ** Standards Of Fundamental Astronomy Board ** of the International Astronomical Union. ** diff --git a/WorldWideAstronomy/WWA.Core/Astronomy/GeodeticGeocentric/pvtob.cs b/WorldWideAstronomy/WWA.Core/Astronomy/GeodeticGeocentric/pvtob.cs deleted file mode 100644 index 64d619a..0000000 --- a/WorldWideAstronomy/WWA.Core/Astronomy/GeodeticGeocentric/pvtob.cs +++ /dev/null @@ -1,76 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace WorldWideAstronomy -{ - //public static partial class SOFA - //{ - // /// - // /// Position and velocity of a terrestrial observing station. - // /// - // /// - // /// - // /// World Wide Astronomy - WWA - // /// Set of C# algorithms and procedures that implement standard models used in fundamental astronomy. - // /// - // /// This program is derived from the International Astronomical Union's - // /// SOFA (Standards of Fundamental Astronomy) software collection. - // /// http://www.iausofa.org - // /// - // /// The WWA code does not itself constitute software provided by and/or endorsed by SOFA. - // /// This version is intended to retain identical functionality to the SOFA library, but - // /// made distinct through different function names (prefixes) and C# language specific - // /// modifications in code. - // /// - // /// Contributor - // /// Attila Abrudán - // /// - // /// Please read the ReadMe.1st text file for more information. - // /// - // /// longitude (radians, east +ve, Note 1) - // /// latitude (geodetic, radians, Note 1) - // /// height above ref. ellipsoid (geodetic, m) - // /// coordinates of the pole (radians, Note 2) - // /// coordinates of the pole (radians, Note 2) - // /// the TIO locator s' (radians, Note 2) - // /// Earth rotation angle (radians, Note 3) - // /// position/velocity vector (m, m/s, CIRS) - // public static void wwaPvtob(double elong, double phi, double hm, double xp, double yp, double sp, double theta, double[,] pv) - // { - // /* Earth rotation rate in radians per UT1 second */ - // const double OM = 1.00273781191135448 * D2PI / DAYSEC; - - // double[] xyzm = new double[3]; - // double[] xyz = new double[3]; - // double[,] rpm = new double[3, 3]; - // double x, y, z, s, c; - - // /* Geodetic to geocentric transformation (WGS84). */ - // wwaGd2gc(1, elong, phi, hm, xyzm); - - // /* Polar motion and TIO position. */ - // wwaPom00(xp, yp, sp, rpm); - // wwaTrxp(rpm, xyzm, xyz); - // x = xyz[0]; - // y = xyz[1]; - // z = xyz[2]; - - // /* Functions of ERA. */ - // s = Math.Sin(theta); - // c = Math.Cos(theta); - - // /* Position. */ - // pv[0, 0] = c * x - s * y; - // pv[0, 1] = s * x + c * y; - // pv[0, 2] = z; - - // /* Velocity. */ - // pv[1, 0] = OM * (-s * x - c * y); - // pv[1, 1] = OM * (c * x - s * y); - // pv[1, 2] = 0.0; - // } - //} -} \ No newline at end of file diff --git a/WorldWideAstronomy/WWA.Core/Astronomy/SpaceMotion/pmsafe.cs b/WorldWideAstronomy/WWA.Core/Astronomy/SpaceMotion/pmsafe.cs deleted file mode 100644 index feb76cd..0000000 --- a/WorldWideAstronomy/WWA.Core/Astronomy/SpaceMotion/pmsafe.cs +++ /dev/null @@ -1,95 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace WorldWideAstronomy -{ - //public static partial class SOFA - //{ - // /// - // /// Star proper motion: update star catalog data for space motion, with - // /// special handling to handle the zero parallax case. - // /// - // /// - // /// - // /// World Wide Astronomy - WWA - // /// Set of C# algorithms and procedures that implement standard models used in fundamental astronomy. - // /// - // /// This program is derived from the International Astronomical Union's - // /// SOFA (Standards of Fundamental Astronomy) software collection. - // /// http://www.iausofa.org - // /// - // /// The WWA code does not itself constitute software provided by and/or endorsed by SOFA. - // /// This version is intended to retain identical functionality to the SOFA library, but - // /// made distinct through different function names (prefixes) and C# language specific - // /// modifications in code. - // /// - // /// Contributor - // /// Attila Abrudán - // /// - // /// Please read the ReadMe.1st text file for more information. - // /// - // /// right ascension (radians), before - // /// declination (radians), before - // /// RA proper motion (radians/year), before - // /// Dec proper motion (radians/year), before - // /// parallax (arcseconds), before - // /// radial velocity (km/s, +ve = receding), before - // /// "before" epoch, part A (Note 1) - // /// "before" epoch, part B (Note 1) - // /// "after" epoch, part A (Note 1) - // /// "after" epoch, part B (Note 1) - // /// right ascension (radians), after - // /// declination (radians), after - // /// RA proper motion (radians/year), after - // /// Dec proper motion (radians/year), after - // /// parallax (arcseconds), after - // /// radial velocity (km/s, +ve = receding), after - // /// status: - // /// -1 = system error (should not occur) - // /// 0 = no warnings or errors - // /// 1 = distance overridden (Note 6) - // /// 2 = excessive velocity (Note 7) - // /// 4 = solution didn't converge (Note 8) - // /// else = binary logical OR of the above warnings - // /// - // public static int iauPmsafe(double ra1, double dec1, double pmr1, double pmd1, - // double px1, double rv1, - // double ep1a, double ep1b, double ep2a, double ep2b, - // ref double ra2, ref double dec2, ref double pmr2, ref double pmd2, - // ref double px2, ref double rv2) - // { - - // /* Minimum allowed parallax (arcsec) */ - // const double PXMIN = 5e-7; - - // /* Factor giving maximum allowed transverse speed of about 1% c */ - // const double F = 326.0; - - // int jpx, j; - // double pm, px1a; - - - // /* Proper motion in one year (radians). */ - // pm = wwaSeps(ra1, dec1, ra1 + pmr1, dec1 + pmd1); - - // /* Override the parallax to reduce the chances of a warning status. */ - // jpx = 0; - // px1a = px1; - // pm *= F; - // if (px1a < pm) { jpx = 1; px1a = pm; } - // if (px1a < PXMIN) { jpx = 1; px1a = PXMIN; } - - // /* Carry out the transformation using the modified parallax. */ - // j = wwaStarpm(ra1, dec1, pmr1, pmd1, px1a, rv1, - // ep1a, ep1b, ep2a, ep2b, - // ra2, dec2, pmr2, pmd2, px2, rv2); - - // /* Revise and return the status. */ - // if (!j % 2) j += jpx; - // return j; - // } - //} -} diff --git a/WorldWideAstronomy/WWA/Astronomy/Astrometry/apco.cs b/WorldWideAstronomy/WWA/Astronomy/Astrometry/apco.cs index 1a2b1ea..bd4a963 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Astrometry/apco.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Astrometry/apco.cs @@ -55,7 +55,7 @@ public static void wwaApco(double date1, double date2, double[,] ebpv, double[] double elong, double phi, double hm, double xp, double yp, double sp, double refa, double refb, ref wwaASTROM astrom) { double sl, cl; - double [,] r = new double[3, 3]; + double[,] r = new double[3, 3]; double[,] pvc = new double[2, 3] { { 0, 0, 0 }, { 0, 0, 0 } }; double[,] pv = new double[2, 3] { { 0, 0, 0 }, { 0, 0, 0 } }; diff --git a/WorldWideAstronomy/WWA/Astronomy/Calendars/jd2cal.cs b/WorldWideAstronomy/WWA/Astronomy/Calendars/jd2cal.cs index 5ab4bb1..b824ee7 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Calendars/jd2cal.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Calendars/jd2cal.cs @@ -47,34 +47,71 @@ public static int wwaJd2cal(double dj1, double dj2, ref int iy, ref int im, ref const double DJMIN = -68569.5; const double DJMAX = 1e9; - long jd, l, n, i, k; - double dj, d1, d2, f1, f2, f, d; + long jd, i, l, n, k; + double dj, f1, f2, d, s, cs, x, t, f; + double[] v = new double[2]; /* Verify date is acceptable. */ dj = dj1 + dj2; if (dj < DJMIN || dj > DJMAX) return -1; - /* Copy the date, big then small, and re-align to midnight. */ - if (dj1 >= dj2) + /* Separate day and fraction (where -0.5 <= fraction < 0.5). */ + d = dnint(dj1); + f1 = dj1 - d; + jd = (long)d; + d = dnint(dj2); + f2 = dj2 - d; + jd += (long)d; + + /* Compute f1+f2+0.5 using compensated summation (Klein 2006). */ + s = 0.5; + cs = 0.0; + v[0] = f1; + v[1] = f2; + for (i = 0; i < 2; i++) { - d1 = dj1; - d2 = dj2; + x = v[i]; + t = s + x; + cs += Math.Abs(s) >= Math.Abs(x) ? (s - t) + x : (x - t) + s; + s = t; + if (s >= 1.0) + { + jd++; + s -= 1.0; + } } - else + f = s + cs; + cs = f - s; + + /* Deal with negative f. */ + if (f < 0.0) { - d1 = dj2; - d2 = dj1; + + /* Compensated summation: assume that |s| <= 1.0. */ + f = s + 1.0; + cs += (1.0 - f) + s; + s = f; + f = s + cs; + cs = f - s; + jd--; } - d2 -= 0.5; - /* Separate day and fraction. */ - f1 = d1 % 1.0; - f2 = d2 % 1.0; - f = Math.IEEERemainder(f1 + f2, 1.0); - if (f < 0.0) f += 1.0; - d = dnint(d1 - f1) + dnint(d2 - f2) + dnint(f1 + f2 - f); - jd = (long)Math.Round(d, MidpointRounding.AwayFromZero) + 1L; + /* Deal with f that is 1.0 or more (when rounded to double). */ + if ((f - 1.0) >= -DBL_EPSILON / 4.0) + { + + /* Compensated summation: assume that |s| <= 1.0. */ + t = s - 1.0; + cs += (s - t) - 1.0; + s = t; + f = s + cs; + if (-DBL_EPSILON / 2.0 < f) + { + jd++; + f = gmax(f, 0.0); + } + } /* Express day in Gregorian calendar. */ l = jd + 68569L; diff --git a/WorldWideAstronomy/WWA/Astronomy/Calendars/jdcalf.cs b/WorldWideAstronomy/WWA/Astronomy/Calendars/jdcalf.cs index 032b839..127a6ac 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Calendars/jdcalf.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Calendars/jdcalf.cs @@ -44,7 +44,8 @@ public static partial class WWA public static int wwaJdcalf(int ndp, double dj1, double dj2, int[] iymdf) { int j, js; - double denom, d1, d2, f1, f2, f; + double denom, d1, d2, f1, f2, d, djd, f, rf; + /* Denominator of fraction (e.g. 100 for 2 decimal places). */ if ((ndp >= 0) && (ndp <= 9)) @@ -58,8 +59,8 @@ public static int wwaJdcalf(int ndp, double dj1, double dj2, int[] iymdf) denom = 1.0; } - /* Copy the date, big then small, and realign to midnight. */ - if (dj1 >= dj2) + /* Copy the date, big then small. */ + if (Math.Abs(dj1) >= Math.Abs(dj2)) { d1 = dj1; d2 = dj2; @@ -69,25 +70,37 @@ public static int wwaJdcalf(int ndp, double dj1, double dj2, int[] iymdf) d1 = dj2; d2 = dj1; } - d2 -= 0.5; - /* Separate days and fractions. */ - f1 = d1 % 1.0; - f2 = d2 % 1.0; - d1 = dnint(d1 - f1); - d2 = dnint(d2 - f2); + /* Realign to midnight (without rounding error). */ + d1 -= 0.5; + + /* Separate day and fraction (as precisely as possible). */ + d = dnint(d1); + f1 = d1 - d; + djd = d; + d = dnint(d2); + f2 = d2 - d; + djd += d; + d = dnint(f1 + f2); + f = (f1 - d) + f2; + if (f < 0.0) + { + f += 1.0; + d -= 1.0; + } + djd += d; /* Round the total fraction to the specified number of places. */ - f = Math.Floor((f1 + f2) * denom + 0.5) / denom; + rf = dnint(f * denom) / denom; - /* Re-assemble the rounded date and re-align to noon. */ - d2 += f + 0.5; + /* Re-align to noon. */ + djd += 0.5; /* Convert to Gregorian calendar. */ - js = wwaJd2cal(d1, d2, ref iymdf[0], ref iymdf[1], ref iymdf[2], ref f); + js = wwaJd2cal(djd, rf, ref iymdf[0], ref iymdf[1], ref iymdf[2], ref f); if (js == 0) { - iymdf[3] = (int)(f * denom); + iymdf[3] = (int)dnint(f * denom); } else { diff --git a/WorldWideAstronomy/WWA/Astronomy/GeodeticGeocentric/pvtob.cs b/WorldWideAstronomy/WWA/Astronomy/GeodeticGeocentric/pvtob.cs deleted file mode 100644 index 64d619a..0000000 --- a/WorldWideAstronomy/WWA/Astronomy/GeodeticGeocentric/pvtob.cs +++ /dev/null @@ -1,76 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace WorldWideAstronomy -{ - //public static partial class SOFA - //{ - // /// - // /// Position and velocity of a terrestrial observing station. - // /// - // /// - // /// - // /// World Wide Astronomy - WWA - // /// Set of C# algorithms and procedures that implement standard models used in fundamental astronomy. - // /// - // /// This program is derived from the International Astronomical Union's - // /// SOFA (Standards of Fundamental Astronomy) software collection. - // /// http://www.iausofa.org - // /// - // /// The WWA code does not itself constitute software provided by and/or endorsed by SOFA. - // /// This version is intended to retain identical functionality to the SOFA library, but - // /// made distinct through different function names (prefixes) and C# language specific - // /// modifications in code. - // /// - // /// Contributor - // /// Attila Abrudán - // /// - // /// Please read the ReadMe.1st text file for more information. - // /// - // /// longitude (radians, east +ve, Note 1) - // /// latitude (geodetic, radians, Note 1) - // /// height above ref. ellipsoid (geodetic, m) - // /// coordinates of the pole (radians, Note 2) - // /// coordinates of the pole (radians, Note 2) - // /// the TIO locator s' (radians, Note 2) - // /// Earth rotation angle (radians, Note 3) - // /// position/velocity vector (m, m/s, CIRS) - // public static void wwaPvtob(double elong, double phi, double hm, double xp, double yp, double sp, double theta, double[,] pv) - // { - // /* Earth rotation rate in radians per UT1 second */ - // const double OM = 1.00273781191135448 * D2PI / DAYSEC; - - // double[] xyzm = new double[3]; - // double[] xyz = new double[3]; - // double[,] rpm = new double[3, 3]; - // double x, y, z, s, c; - - // /* Geodetic to geocentric transformation (WGS84). */ - // wwaGd2gc(1, elong, phi, hm, xyzm); - - // /* Polar motion and TIO position. */ - // wwaPom00(xp, yp, sp, rpm); - // wwaTrxp(rpm, xyzm, xyz); - // x = xyz[0]; - // y = xyz[1]; - // z = xyz[2]; - - // /* Functions of ERA. */ - // s = Math.Sin(theta); - // c = Math.Cos(theta); - - // /* Position. */ - // pv[0, 0] = c * x - s * y; - // pv[0, 1] = s * x + c * y; - // pv[0, 2] = z; - - // /* Velocity. */ - // pv[1, 0] = OM * (-s * x - c * y); - // pv[1, 1] = OM * (c * x - s * y); - // pv[1, 2] = 0.0; - // } - //} -} \ No newline at end of file diff --git a/WorldWideAstronomy/WWA/Astronomy/PrecNutPolar/pb06.cs b/WorldWideAstronomy/WWA/Astronomy/PrecNutPolar/pb06.cs index a19f9bf..5022d67 100644 --- a/WorldWideAstronomy/WWA/Astronomy/PrecNutPolar/pb06.cs +++ b/WorldWideAstronomy/WWA/Astronomy/PrecNutPolar/pb06.cs @@ -40,23 +40,32 @@ public static partial class WWA public static void wwaPb06(double date1, double date2, ref double bzeta, ref double bz, ref double btheta) { double[,] r = new double[3, 3]; - double r31, r32; - + double y, x; /* Precession matrix via Fukushima-Williams angles. */ wwaPmat06(date1, date2, r); - /* Solve for z. */ - bz = Math.Atan2(r[1, 2], r[0, 2]); + /* Solve for z, choosing the +/- pi alternative. */ + y = r[1, 2]; + x = -r[0, 2]; + if (x < 0.0) + { + y = -y; + x = -x; + } + bz = (x != 0.0 || y != 0.0) ? -Math.Atan2(y, x) : 0.0; - /* Remove it from the matrix. */ + /* Derotate it out of the matrix. */ wwaRz(bz, r); /* Solve for the remaining two angles. */ - bzeta = Math.Atan2(r[1, 0], r[1, 1]); - r31 = r[2, 0]; - r32 = r[2, 1]; - btheta = Math.Atan2(-dsign(Math.Sqrt(r31 * r31 + r32 * r32), r[0, 2]), r[2, 2]); + y = r[0, 2]; + x = r[2, 2]; + btheta = (x != 0.0 || y != 0.0) ? -Math.Atan2(y, x) : 0.0; + + y = -r[1, 0]; + x = r[1, 1]; + bzeta = (x != 0.0 || y != 0.0) ? -Math.Atan2(y, x) : 0.0; return; } diff --git a/WorldWideAstronomy/WWA/Astronomy/SpaceMotion/pmsafe.cs b/WorldWideAstronomy/WWA/Astronomy/SpaceMotion/pmsafe.cs deleted file mode 100644 index feb76cd..0000000 --- a/WorldWideAstronomy/WWA/Astronomy/SpaceMotion/pmsafe.cs +++ /dev/null @@ -1,95 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace WorldWideAstronomy -{ - //public static partial class SOFA - //{ - // /// - // /// Star proper motion: update star catalog data for space motion, with - // /// special handling to handle the zero parallax case. - // /// - // /// - // /// - // /// World Wide Astronomy - WWA - // /// Set of C# algorithms and procedures that implement standard models used in fundamental astronomy. - // /// - // /// This program is derived from the International Astronomical Union's - // /// SOFA (Standards of Fundamental Astronomy) software collection. - // /// http://www.iausofa.org - // /// - // /// The WWA code does not itself constitute software provided by and/or endorsed by SOFA. - // /// This version is intended to retain identical functionality to the SOFA library, but - // /// made distinct through different function names (prefixes) and C# language specific - // /// modifications in code. - // /// - // /// Contributor - // /// Attila Abrudán - // /// - // /// Please read the ReadMe.1st text file for more information. - // /// - // /// right ascension (radians), before - // /// declination (radians), before - // /// RA proper motion (radians/year), before - // /// Dec proper motion (radians/year), before - // /// parallax (arcseconds), before - // /// radial velocity (km/s, +ve = receding), before - // /// "before" epoch, part A (Note 1) - // /// "before" epoch, part B (Note 1) - // /// "after" epoch, part A (Note 1) - // /// "after" epoch, part B (Note 1) - // /// right ascension (radians), after - // /// declination (radians), after - // /// RA proper motion (radians/year), after - // /// Dec proper motion (radians/year), after - // /// parallax (arcseconds), after - // /// radial velocity (km/s, +ve = receding), after - // /// status: - // /// -1 = system error (should not occur) - // /// 0 = no warnings or errors - // /// 1 = distance overridden (Note 6) - // /// 2 = excessive velocity (Note 7) - // /// 4 = solution didn't converge (Note 8) - // /// else = binary logical OR of the above warnings - // /// - // public static int iauPmsafe(double ra1, double dec1, double pmr1, double pmd1, - // double px1, double rv1, - // double ep1a, double ep1b, double ep2a, double ep2b, - // ref double ra2, ref double dec2, ref double pmr2, ref double pmd2, - // ref double px2, ref double rv2) - // { - - // /* Minimum allowed parallax (arcsec) */ - // const double PXMIN = 5e-7; - - // /* Factor giving maximum allowed transverse speed of about 1% c */ - // const double F = 326.0; - - // int jpx, j; - // double pm, px1a; - - - // /* Proper motion in one year (radians). */ - // pm = wwaSeps(ra1, dec1, ra1 + pmr1, dec1 + pmd1); - - // /* Override the parallax to reduce the chances of a warning status. */ - // jpx = 0; - // px1a = px1; - // pm *= F; - // if (px1a < pm) { jpx = 1; px1a = pm; } - // if (px1a < PXMIN) { jpx = 1; px1a = PXMIN; } - - // /* Carry out the transformation using the modified parallax. */ - // j = wwaStarpm(ra1, dec1, pmr1, pmd1, px1a, rv1, - // ep1a, ep1b, ep2a, ep2b, - // ra2, dec2, pmr2, pmd2, px2, rv2); - - // /* Revise and return the status. */ - // if (!j % 2) j += jpx; - // return j; - // } - //} -} diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/taitt.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/taitt.cs index 2903dc8..0dbd2c6 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/taitt.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/taitt.cs @@ -45,7 +45,7 @@ public static int wwaTaitt(double tai1, double tai2, ref double tt1, ref double const double dtat = TTMTAI / DAYSEC; /* Result, safeguarding precision. */ - if (tai1 > tai2) + if (Math.Abs(tai1) > Math.Abs(tai2)) { tt1 = tai1; tt2 = tai2 + dtat; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/taiut1.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/taiut1.cs index 0c6b279..71b6833 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/taiut1.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/taiut1.cs @@ -46,7 +46,7 @@ public static int wwaTaiut1(double tai1, double tai2, double dta, ref double ut1 /* Result, safeguarding precision. */ dtad = dta / DAYSEC; - if (tai1 > tai2) + if (Math.Abs(tai1) > Math.Abs(tai2)) { ut11 = tai1; ut12 = tai2 + dtad; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/taiutc.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/taiutc.cs index 70fe49e..a5bcda0 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/taiutc.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/taiutc.cs @@ -49,7 +49,7 @@ public static int wwaTaiutc(double tai1, double tai2, ref double utc1, ref doubl double a1, a2, u1, u2, g1 = 0, g2 = 0; /* Put the two parts of the TAI into big-first order. */ - big1 = (tai1 >= tai2 ? true : false); + big1 = (Math.Abs(tai1) >= Math.Abs(tai2)); if (big1) { a1 = tai1; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/tcbtdb.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/tcbtdb.cs index 1a40e7c..f518762 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/tcbtdb.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/tcbtdb.cs @@ -52,7 +52,7 @@ public static int wwaTcbtdb(double tcb1, double tcb2, ref double tdb1, ref doubl /* Result, safeguarding precision. */ - if (tcb1 > tcb2) + if (Math.Abs(tcb1) > Math.Abs(tcb2)) { d = tcb1 - t77td; tdb1 = tcb1; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/tcgtt.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/tcgtt.cs index 8107fe8..d410593 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/tcgtt.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/tcgtt.cs @@ -46,7 +46,7 @@ public static int wwaTcgtt(double tcg1, double tcg2, ref double tt1, ref double /* Result, safeguarding precision. */ - if (tcg1 > tcg2) + if (Math.Abs(tcg1) > Math.Abs(tcg2)) { tt1 = tcg1; tt2 = tcg2 - ((tcg1 - DJM0) + (tcg2 - t77t)) * ELG; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/tdbtcb.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/tdbtcb.cs index e5b17d9..66ef9e1 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/tdbtcb.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/tdbtcb.cs @@ -55,7 +55,7 @@ public static int wwaTdbtcb(double tdb1, double tdb2, ref double tcb1, ref doubl /* Result, preserving date format but safeguarding precision. */ - if (tdb1 > tdb2) + if (Math.Abs(tdb1) > Math.Abs(tdb2)) { d = t77td - tdb1; f = tdb2 - tdb0; @@ -66,7 +66,7 @@ public static int wwaTdbtcb(double tdb1, double tdb2, ref double tcb1, ref doubl { d = t77td - tdb2; f = tdb1 - tdb0; - tcb1 = f + (d - (f - t77tf)) * elbb; + tcb1 = f - (d - (f - t77tf)) * elbb; tcb2 = tdb2; } diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/tdbtt.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/tdbtt.cs index caf6a6f..3854afe 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/tdbtt.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/tdbtt.cs @@ -46,7 +46,7 @@ public static int wwaTdbtt(double tdb1, double tdb2, double dtr, ref double tt1, /* Result, safeguarding precision. */ dtrd = dtr / DAYSEC; - if (tdb1 > tdb2) + if (Math.Abs(tdb1) > Math.Abs(tdb2)) { tt1 = tdb1; tt2 = tdb2 - dtrd; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/tttai.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/tttai.cs index b118622..b4c7d06 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/tttai.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/tttai.cs @@ -46,7 +46,7 @@ public static int wwaTttai(double tt1, double tt2, ref double tai1, ref double t /* Result, safeguarding precision. */ - if (tt1 > tt2) + if (Math.Abs(tt1) > Math.Abs(tt2)) { tai1 = tt1; tai2 = tt2 - dtat; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/tttcg.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/tttcg.cs index ecd3875..bbef8ea 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/tttcg.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/tttcg.cs @@ -49,7 +49,7 @@ public static int wwaTttcg(double tt1, double tt2, ref double tcg1, ref double t /* Result, safeguarding precision. */ - if (tt1 > tt2) + if (Math.Abs(tt1) > Math.Abs(tt2)) { tcg1 = tt1; tcg2 = tt2 + ((tt1 - DJM0) + (tt2 - t77t)) * elgg; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/tttdb.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/tttdb.cs index f820cd8..b98f5f3 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/tttdb.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/tttdb.cs @@ -46,7 +46,7 @@ public static int wwaTttdb(double tt1, double tt2, double dtr, ref double tdb1, /* Result, safeguarding precision. */ dtrd = dtr / DAYSEC; - if (tt1 > tt2) + if (Math.Abs(tt1) > Math.Abs(tt2)) { tdb1 = tt1; tdb2 = tt2 + dtrd; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/ttut1.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/ttut1.cs index b016e35..066e338 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/ttut1.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/ttut1.cs @@ -46,7 +46,7 @@ public static int wwaTtut1(double tt1, double tt2, double dt, ref double ut11, r /* Result, safeguarding precision. */ dtd = dt / DAYSEC; - if (tt1 > tt2) + if (Math.Abs(tt1) > Math.Abs(tt2)) { ut11 = tt1; ut12 = tt2 - dtd; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1tai.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1tai.cs index ae94d73..8bd1a6c 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1tai.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1tai.cs @@ -46,7 +46,7 @@ public static int wwaUt1tai(double ut11, double ut12, double dta, ref double tai /* Result, safeguarding precision. */ dtad = dta / DAYSEC; - if (ut11 > ut12) + if (Math.Abs(ut11) > Math.Abs(ut12)) { tai1 = ut11; tai2 = ut12 - dtad; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1tt.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1tt.cs index fcc42c2..ff11012 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1tt.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1tt.cs @@ -46,7 +46,7 @@ public static int wwaUt1tt(double ut11, double ut12, double dt, ref double tt1, /* Result, safeguarding precision. */ dtd = dt / DAYSEC; - if (ut11 > ut12) + if (Math.Abs(ut11) > Math.Abs(ut12)) { tt1 = ut11; tt2 = ut12 + dtd; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1utc.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1utc.cs index feec727..9faf16d 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1utc.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/ut1utc.cs @@ -53,7 +53,7 @@ public static int wwaUt1utc(double ut11, double ut12, double dut1, ref double ut duts = dut1; /* Put the two parts of the UT1 into big-first order. */ - big1 = (ut11 >= ut12 ? true : false); + big1 = (Math.Abs(ut11) >= Math.Abs(ut12) ? true : false); if (big1) { u1 = ut11; diff --git a/WorldWideAstronomy/WWA/Astronomy/Timescales/utctai.cs b/WorldWideAstronomy/WWA/Astronomy/Timescales/utctai.cs index 75fb789..516c7fb 100644 --- a/WorldWideAstronomy/WWA/Astronomy/Timescales/utctai.cs +++ b/WorldWideAstronomy/WWA/Astronomy/Timescales/utctai.cs @@ -48,7 +48,7 @@ public static int wwaUtctai(double utc1, double utc2, ref double tai1, ref doubl double u1, u2, fd = 0, dat0 = 0, dat12 = 0, w = 0, dat24 = 0, dlod, dleap, z1 = 0, z2 = 0, a2; /* Put the two parts of the UTC into big-first order. */ - big1 = (utc1 >= utc2 ? true : false); + big1 = (Math.Abs(utc1) >= Math.Abs(utc2) ? true : false); if (big1) { u1 = utc1; diff --git a/WorldWideAstronomy/WWA/NewFunctions/fk425.cs b/WorldWideAstronomy/WWA/NewFunctions/fk425.cs new file mode 100644 index 0000000..a1e2302 --- /dev/null +++ b/WorldWideAstronomy/WWA/NewFunctions/fk425.cs @@ -0,0 +1,160 @@ +using System; + +namespace WorldWideAstronomy +{ + public static partial class WWA + { + /// + /// Convert B1950.0 FK4 star catalog data to J2000.0 FK5. + /// + /// + /// + /// World Wide Astronomy - WWA + /// Set of C# algorithms and procedures that implement standard models used in fundamental astronomy. + /// + /// This program is derived from the International Astronomical Union's + /// SOFA (Standards of Fundamental Astronomy) software collection. + /// http://www.iausofa.org + /// + /// The WWA code does not itself constitute software provided by and/or endorsed by SOFA. + /// This version is intended to retain identical functionality to the SOFA library, but + /// made distinct through different function names (prefixes) and C# language specific + /// modifications in code. + /// + /// Contributor + /// Attila Abrudán + /// + /// Please read the ReadMe.1st text file for more information. + /// + /// + /// + /// + /// + /// + public static void wwaFk425(double r1950, double d1950, + double dr1950, double dd1950, + double p1950, double v1950, + ref double r2000, ref double d2000, + ref double dr2000, ref double dd2000, + ref double p2000, ref double v2000) + { + /* Radians per year to arcsec per century */ + const double PMF = 100.0 * DR2AS; + + /* Small number to avoid arithmetic problems */ + const double TINY = 1e-30; + + /* Miscellaneous */ + double r, d, ur, ud, px, rv, pxvf, w, rd = 0; + int i, j, k, l; + + /* Pv-vectors */ + double[,] r0 = new double[2, 3]; + double[,] pv1 = new double[2, 3]; + double[,] pv2 = new double[2, 3]; + + /* + ** CANONICAL CONSTANTS (Seidelmann 1992) + */ + + /* Km per sec to AU per tropical century */ + /* = 86400 * 36524.2198782 / 149597870.7 */ + const double VF = 21.095; + + /* Constant pv-vector (cf. Seidelmann 3.591-2, vectors A and Adot) */ + double[,] a = new double[2, 3] { + { -1.62557e-6, -0.31919e-6, -0.13843e-6 }, + { +1.245e-3, -1.580e-3, -0.659e-3 } + }; + + /* 3x2 matrix of pv-vectors (cf. Seidelmann 3.591-4, matrix M) */ + double[,,,] em = new double[2, 3, 2, 3] + { + { + { + { +0.9999256782, -0.0111820611, -0.0048579477 }, + { +0.00000242395018, -0.00000002710663, -0.00000001177656 } + }, + { + { +0.0111820610, +0.9999374784, -0.0000271765 }, + { +0.00000002710663, +0.00000242397878, -0.00000000006587 } + }, + { + { +0.0048579479, -0.0000271474, +0.9999881997, }, + { +0.00000001177656, -0.00000000006582, +0.00000242410173 } + } + }, + { + { + { -0.000551, -0.238565, +0.435739 }, + { +0.99994704, -0.01118251, -0.00485767 } + }, + { + { +0.238514, -0.002667, -0.008541 }, + { +0.01118251, +0.99995883, -0.00002718 } + }, + { + { -0.435623, +0.012254, +0.002117 }, + { +0.00485767, -0.00002714, +1.00000956 } + } + } + }; + + /*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ + + /* The FK4 data (units radians and arcsec per tropical century). */ + r = r1950; + d = d1950; + ur = dr1950 * PMF; + ud = dd1950 * PMF; + px = p1950; + rv = v1950; + + /* Express as a pv-vector. */ + pxvf = px * VF; + w = rv * pxvf; + wwaS2pv(r, d, 1.0, ur, ud, w, r0); + + /* Allow for E-terms (cf. Seidelmann 3.591-2). */ + wwaPvmpv(r0, a, pv1); + wwaSxp(wwaPdp(CopyArray(r0, 0), CopyArray(a, 0)), CopyArray(r0, 0), CopyArray(pv2, 0)); + wwaSxp(wwaPdp(CopyArray(r0, 0), CopyArray(a, 1)), CopyArray(r0, 0), CopyArray(pv2, 1)); + wwaPvppv(pv1, pv2, pv1); + + /* Convert pv-vector to Fricke system (cf. Seidelmann 3.591-3). */ + for (i = 0; i < 2; i++) + { + for (j = 0; j < 3; j++) + { + w = 0.0; + for (k = 0; k < 2; k++) + { + for (l = 0; l < 3; l++) + { + w += em[i, j, k, l] * pv1[k, l]; + } + } + pv2[i, j] = w; + } + } + + /* Revert to catalog form. */ + wwaPv2s(pv2, ref r, ref d, ref w, ref ur, ref ud, ref rd); + if (px > TINY) + { + rv = rd / pxvf; + px = px / w; + } + + /* Return the results. */ + r2000 = wwaAnp(r); + d2000 = d; + dr2000 = ur / PMF; + dd2000 = ud / PMF; + v2000 = rv; + p2000 = px; + + /* Finished. */ + } + } +} diff --git a/WorldWideAstronomy/WWA/NewFunctions/fk45z.cs b/WorldWideAstronomy/WWA/NewFunctions/fk45z.cs new file mode 100644 index 0000000..28ee02f --- /dev/null +++ b/WorldWideAstronomy/WWA/NewFunctions/fk45z.cs @@ -0,0 +1,111 @@ +using System; + +namespace WorldWideAstronomy +{ + public static partial class WWA + { + /// + /// Convert a B1950.0 FK4 star position to J2000.0 FK5, assuming zero proper motion in the FK5 system. + /// + /// + /// + /// World Wide Astronomy - WWA + /// Set of C# algorithms and procedures that implement standard models used in fundamental astronomy. + /// + /// This program is derived from the International Astronomical Union's + /// SOFA (Standards of Fundamental Astronomy) software collection. + /// http://www.iausofa.org + /// + /// The WWA code does not itself constitute software provided by and/or endorsed by SOFA. + /// This version is intended to retain identical functionality to the SOFA library, but + /// made distinct through different function names (prefixes) and C# language specific + /// modifications in code. + /// + /// Contributor + /// Attila Abrudán + /// + /// Please read the ReadMe.1st text file for more information. + /// + /// + /// + /// + /// + /// + public static void wwaFk45z(double r1950, double d1950, double bepoch, ref double r2000, ref double d2000) + { + /* Radians per year to arcsec per century */ + const double PMF = 100.0 * DR2AS; + + /* Position and position+velocity vectors */ + double[] r0 = new double[3]; + double[] p = new double[3]; + double[,] pv = new double[2, 3]; + + /* Miscellaneous */ + double w, djm0 = 0, djm = 0; + int i, j, k; + + /* + ** CANONICAL CONSTANTS (Seidelmann 1992) + */ + + /* Vectors A and Adot (Seidelmann 3.591-2) */ + double[] a = new double[3] { -1.62557e-6, -0.31919e-6, -0.13843e-6 }; + double[] ad = new double[3] { +1.245e-3, -1.580e-3, -0.659e-3 }; + + /* 3x2 matrix of p-vectors (cf. Seidelmann 3.591-4, matrix M) */ + double[,,] em = new double[2, 3, 3] + { + { + { +0.9999256782, -0.0111820611, -0.0048579477 }, + { +0.0111820610, +0.9999374784, -0.0000271765 }, + { +0.0048579479, -0.0000271474, +0.9999881997 } + }, + { + { -0.000551, -0.238565, +0.435739 }, + { +0.238514, -0.002667, -0.008541 }, + { -0.435623, +0.012254, +0.002117 } + } + }; + + /*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ + + /* Spherical coordinates to p-vector. */ + wwaS2c(r1950, d1950, r0); + + /* Adjust p-vector A to give zero proper motion in FK5. */ + w = (bepoch - 1950) / PMF; + wwaPpsp(a, w, ad, p); + + /* Remove E-terms. */ + wwaPpsp(p, -wwaPdp(r0, p), r0, p); + wwaPmp(r0, p, p); + + /* Convert to Fricke system pv-vector (cf. Seidelmann 3.591-3). */ + for (i = 0; i < 2; i++) + { + for (j = 0; j < 3; j++) + { + w = 0.0; + for (k = 0; k < 3; k++) + { + w += em[i, j, k] * p[k]; + } + pv[i, j] = w; + } + } + + /* Allow for fictitious proper motion. */ + wwaEpb2jd(bepoch, ref djm0, ref djm); + w = (wwaEpj(djm0, djm) - 2000.0) / PMF; + wwaPvu(w, pv, pv); + + /* Revert to spherical coordinates. */ + wwaC2s(CopyArray(pv, 0), ref w, ref d2000); + r2000 = wwaAnp(w); + + /* Finished. */ + + } + } +} diff --git a/WorldWideAstronomy/WWA/NewFunctions/fk524.cs b/WorldWideAstronomy/WWA/NewFunctions/fk524.cs new file mode 100644 index 0000000..75d8780 --- /dev/null +++ b/WorldWideAstronomy/WWA/NewFunctions/fk524.cs @@ -0,0 +1,181 @@ +using System; + +namespace WorldWideAstronomy +{ + public static partial class WWA + { + /// + /// Convert J2000.0 FK5 star catalog data to B1950.0 FK4. + /// + /// + /// + /// World Wide Astronomy - WWA + /// Set of C# algorithms and procedures that implement standard models used in fundamental astronomy. + /// + /// This program is derived from the International Astronomical Union's + /// SOFA (Standards of Fundamental Astronomy) software collection. + /// http://www.iausofa.org + /// + /// The WWA code does not itself constitute software provided by and/or endorsed by SOFA. + /// This version is intended to retain identical functionality to the SOFA library, but + /// made distinct through different function names (prefixes) and C# language specific + /// modifications in code. + /// + /// Contributor + /// Attila Abrudán + /// + /// Please read the ReadMe.1st text file for more information. + /// + /// + /// + /// + /// + /// + public static void wwaFk524(double r2000, double d2000, + double dr2000, double dd2000, + double p2000, double v2000, + ref double r1950, ref double d1950, + ref double dr1950, ref double dd1950, + ref double p1950, ref double v1950) + { + /* Radians per year to arcsec per century */ + const double PMF = 100.0 * DR2AS; + + /* Small number to avoid arithmetic problems */ + const double TINY = 1e-30; + + /* Miscellaneous */ + double r, d, ur, ud, px, rv, pxvf, w, rd = 0; + int i, j, k, l; + + /* Vectors, p and pv */ + double[,] r0 = new double[2, 3]; + double[,] r1 = new double[2, 3]; + double[] p1 = new double[3]; + double[] p2 = new double[3]; + double[,] pv = new double[2, 3]; + + /* + ** CANONICAL CONSTANTS (Seidelmann 1992) + */ + + /* Km per sec to AU per tropical century */ + /* = 86400 * 36524.2198782 / 149597870.7 */ + const double VF = 21.095; + + /* Constant pv-vector (cf. Seidelmann 3.591-2, vectors A and Adot) */ + double[,] a = new double[2, 3] + { + { -1.62557e-6, -0.31919e-6, -0.13843e-6 }, + { +1.245e-3, -1.580e-3, -0.659e-3 } + }; + + /* 3x2 matrix of pv-vectors (cf. Seidelmann 3.592-1, matrix M^-1) */ + double[,,,] em = new double[2, 3, 2, 3] + { + { + { + { +0.9999256795, +0.0111814828, +0.0048590039, }, + { -0.00000242389840, -0.00000002710544, -0.00000001177742 } + }, + { + { -0.0111814828, +0.9999374849, -0.0000271771, }, + { +0.00000002710544, -0.00000242392702, +0.00000000006585 } + }, + { + { -0.0048590040, -0.0000271557, +0.9999881946, }, + { +0.00000001177742, +0.00000000006585, -0.00000242404995 } + } + }, + { + { + { -0.000551, +0.238509, -0.435614, }, + { +0.99990432, +0.01118145, +0.00485852 } + }, + { + { -0.238560, -0.002667, +0.012254, }, + { -0.01118145, +0.99991613, -0.00002717 } + }, + { + { +0.435730, -0.008541, +0.002117, }, + { -0.00485852, -0.00002716, +0.99996684 } + } + } + }; + /*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ + + /* The FK5 data (units radians and arcsec per Julian century). */ + r = r2000; + d = d2000; + ur = dr2000 * PMF; + ud = dd2000 * PMF; + px = p2000; + rv = v2000; + + /* Express as a pv-vector. */ + pxvf = px * VF; + w = rv * pxvf; + wwaS2pv(r, d, 1.0, ur, ud, w, r0); + + /* Convert pv-vector to Bessel-Newcomb system (cf. Seidelmann 3.592-1). */ + for (i = 0; i < 2; i++) + { + for (j = 0; j < 3; j++) + { + w = 0.0; + for (k = 0; k < 2; k++) + { + for (l = 0; l < 3; l++) + { + w += em[i, j, k, l] * r0[k, l]; + } + } + r1[i, j] = w; + } + } + + /* Apply E-terms (equivalent to Seidelmann 3.592-3, one iteration). */ + + /* Direction. */ + w = wwaPm(CopyArray(r1, 0)); + wwaSxp(wwaPdp(CopyArray(r1, 0), CopyArray(a, 0)), CopyArray(r1, 0), p1); + wwaSxp(w, CopyArray(a, 0), p2); + wwaPmp(p2, p1, p1); + wwaPpp(CopyArray(r1, 0), p1, p1); + + /* Recompute length. */ + w = wwaPm(p1); + + /* Direction. */ + wwaSxp(wwaPdp(CopyArray(r1, 0), CopyArray(a, 0)), CopyArray(r1, 0), p1); + wwaSxp(w, CopyArray(a, 0), p2); + wwaPmp(p2, p1, p1); + wwaPpp(CopyArray(r1, 0), p1, CopyArray(pv, 0)); + + /* Derivative. */ + wwaSxp(wwaPdp(CopyArray(r1, 0), CopyArray(a, 1)), CopyArray(pv, 0), p1); + wwaSxp(w, CopyArray(a, 1), p2); + wwaPmp(p2, p1, p1); + wwaPpp(CopyArray(r1, 1), p1, CopyArray(pv, 1)); + + /* Revert to catalog form. */ + wwaPv2s(pv, ref r, ref d, ref w, ref ur, ref ud, ref rd); + if (px > TINY) + { + rv = rd / pxvf; + px = px / w; + } + + /* Return the results. */ + r1950 = wwaAnp(r); + d1950 = d; + dr1950 = ur / PMF; + dd1950 = ud / PMF; + p1950 = px; + v1950 = rv; + + /* Finished. */ + + } + } +} diff --git a/WorldWideAstronomy/WWA/NewFunctions/fk54z.cs b/WorldWideAstronomy/WWA/NewFunctions/fk54z.cs new file mode 100644 index 0000000..1f68677 --- /dev/null +++ b/WorldWideAstronomy/WWA/NewFunctions/fk54z.cs @@ -0,0 +1,74 @@ +using System; + +namespace WorldWideAstronomy +{ + public static partial class WWA + { + /// + /// Convert a J2000.0 FK5 star position to B1950.0 FK4, assuming zero proper motion in FK5 and parallax. + /// + /// + /// + /// World Wide Astronomy - WWA + /// Set of C# algorithms and procedures that implement standard models used in fundamental astronomy. + /// + /// This program is derived from the International Astronomical Union's + /// SOFA (Standards of Fundamental Astronomy) software collection. + /// http://www.iausofa.org + /// + /// The WWA code does not itself constitute software provided by and/or endorsed by SOFA. + /// This version is intended to retain identical functionality to the SOFA library, but + /// made distinct through different function names (prefixes) and C# language specific + /// modifications in code. + /// + /// Contributor + /// Attila Abrudán + /// + /// Please read the ReadMe.1st text file for more information. + /// + /// + /// + /// + /// + /// + public static void wwaFk54z(double r2000, double d2000, double bepoch, + ref double r1950, ref double d1950, + ref double dr1950, ref double dd1950) + { + double[] p = new double[3]; + double[] v = new double[3]; + double r = 0, d = 0, pr = 0, pd = 0, px = 0, rv = 0, w; + int i; + + + /* FK5 equinox J2000.0 to FK4 equinox B1950.0. */ + wwaFk524(r2000, d2000, 0.0, 0.0, 0.0, 0.0, + ref r, ref d, ref pr, ref pd, ref px, ref rv); + + /* Spherical to Cartesian. */ + wwaS2c(r, d, p); + + /* Fictitious proper motion (radians per year). */ + v[0] = -pr * p[1] - pd * Math.Cos(r) * Math.Sin(d); + v[1] = pr * p[0] - pd * Math.Sin(r) * Math.Sin(d); + v[2] = pd * Math.Cos(d); + + /* Apply the motion. */ + w = bepoch - 1950.0; + for (i = 0; i < 3; i++) + { + p[i] += w * v[i]; + } + + /* Cartesian to spherical. */ + wwaC2s(p, ref w, ref d1950); + r1950 = wwaAnp(w); + + /* Fictitious proper motion. */ + dr1950 = pr; + dd1950 = pd; + + /* Finished. */ + } + } +} diff --git a/WorldWideAstronomy/WWA/WWA.csproj b/WorldWideAstronomy/WWA/WWA.csproj index 5f6d6b4..8584376 100644 --- a/WorldWideAstronomy/WWA/WWA.csproj +++ b/WorldWideAstronomy/WWA/WWA.csproj @@ -113,7 +113,6 @@ - @@ -193,7 +192,6 @@ - @@ -223,6 +221,10 @@ + + + + diff --git a/WorldWideAstronomy/WWA/wwa.cs b/WorldWideAstronomy/WWA/wwa.cs index 41e2c9b..ea38e6e 100644 --- a/WorldWideAstronomy/WWA/wwa.cs +++ b/WorldWideAstronomy/WWA/wwa.cs @@ -208,16 +208,15 @@ public static double dint(double A) return A < 0.0 ? Math.Ceiling(A) : Math.Floor(A); } + /* dnint(A) - round to nearest whole number (double) */ /// /// dnint(A) - round to nearest whole number (double) /// /// /// public static double dnint(double A) - { - //return A < 0.0 ? Math.Ceiling((A)-0.5) : Math.Floor((A)+0.5); - return A < 0.0 ? Math.Ceiling((A) - 0.5) : Math.Floor((A) + 0.5); - //return A < 0.0 ? Math.Round(A) : Math.Round(A, MidpointRounding.AwayFromZero); + { + return (Math.Abs(A) < 0.5 ? 0.0 : ((A) < 0.0 ? Math.Ceiling((A) - 0.5) : Math.Floor((A) + 0.5))); } /// @@ -326,5 +325,21 @@ public static bool AddArray2(ref double[,] arrayDest, double[] arraySource, int return res; } + + // Const values come from sdk\inc\crt\float.h + public const double DBL_EPSILON = 2.2204460492503131e-016; /* smallest such that 1.0+DBL_EPSILON != 1.0 */ + ///// + ///// #define DBL_EPSILON 2.2204460492503131e-16 + ///// + ///// + //public static double getDblEpsilon() + //{ + // double d = 1; + // while (1.0 + d / 2 != 1.0) + // { + // d = d / 2; + // } + // return d; + //} } } diff --git a/WorldWideAstronomy/WWATest/Program.cs b/WorldWideAstronomy/WWATest/Program.cs index f84f348..5a6ab51 100644 --- a/WorldWideAstronomy/WWATest/Program.cs +++ b/WorldWideAstronomy/WWATest/Program.cs @@ -4051,6 +4051,125 @@ static void t_fave03(ref int status) "wwaFave03", "", ref status); } + static void t_fk425(ref int status) + /* + ** - - - - - - - - + ** t _ f k 4 2 5 + ** - - - - - - - - + ** + ** Test iauFk425 function. + ** + ** Returned: + ** status int FALSE = success, TRUE = fail + ** + ** Called: iauFk425, vvd + ** + ** This revision: 2018 December 6 + */ + { + double r1950, d1950, dr1950, dd1950, p1950, v1950, + r2000 = 0, d2000 = 0, dr2000 = 0, dd2000 = 0, p2000 = 0, v2000 = 0; + + + r1950 = 0.07626899753879587532; + d1950 = -1.137405378399605780; + dr1950 = 0.1973749217849087460e-4; + dd1950 = 0.5659714913272723189e-5; + p1950 = 0.134; + v1950 = 8.7; + + WWA.wwaFk425(r1950, d1950, dr1950, dd1950, p1950, v1950, + ref r2000, ref d2000, ref dr2000, ref dd2000, ref p2000, ref v2000); + + vvd(r2000, 0.08757989933556446040, 1e-14, + "iauFk425", "r2000", ref status); + vvd(d2000, -1.132279113042091895, 1e-12, + "iauFk425", "d2000", ref status); + vvd(dr2000, 0.1953670614474396139e-4, 1e-17, + "iauFk425", "dr2000", ref status); + vvd(dd2000, 0.5637686678659640164e-5, 1e-18, + "iauFk425", "dd2000", ref status); + vvd(p2000, 0.1339919950582767871, 1e-13, "iauFk425", "p2000", ref status); + vvd(v2000, 8.736999669183529069, 1e-12, "iauFk425", "v2000", ref status); + + } + + static void t_fk45z(ref int status) + /* + ** - - - - - - - - + ** t _ f k 4 5 z + ** - - - - - - - - + ** + ** Test iauFk45z function. + ** + ** Returned: + ** status int FALSE = success, TRUE = fail + ** + ** Called: iauFk45z, vvd + ** + ** This revision: 2018 December 6 + */ + { + double r1950, d1950, bepoch, r2000 = 0, d2000 = 0; + + + r1950 = 0.01602284975382960982; + d1950 = -0.1164347929099906024; + bepoch = 1954.677617625256806; + + WWA.wwaFk45z(r1950, d1950, bepoch, ref r2000, ref d2000); + + vvd(r2000, 0.02719295911606862303, 1e-15, + "iauFk45z", "r2000", ref status); + vvd(d2000, -0.1115766001565926892, 1e-13, + "iauFk45z", "d2000", ref status); + + } + + static void t_fk524(ref int status) + /* + ** - - - - - - - - + ** t _ f k 5 2 4 + ** - - - - - - - - + ** + ** Test iauFk524 function. + ** + ** Returned: + ** status int FALSE = success, TRUE = fail + ** + ** Called: iauFk524, vvd + ** + ** This revision: 2018 December 6 + */ + { + double r2000, d2000, dr2000, dd2000, p2000, v2000, + r1950 = 0, d1950 = 0, dr1950 = 0, dd1950 = 0, p1950 = 0, v1950 = 0; + + + r2000 = 0.8723503576487275595; + d2000 = -0.7517076365138887672; + dr2000 = 0.2019447755430472323e-4; + dd2000 = 0.3541563940505160433e-5; + p2000 = 0.1559; + v2000 = 86.87; + + WWA.wwaFk524(r2000, d2000, dr2000, dd2000, p2000, v2000, + ref r1950, ref d1950, ref dr1950, ref dd1950, ref p1950, ref v1950); + + vvd(r1950, 0.8636359659799603487, 1e-13, + "iauFk524", "r1950", ref status); + vvd(d1950, -0.7550281733160843059, 1e-13, + "iauFk524", "d1950", ref status); + vvd(dr1950, 0.2023628192747172486e-4, 1e-17, + "iauFk524", "dr1950", ref status); + vvd(dd1950, 0.3624459754935334718e-5, 1e-18, + "iauFk524", "dd1950", ref status); + vvd(p1950, 0.1560079963299390241, 1e-13, + "iauFk524", "p1950", ref status); + vvd(v1950, 86.79606353469163751, 1e-11, "iauFk524", "v1950", ref status); + + } + static void t_fk52h(ref int status) /* ** - - - - - - - - @@ -4097,6 +4216,42 @@ static void t_fk52h(ref int status) } + static void t_fk54z(ref int status) + /* + ** - - - - - - - - + ** t _ f k 5 4 z + ** - - - - - - - - + ** + ** Test iauFk54z function. + ** + ** Returned: + ** status int FALSE = success, TRUE = fail + ** + ** Called: iauFk54z, vvd + ** + ** This revision: 2018 December 6 + */ + { + double r2000, d2000, bepoch, r1950 = 0, d1950 = 0, dr1950 = 0, dd1950 = 0; + + + r2000 = 0.02719026625066316119; + d2000 = -0.1115815170738754813; + bepoch = 1954.677308160316374; + + WWA.wwaFk54z(r2000, d2000, bepoch, ref r1950, ref d1950, ref dr1950, ref dd1950); + + vvd(r1950, 0.01602015588390065476, 1e-14, + "iauFk54z", "r1950", ref status); + vvd(d1950, -0.1164397101110765346, 1e-13, + "iauFk54z", "d1950", ref status); + vvd(dr1950, -0.1175712648471090704e-7, 1e-20, + "iauFk54z", "dr1950", ref status); + vvd(dd1950, 0.2108109051316431056e-7, 1e-20, + "iauFk54z", "dd1950", ref status); + + } + static void t_fk5hip(ref int status) /* ** - - - - - - - - -