erfa.h   erfa.h 
#ifndef ERFAHDEF #ifndef ERFAHDEF
#define ERFAHDEF #define ERFAHDEF
/* /*
** - - - - - - - ** - - - - - - -
** e r f a . h ** e r f a . h
** - - - - - - - ** - - - - - - -
** **
** Prototype function declarations for ERFA library. ** Prototype function declarations for ERFA library.
** **
** Copyright (C) 2013-2014, NumFOCUS Foundation. ** Copyright (C) 2013-2015, NumFOCUS Foundation.
** Derived, with permission, from the SOFA library. See notes at end of f ile. ** Derived, with permission, from the SOFA library. See notes at end of f ile.
*/ */
#include "erfam.h" #include "erfam.h"
#include "math.h" #include "math.h"
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
skipping to change at line 132 skipping to change at line 132
double sn[3]); double sn[3]);
void eraLdsun(double p[3], double e[3], double em, double p1[3]); void eraLdsun(double p[3], double e[3], double em, double p1[3]);
void eraPmpx(double rc, double dc, double pr, double pd, void eraPmpx(double rc, double dc, double pr, double pd,
double px, double rv, double pmt, double pob[3], double px, double rv, double pmt, double pob[3],
double pco[3]); double pco[3]);
int eraPmsafe(double ra1, double dec1, double pmr1, double pmd1, int eraPmsafe(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 eraPvtob(double elong, double phi, double height, double xp,
double yp, double sp, double theta, double pv[2][3]);
void eraRefco(double phpa, double tc, double rh, double wl, void eraRefco(double phpa, double tc, double rh, double wl,
double *refa, double *refb); double *refa, double *refb);
/* Astronomy/Ephemerides */ /* Astronomy/Ephemerides */
int eraEpv00(double date1, double date2, int eraEpv00(double date1, double date2,
double pvh[2][3], double pvb[2][3]); double pvh[2][3], double pvb[2][3]);
int eraPlan94(double date1, double date2, int np, double pv[2][3]); int eraPlan94(double date1, double date2, int np, double pv[2][3]);
/* Astronomy/FundamentalArgs */ /* Astronomy/FundamentalArgs */
double eraFad03(double t); double eraFad03(double t);
skipping to change at line 280 skipping to change at line 282
double eraGmst06(double uta, double utb, double tta, double ttb); double eraGmst06(double uta, double utb, double tta, double ttb);
double eraGmst82(double dj1, double dj2); double eraGmst82(double dj1, double dj2);
double eraGst00a(double uta, double utb, double tta, double ttb); double eraGst00a(double uta, double utb, double tta, double ttb);
double eraGst00b(double uta, double utb); double eraGst00b(double uta, double utb);
double eraGst06(double uta, double utb, double tta, double ttb, double eraGst06(double uta, double utb, double tta, double ttb,
double rnpb[3][3]); double rnpb[3][3]);
double eraGst06a(double uta, double utb, double tta, double ttb); double eraGst06a(double uta, double utb, double tta, double ttb);
double eraGst94(double uta, double utb); double eraGst94(double uta, double utb);
/* Astronomy/SpaceMotion */ /* Astronomy/SpaceMotion */
int eraPmsafe(double ra1, double dec1, double pmr1, double pmd1,
double px1, double rv1, double ep1a, double ep1b,
double ep2a, double ep2b, double *ra2, double *dec2,
double *pmr2, double *pmd2, double *px2, double *rv2);
int eraPvstar(double pv[2][3], double *ra, double *dec, int eraPvstar(double pv[2][3], double *ra, double *dec,
double *pmr, double *pmd, double *px, double *rv); double *pmr, double *pmd, double *px, double *rv);
int eraStarpv(double ra, double dec, int eraStarpv(double ra, double dec,
double pmr, double pmd, double px, double rv, double pmr, double pmd, double px, double rv,
double pv[2][3]); double pv[2][3]);
/* Astronomy/StarCatalogs */ /* Astronomy/StarCatalogs */
void eraFk52h(double r5, double d5, void eraFk52h(double r5, double d5,
double dr5, double dd5, double px5, double rv5, double dr5, double dd5, double px5, double rv5,
double *rh, double *dh, double *rh, double *dh,
skipping to change at line 310 skipping to change at line 308
double *r5, double *d5, double *r5, double *d5,
double *dr5, double *dd5, double *px5, double *rv5); double *dr5, double *dd5, double *px5, double *rv5);
void eraHfk5z(double rh, double dh, double date1, double date2, void eraHfk5z(double rh, double dh, double date1, double date2,
double *r5, double *d5, double *dr5, double *dd5); double *r5, double *d5, double *dr5, double *dd5);
int eraStarpm(double ra1, double dec1, int eraStarpm(double ra1, double dec1,
double pmr1, double pmd1, double px1, double rv1, double pmr1, double pmd1, 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 *ra2, double *dec2,
double *pmr2, double *pmd2, double *px2, double *rv2); double *pmr2, double *pmd2, double *px2, double *rv2);
/* Astronomy/GalacticCoordinates */
void eraG2icrs ( double dl, double db, double *dr, double *dd );
void eraIcrs2g ( double dr, double dd, double *dl, double *db );
/* Astronomy/GeodeticGeocentric */ /* Astronomy/GeodeticGeocentric */
int eraEform(int n, double *a, double *f); int eraEform(int n, double *a, double *f);
int eraGc2gd(int n, double xyz[3], int eraGc2gd(int n, double xyz[3],
double *elong, double *phi, double *height); double *elong, double *phi, double *height);
int eraGc2gde(double a, double f, double xyz[3], int eraGc2gde(double a, double f, double xyz[3],
double *elong, double *phi, double *height); double *elong, double *phi, double *height);
int eraGd2gc(int n, double elong, double phi, double height, int eraGd2gc(int n, double elong, double phi, double height,
double xyz[3]); double xyz[3]);
int eraGd2gce(double a, double f, int eraGd2gce(double a, double f,
double elong, double phi, double height, double xyz[3]); double elong, double phi, double height, double xyz[3]);
void eraPvtob(double elong, double phi, double height, double xp,
double yp, double sp, double theta, double pv[2][3]);
/* Astronomy/Timescales */ /* Astronomy/Timescales */
int eraD2dtf(const char *scale, int ndp, double d1, double d2, int eraD2dtf(const char *scale, int ndp, double d1, double d2,
int *iy, int *im, int *id, int ihmsf[4]); int *iy, int *im, int *id, int ihmsf[4]);
int eraDat(int iy, int im, int id, double fd, double *deltat); int eraDat(int iy, int im, int id, double fd, double *deltat);
double eraDtdb(double date1, double date2, double eraDtdb(double date1, double date2,
double ut, double elong, double u, double v); double ut, double elong, double u, double v);
int eraDtf2d(const char *scale, int iy, int im, int id, int eraDtf2d(const char *scale, int iy, int im, int id,
int ihr, int imn, double sec, double *d1, double *d2); int ihr, int imn, double sec, double *d1, double *d2);
int eraTaitt(double tai1, double tai2, double *tt1, double *tt2); int eraTaitt(double tai1, double tai2, double *tt1, double *tt2);
skipping to change at line 441 skipping to change at line 441
void eraS2xpv(double s1, double s2, double pv[2][3], double spv[2][3]); void eraS2xpv(double s1, double s2, double pv[2][3], double spv[2][3]);
void eraSxp(double s, double p[3], double sp[3]); void eraSxp(double s, double p[3], double sp[3]);
void eraSxpv(double s, double pv[2][3], double spv[2][3]); void eraSxpv(double s, double pv[2][3], double spv[2][3]);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif #endif
/* Copyright2 */
/*---------------------------------------------------------------------- /*----------------------------------------------------------------------
** **
** **
** Copyright (C) 2013-2014, NumFOCUS Foundation. ** Copyright (C) 2013-2015, NumFOCUS Foundation.
** All rights reserved. ** All rights reserved.
** **
** This library is derived, with permission, from the International ** This library is derived, with permission, from the International
** Astronomical Union's "Standards of Fundamental Astronomy" library, ** Astronomical Union's "Standards of Fundamental Astronomy" library,
** available from http://www.iausofa.org. ** available from http://www.iausofa.org.
** **
** The ERFA version is intended to retain identical functionality to ** The ERFA version is intended to retain identical functionality to
** the SOFA library, but made distinct through different function and ** the SOFA library, but made distinct through different function and
** file names, as set out in the SOFA license conditions. The SOFA ** file names, as set out in the SOFA license conditions. The SOFA
** original has a role as a reference standard for the IAU and IERS, ** original has a role as a reference standard for the IAU and IERS,
 End of changes. 7 change blocks. 
9 lines changed or deleted 8 lines changed or added


 erfam.h   erfam.h 
#ifndef ERFAMHDEF #ifndef ERFAMHDEF
#define ERFAMHDEF #define ERFAMHDEF
/* /*
** - - - - - - - - ** - - - - - - - -
** e r f a m . h ** e r f a m . h
** - - - - - - - - ** - - - - - - - -
** **
** Macros used by ERFA library. ** Macros used by ERFA library.
** **
** Copyright (C) 2013-2014, NumFOCUS Foundation. ** Copyright (C) 2013-2015, NumFOCUS Foundation.
** Derived, with permission, from the SOFA library. See notes at end of f ile. ** Derived, with permission, from the SOFA library. See notes at end of f ile.
*/ */
/* Star-independent astrometry parameters */ /* Star-independent astrometry parameters */
typedef struct { typedef struct {
double pmt; /* PM time interval (SSB, Julian years) */ double pmt; /* PM time interval (SSB, Julian years) */
double eb[3]; /* SSB to observer (vector, au) */ double eb[3]; /* SSB to observer (vector, au) */
double eh[3]; /* Sun to observer (unit vector) */ double eh[3]; /* Sun to observer (unit vector) */
double em; /* distance from Sun to observer (au) */ double em; /* distance from Sun to observer (au) */
double v[3]; /* barycentric observer velocity (vector, c) */ double v[3]; /* barycentric observer velocity (vector, c) */
skipping to change at line 149 skipping to change at line 149
/* Reference ellipsoids */ /* Reference ellipsoids */
#define ERFA_WGS84 1 #define ERFA_WGS84 1
#define ERFA_GRS80 2 #define ERFA_GRS80 2
#define ERFA_WGS72 3 #define ERFA_WGS72 3
#endif #endif
/*---------------------------------------------------------------------- /*----------------------------------------------------------------------
** **
** **
** Copyright (C) 2013-2014, NumFOCUS Foundation. ** Copyright (C) 2013-2015, NumFOCUS Foundation.
** All rights reserved. ** All rights reserved.
** **
** This library is derived, with permission, from the International ** This library is derived, with permission, from the International
** Astronomical Union's "Standards of Fundamental Astronomy" library, ** Astronomical Union's "Standards of Fundamental Astronomy" library,
** available from http://www.iausofa.org. ** available from http://www.iausofa.org.
** **
** The ERFA version is intended to retain identical functionality to ** The ERFA version is intended to retain identical functionality to
** the SOFA library, but made distinct through different function and ** the SOFA library, but made distinct through different function and
** file names, as set out in the SOFA license conditions. The SOFA ** file names, as set out in the SOFA license conditions. The SOFA
** original has a role as a reference standard for the IAU and IERS, ** original has a role as a reference standard for the IAU and IERS,
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/