sofa.h | sofa.h | |||
---|---|---|---|---|
skipping to change at line 14 | skipping to change at line 14 | |||
/* | /* | |||
** - - - - - - - | ** - - - - - - - | |||
** s o f a . h | ** s o f a . h | |||
** - - - - - - - | ** - - - - - - - | |||
** | ** | |||
** Prototype function declarations for SOFA library. | ** Prototype function declarations for SOFA library. | |||
** | ** | |||
** This file is part of the International Astronomical Union's | ** This file is part of the International Astronomical Union's | |||
** SOFA (Standards Of Fundamental Astronomy) software collection. | ** SOFA (Standards Of Fundamental Astronomy) software collection. | |||
** | ** | |||
** This revision: 2013 August 22 | ** This revision: 2014 July 29 | |||
** | ** | |||
** SOFA release 2013-12-02 | ** Copyright1 | |||
** | ||||
** Copyright (C) 2013 IAU SOFA Board. See notes at end. | ||||
*/ | */ | |||
#include "sofam.h" | #include "sofam.h" | |||
#include "math.h" | #include "math.h" | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/* Astronomy/Calendars */ | /* Astronomy/Calendars */ | |||
skipping to change at line 60 | skipping to change at line 58 | |||
iauASTROM *astrom, double *eo); | iauASTROM *astrom, double *eo); | |||
void iauApco(double date1, double date2, | void iauApco(double date1, double date2, | |||
double ebpv[2][3], double ehp[3], | double ebpv[2][3], double ehp[3], | |||
double x, double y, double s, double theta, | double x, double y, double s, double theta, | |||
double elong, double phi, double hm, | double elong, double phi, double hm, | |||
double xp, double yp, double sp, | double xp, double yp, double sp, | |||
double refa, double refb, | double refa, double refb, | |||
iauASTROM *astrom); | iauASTROM *astrom); | |||
int iauApco13(double utc1, double utc2, double dut1, | int iauApco13(double utc1, double utc2, double dut1, | |||
double elong, double phi, double hm, double xp, double yp, | double elong, double phi, double hm, double xp, double yp, | |||
double phpa, double tk, double rh, double wl, | double phpa, double tc, double rh, double wl, | |||
iauASTROM *astrom, double *eo); | iauASTROM *astrom, double *eo); | |||
void iauApcs(double date1, double date2, double pv[2][3], | void iauApcs(double date1, double date2, double pv[2][3], | |||
double ebpv[2][3], double ehp[3], | double ebpv[2][3], double ehp[3], | |||
iauASTROM *astrom); | iauASTROM *astrom); | |||
void iauApcs13(double date1, double date2, double pv[2][3], | void iauApcs13(double date1, double date2, double pv[2][3], | |||
iauASTROM *astrom); | iauASTROM *astrom); | |||
void iauAper(double theta, iauASTROM *astrom); | void iauAper(double theta, iauASTROM *astrom); | |||
void iauAper13(double ut11, double ut12, iauASTROM *astrom); | void iauAper13(double ut11, double ut12, iauASTROM *astrom); | |||
void iauApio(double sp, double theta, | void iauApio(double sp, double theta, | |||
double elong, double phi, double hm, double xp, double yp, | double elong, double phi, double hm, double xp, double yp, | |||
double refa, double refb, | double refa, double refb, | |||
iauASTROM *astrom); | iauASTROM *astrom); | |||
int iauApio13(double utc1, double utc2, double dut1, | int iauApio13(double utc1, double utc2, double dut1, | |||
double elong, double phi, double hm, double xp, double yp, | double elong, double phi, double hm, double xp, double yp, | |||
double phpa, double tk, double rh, double wl, | double phpa, double tc, double rh, double wl, | |||
iauASTROM *astrom); | iauASTROM *astrom); | |||
void iauAtci13(double rc, double dc, | void iauAtci13(double rc, double dc, | |||
double pr, double pd, double px, double rv, | double pr, double pd, double px, double rv, | |||
double date1, double date2, | double date1, double date2, | |||
double *ri, double *di, double *eo); | double *ri, double *di, double *eo); | |||
void iauAtciq(double rc, double dc, double pr, double pd, | void iauAtciq(double rc, double dc, double pr, double pd, | |||
double px, double rv, iauASTROM *astrom, | double px, double rv, iauASTROM *astrom, | |||
double *ri, double *di); | double *ri, double *di); | |||
void iauAtciqn(double rc, double dc, double pr, double pd, | void iauAtciqn(double rc, double dc, double pr, double pd, | |||
double px, double rv, iauASTROM *astrom, | double px, double rv, iauASTROM *astrom, | |||
int n, iauLDBODY b[], double *ri, double *di); | int n, iauLDBODY b[], double *ri, double *di); | |||
void iauAtciqz(double rc, double dc, iauASTROM *astrom, | void iauAtciqz(double rc, double dc, iauASTROM *astrom, | |||
double *ri, double *di); | double *ri, double *di); | |||
int iauAtco13(double rc, double dc, | int iauAtco13(double rc, double dc, | |||
double pr, double pd, double px, double rv, | double pr, double pd, double px, double rv, | |||
double utc1, double utc2, double dut1, | double utc1, double utc2, double dut1, | |||
double elong, double phi, double hm, double xp, double yp, | double elong, double phi, double hm, double xp, double yp, | |||
double phpa, double tk, double rh, double wl, | double phpa, double tc, double rh, double wl, | |||
double *aob, double *zob, double *hob, | double *aob, double *zob, double *hob, | |||
double *dob, double *rob, double *eo); | double *dob, double *rob, double *eo); | |||
void iauAtic13(double ri, double di, | void iauAtic13(double ri, double di, | |||
double date1, double date2, | double date1, double date2, | |||
double *rc, double *dc, double *eo); | double *rc, double *dc, double *eo); | |||
void iauAticq(double ri, double di, iauASTROM *astrom, | void iauAticq(double ri, double di, iauASTROM *astrom, | |||
double *rc, double *dc); | double *rc, double *dc); | |||
void iauAticqn(double ri, double di, iauASTROM *astrom, | void iauAticqn(double ri, double di, iauASTROM *astrom, | |||
int n, iauLDBODY b[], double *rc, double *dc); | int n, iauLDBODY b[], double *rc, double *dc); | |||
int iauAtio13(double ri, double di, | int iauAtio13(double ri, double di, | |||
double utc1, double utc2, double dut1, | double utc1, double utc2, double dut1, | |||
double elong, double phi, double hm, double xp, double yp, | double elong, double phi, double hm, double xp, double yp, | |||
double phpa, double tk, double rh, double wl, | double phpa, double tc, double rh, double wl, | |||
double *aob, double *zob, double *hob, | double *aob, double *zob, double *hob, | |||
double *dob, double *rob); | double *dob, double *rob); | |||
void iauAtioq(double ri, double di, iauASTROM *astrom, | void iauAtioq(double ri, double di, iauASTROM *astrom, | |||
double *aob, double *zob, | double *aob, double *zob, | |||
double *hob, double *dob, double *rob); | double *hob, double *dob, double *rob); | |||
int iauAtoc13(const char *type, double ob1, double ob2, | int iauAtoc13(const char *type, double ob1, double ob2, | |||
double utc1, double utc2, double dut1, | double utc1, double utc2, double dut1, | |||
double elong, double phi, double hm, double xp, double yp, | double elong, double phi, double hm, double xp, double yp, | |||
double phpa, double tk, double rh, double wl, | double phpa, double tc, double rh, double wl, | |||
double *rc, double *dc); | double *rc, double *dc); | |||
int iauAtoi13(const char *type, double ob1, double ob2, | int iauAtoi13(const char *type, double ob1, double ob2, | |||
double utc1, double utc2, double dut1, | double utc1, double utc2, double dut1, | |||
double elong, double phi, double hm, double xp, double yp, | double elong, double phi, double hm, double xp, double yp, | |||
double phpa, double tk, double rh, double wl, | double phpa, double tc, double rh, double wl, | |||
double *ri, double *di); | double *ri, double *di); | |||
void iauAtoiq(const char *type, | void iauAtoiq(const char *type, | |||
double ob1, double ob2, iauASTROM *astrom, | double ob1, double ob2, iauASTROM *astrom, | |||
double *ri, double *di); | double *ri, double *di); | |||
void iauLd(double bm, double p[3], double q[3], double e[3], | void iauLd(double bm, double p[3], double q[3], double e[3], | |||
double em, double dlim, double p1[3]); | double em, double dlim, double p1[3]); | |||
void iauLdn(int n, iauLDBODY b[], double ob[3], double sc[3], | void iauLdn(int n, iauLDBODY b[], double ob[3], double sc[3], | |||
double sn[3]); | double sn[3]); | |||
void iauLdsun(double p[3], double e[3], double em, double p1[3]); | void iauLdsun(double p[3], double e[3], double em, double p1[3]); | |||
void iauPmpx(double rc, double dc, double pr, double pd, | void iauPmpx(double rc, double dc, double pr, double pd, | |||
double px, double rv, double pmt, double vob[3], | double px, double rv, double pmt, double pob[3], | |||
double pco[3]); | double pco[3]); | |||
int iauPmsafe(double ra1, double dec1, double pmr1, double pmd1, | int iauPmsafe(double ra1, double dec1, double pmr1, double pmd1, | |||
double px1, double rv1, | double px1, double rv1, | |||
double ep1a, double ep1b, double ep2a, double ep2b, | double ep1a, double ep1b, double ep2a, double ep2b, | |||
double *ra2, double *dec2, double *pmr2, double *pmd2, | double *ra2, double *dec2, double *pmr2, double *pmd2, | |||
double *px2, double *rv2); | double *px2, double *rv2); | |||
void iauPvtob(double elong, double phi, double hm, | void iauRefco(double phpa, double tc, double rh, double wl, | |||
double xp, double yp, double sp, double theta, | ||||
double pv[2][3]); | ||||
void iauRefco(double phpa, double tk, double rh, double wl, | ||||
double *refa, double *refb); | double *refa, double *refb); | |||
/* Astronomy/Ephemerides */ | /* Astronomy/Ephemerides */ | |||
int iauEpv00(double date1, double date2, | int iauEpv00(double date1, double date2, | |||
double pvh[2][3], double pvb[2][3]); | double pvh[2][3], double pvb[2][3]); | |||
int iauPlan94(double date1, double date2, int np, double pv[2][3]); | int iauPlan94(double date1, double date2, int np, double pv[2][3]); | |||
/* Astronomy/FundamentalArgs */ | /* Astronomy/FundamentalArgs */ | |||
double iauFad03(double t); | double iauFad03(double t); | |||
double iauFae03(double t); | double iauFae03(double t); | |||
skipping to change at line 251 | skipping to change at line 246 | |||
double rn[3][3], double rbpn[3][3]); | double rn[3][3], double rbpn[3][3]); | |||
void iauPn06a(double date1, double date2, | void iauPn06a(double date1, double date2, | |||
double *dpsi, double *deps, double *epsa, | double *dpsi, double *deps, double *epsa, | |||
double rb[3][3], double rp[3][3], double rbp[3][3], | double rb[3][3], double rp[3][3], double rbp[3][3], | |||
double rn[3][3], double rbpn[3][3]); | double rn[3][3], double rbpn[3][3]); | |||
void iauPnm00a(double date1, double date2, double rbpn[3][3]); | void iauPnm00a(double date1, double date2, double rbpn[3][3]); | |||
void iauPnm00b(double date1, double date2, double rbpn[3][3]); | void iauPnm00b(double date1, double date2, double rbpn[3][3]); | |||
void iauPnm06a(double date1, double date2, double rnpb[3][3]); | void iauPnm06a(double date1, double date2, double rnpb[3][3]); | |||
void iauPnm80(double date1, double date2, double rmatpn[3][3]); | void iauPnm80(double date1, double date2, double rmatpn[3][3]); | |||
void iauPom00(double xp, double yp, double sp, double rpom[3][3]); | void iauPom00(double xp, double yp, double sp, double rpom[3][3]); | |||
void iauPr00(double date1, double date2, double *dpsipr, double *depspr); | void iauPr00(double date1, double date2, | |||
void iauPrec76(double ep01, double ep02, double ep11, double ep12, | double *dpsipr, double *depspr); | |||
void iauPrec76(double date01, double date02, | ||||
double date11, double date12, | ||||
double *zeta, double *z, double *theta); | double *zeta, double *z, double *theta); | |||
double iauS00(double date1, double date2, double x, double y); | double iauS00(double date1, double date2, double x, double y); | |||
double iauS00a(double date1, double date2); | double iauS00a(double date1, double date2); | |||
double iauS00b(double date1, double date2); | double iauS00b(double date1, double date2); | |||
double iauS06(double date1, double date2, double x, double y); | double iauS06(double date1, double date2, double x, double y); | |||
double iauS06a(double date1, double date2); | double iauS06a(double date1, double date2); | |||
double iauSp00(double date1, double date2); | double iauSp00(double date1, double date2); | |||
void iauXy06(double date1, double date2, double *x, double *y); | void iauXy06(double date1, double date2, double *x, double *y); | |||
void iauXys00a(double date1, double date2, | void iauXys00a(double date1, double date2, | |||
double *x, double *y, double *s); | double *x, double *y, double *s); | |||
skipping to change at line 448 | skipping to change at line 445 | |||
void iauS2xpv(double s1, double s2, double pv[2][3], double spv[2][3]); | void iauS2xpv(double s1, double s2, double pv[2][3], double spv[2][3]); | |||
void iauSxp(double s, double p[3], double sp[3]); | void iauSxp(double s, double p[3], double sp[3]); | |||
void iauSxpv(double s, double pv[2][3], double spv[2][3]); | void iauSxpv(double s, double pv[2][3], double spv[2][3]); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
#endif | #endif | |||
/*---------------------------------------------------------------------- | /* Copyright2 */ | |||
** | ||||
** Copyright (C) 2013 | ||||
** Standards Of Fundamental Astronomy Board | ||||
** of the International Astronomical Union. | ||||
** | ||||
** ===================== | ||||
** SOFA Software License | ||||
** ===================== | ||||
** | ||||
** NOTICE TO USER: | ||||
** | ||||
** BY USING THIS SOFTWARE YOU ACCEPT THE FOLLOWING SIX TERMS AND | ||||
** CONDITIONS WHICH APPLY TO ITS USE. | ||||
** | ||||
** 1. The Software is owned by the IAU SOFA Board ("SOFA"). | ||||
** | ||||
** 2. Permission is granted to anyone to use the SOFA software for any | ||||
** purpose, including commercial applications, free of charge and | ||||
** without payment of royalties, subject to the conditions and | ||||
** restrictions listed below. | ||||
** | ||||
** 3. You (the user) may copy and distribute SOFA source code to others, | ||||
** and use and adapt its code and algorithms in your own software, | ||||
** on a world-wide, royalty-free basis. That portion of your | ||||
** distribution that does not consist of intact and unchanged copies | ||||
** of SOFA source code files is a "derived work" that must comply | ||||
** with the following requirements: | ||||
** | ||||
** a) Your work shall be marked or carry a statement that it | ||||
** (i) uses routines and computations derived by you from | ||||
** software provided by SOFA under license to you; and | ||||
** (ii) does not itself constitute software provided by and/or | ||||
** endorsed by SOFA. | ||||
** | ||||
** b) The source code of your derived work must contain descriptions | ||||
** of how the derived work is based upon, contains and/or differs | ||||
** from the original SOFA software. | ||||
** | ||||
** c) The names of all routines in your derived work shall not | ||||
** include the prefix "iau" or "sofa" or trivial modifications | ||||
** thereof such as changes of case. | ||||
** | ||||
** d) The origin of the SOFA components of your derived work must | ||||
** not be misrepresented; you must not claim that you wrote the | ||||
** original software, nor file a patent application for SOFA | ||||
** software or algorithms embedded in the SOFA software. | ||||
** | ||||
** e) These requirements must be reproduced intact in any source | ||||
** distribution and shall apply to anyone to whom you have | ||||
** granted a further right to modify the source code of your | ||||
** derived work. | ||||
** | ||||
** Note that, as originally distributed, the SOFA software is | ||||
** intended to be a definitive implementation of the IAU standards, | ||||
** and consequently third-party modifications are discouraged. All | ||||
** variations, no matter how minor, must be explicitly marked as | ||||
** such, as explained above. | ||||
** | ||||
** 4. You shall not cause the SOFA software to be brought into | ||||
** disrepute, either by misuse, or use for inappropriate tasks, or | ||||
** by inappropriate modification. | ||||
** | ||||
** 5. The SOFA software is provided "as is" and SOFA makes no warranty | ||||
** as to its use or performance. SOFA does not and cannot warrant | ||||
** the performance or results which the user may obtain by using the | ||||
** SOFA software. SOFA makes no warranties, express or implied, as | ||||
** to non-infringement of third party rights, merchantability, or | ||||
** fitness for any particular purpose. In no event will SOFA be | ||||
** liable to the user for any consequential, incidental, or special | ||||
** damages, including any lost profits or lost savings, even if a | ||||
** SOFA representative has been advised of such damages, or for any | ||||
** claim by any third party. | ||||
** | ||||
** 6. The provision of any version of the SOFA software under the terms | ||||
** and conditions specified herein does not imply that future | ||||
** versions will also be made available under the same terms and | ||||
** conditions. | ||||
* | ||||
** In any published work or commercial product which uses the SOFA | ||||
** software directly, acknowledgement (see www.iausofa.org) is | ||||
** appreciated. | ||||
** | ||||
** Correspondence concerning SOFA software should be addressed as | ||||
** follows: | ||||
** | ||||
** By email: sofa@ukho.gov.uk | ||||
** By post: IAU SOFA Center | ||||
** HM Nautical Almanac Office | ||||
** UK Hydrographic Office | ||||
** Admiralty Way, Taunton | ||||
** Somerset, TA1 2DN | ||||
** United Kingdom | ||||
** | ||||
**--------------------------------------------------------------------*/ | ||||
End of changes. 12 change blocks. | ||||
17 lines changed or deleted | 14 lines changed or added | |||