stellplanet.c   stellplanet.c
skipping to change at line 14 skipping to change at line 14
#include "l1.h" #include "l1.h"
#include "tass17.h" #include "tass17.h"
#include "gust86.h" #include "gust86.h"
/* Chapter 31 Pg 206-207 Equ 31.1 31.2 , 31.3 using VSOP 87 /* Chapter 31 Pg 206-207 Equ 31.1 31.2 , 31.3 using VSOP 87
* Calculate planets rectangular heliocentric ecliptical coordinates * Calculate planets rectangular heliocentric ecliptical coordinates
* for given julian day. Values are in UA. * for given julian day. Values are in UA.
* params : Julian day, rect coords */ * params : Julian day, rect coords */
void get_pluto_helio_coords(double jd, double * X, double * Y, double * Z); void get_pluto_helio_coords(double jd, double * X, double * Y, double * Z);
void get_pluto_helio_coordsv(double jd,double xyz[3]) void get_pluto_helio_coordsv(double jd,double xyz[3], void* unused)
{get_pluto_helio_coords(jd, &xyz[0], &xyz[1], &xyz[2]);} {get_pluto_helio_coords(jd, &xyz[0], &xyz[1], &xyz[2]);}
/* Return 0 of course... */ /* Return 0 of course... */
void get_sun_helio_coordsv(double jd,double xyz[3]) void get_sun_helio_coordsv(double jd,double xyz[3], void* unused)
{xyz[0]=0.; xyz[1]=0.; xyz[2]=0.;} {xyz[0]=0.; xyz[1]=0.; xyz[2]=0.;}
void get_mercury_helio_coordsv(double jd,double xyz[3]) void get_mercury_helio_coordsv(double jd,double xyz[3], void* unused)
{GetVsop87Coor(jd,VSOP87_MERCURY,xyz);} {GetVsop87Coor(jd,VSOP87_MERCURY,xyz);}
void get_venus_helio_coordsv(double jd,double xyz[3]) void get_venus_helio_coordsv(double jd,double xyz[3], void* unused)
{GetVsop87Coor(jd,VSOP87_VENUS,xyz);} {GetVsop87Coor(jd,VSOP87_VENUS,xyz);}
void get_earth_helio_coordsv(const double jd,double xyz[3]) { void get_earth_helio_coordsv(const double jd,double xyz[3]) {
double moon[3]; double moon[3];
GetVsop87Coor(jd,VSOP87_EMB,xyz); GetVsop87Coor(jd,VSOP87_EMB,xyz);
GetElp82bCoor(jd,moon); GetElp82bCoor(jd,moon);
/* Earth != EMB: /* Earth != EMB:
0.0121505677733761 = mu_m/(1+mu_m), 0.0121505677733761 = mu_m/(1+mu_m),
mu_m = mass(moon)/mass(earth) = 0.01230002 */ mu_m = mass(moon)/mass(earth) = 0.01230002 */
xyz[0] -= 0.0121505677733761 * moon[0]; xyz[0] -= 0.0121505677733761 * moon[0];
xyz[1] -= 0.0121505677733761 * moon[1]; xyz[1] -= 0.0121505677733761 * moon[1];
xyz[2] -= 0.0121505677733761 * moon[2]; xyz[2] -= 0.0121505677733761 * moon[2];
} }
void get_mars_helio_coordsv(double jd,double xyz[3]) void get_mars_helio_coordsv(double jd,double xyz[3], void* unused)
{GetVsop87Coor(jd,VSOP87_MARS,xyz);} {GetVsop87Coor(jd,VSOP87_MARS,xyz);}
void get_jupiter_helio_coordsv(double jd,double xyz[3]) void get_jupiter_helio_coordsv(double jd,double xyz[3], void* unused)
{GetVsop87Coor(jd,VSOP87_JUPITER,xyz);} {GetVsop87Coor(jd,VSOP87_JUPITER,xyz);}
void get_saturn_helio_coordsv(double jd,double xyz[3]) void get_saturn_helio_coordsv(double jd,double xyz[3], void* unused)
{GetVsop87Coor(jd,VSOP87_SATURN,xyz);} {GetVsop87Coor(jd,VSOP87_SATURN,xyz);}
void get_uranus_helio_coordsv(double jd,double xyz[3]) void get_uranus_helio_coordsv(double jd,double xyz[3], void* unused)
{GetVsop87Coor(jd,VSOP87_URANUS,xyz);} {GetVsop87Coor(jd,VSOP87_URANUS,xyz);}
void get_neptune_helio_coordsv(double jd,double xyz[3]) void get_neptune_helio_coordsv(double jd,double xyz[3], void* unused)
{GetVsop87Coor(jd,VSOP87_NEPTUNE,xyz);} {GetVsop87Coor(jd,VSOP87_NEPTUNE,xyz);}
void get_mercury_helio_osculating_coords(double jd0,double jd,double xyz[3] ) void get_mercury_helio_osculating_coords(double jd0,double jd,double xyz[3] )
{GetVsop87OsculatingCoor(jd0,jd,VSOP87_MERCURY,xyz);} {GetVsop87OsculatingCoor(jd0,jd,VSOP87_MERCURY,xyz);}
void get_venus_helio_osculating_coords(double jd0,double jd,double xyz[3]) void get_venus_helio_osculating_coords(double jd0,double jd,double xyz[3])
{GetVsop87OsculatingCoor(jd0,jd,VSOP87_VENUS,xyz);} {GetVsop87OsculatingCoor(jd0,jd,VSOP87_VENUS,xyz);}
void get_earth_helio_osculating_coords(double jd0,double jd,double xyz[3]) void get_earth_helio_osculating_coords(double jd0,double jd,double xyz[3])
{GetVsop87OsculatingCoor(jd0,jd,VSOP87_EMB,xyz);} {GetVsop87OsculatingCoor(jd0,jd,VSOP87_EMB,xyz);}
void get_mars_helio_osculating_coords(double jd0,double jd,double xyz[3]) void get_mars_helio_osculating_coords(double jd0,double jd,double xyz[3])
{GetVsop87OsculatingCoor(jd0,jd,VSOP87_MARS,xyz);} {GetVsop87OsculatingCoor(jd0,jd,VSOP87_MARS,xyz);}
skipping to change at line 73 skipping to change at line 73
void get_neptune_helio_osculating_coords(double jd0,double jd,double xyz[3] ) void get_neptune_helio_osculating_coords(double jd0,double jd,double xyz[3] )
{GetVsop87OsculatingCoor(jd0,jd,VSOP87_NEPTUNE,xyz);} {GetVsop87OsculatingCoor(jd0,jd,VSOP87_NEPTUNE,xyz);}
/* Calculate the rectangular geocentric lunar coordinates to the inertial m ean /* Calculate the rectangular geocentric lunar coordinates to the inertial m ean
* ecliptic and equinox of J2000. * ecliptic and equinox of J2000.
* The geocentric coordinates returned are in units of UA. * The geocentric coordinates returned are in units of UA.
* This function is based upon the Lunar Solution ELP2000-82B by * This function is based upon the Lunar Solution ELP2000-82B by
* Michelle Chapront-Touze and Jean Chapront of the Bureau des Longitudes, * Michelle Chapront-Touze and Jean Chapront of the Bureau des Longitudes,
* Paris. ELP 2000-82B theory * Paris. ELP 2000-82B theory
* param jd Julian day, rect pos */ * param jd Julian day, rect pos */
void get_lunar_parent_coordsv(double jd,double xyz[3]) void get_lunar_parent_coordsv(double jd,double xyz[3], void* unused)
{GetElp82bCoor(jd,xyz);} {GetElp82bCoor(jd,xyz);}
void get_phobos_parent_coordsv(double jd,double xyz[3]) void get_phobos_parent_coordsv(double jd,double xyz[3], void* unused)
void get_deimos_parent_coordsv(double jd,double xyz[3]) void get_deimos_parent_coordsv(double jd,double xyz[3], void* unused)
void get_io_parent_coordsv(double jd,double xyz[3]) void get_io_parent_coordsv(double jd,double xyz[3], void* unused)
{GetL1Coor(jd,L1_IO,xyz);} {GetL1Coor(jd,L1_IO,xyz);}
void get_europa_parent_coordsv(double jd,double xyz[3]) void get_europa_parent_coordsv(double jd,double xyz[3], void* unused)
{GetL1Coor(jd,L1_EUROPA,xyz);} {GetL1Coor(jd,L1_EUROPA,xyz);}
void get_ganymede_parent_coordsv(double jd,double xyz[3]) void get_ganymede_parent_coordsv(double jd,double xyz[3], void* unused)
{GetL1Coor(jd,L1_GANYMEDE,xyz);} {GetL1Coor(jd,L1_GANYMEDE,xyz);}
void get_callisto_parent_coordsv(double jd,double xyz[3]) void get_callisto_parent_coordsv(double jd,double xyz[3], void* unused)
{GetL1Coor(jd,L1_CALLISTO,xyz);} {GetL1Coor(jd,L1_CALLISTO,xyz);}
void get_mimas_parent_coordsv(double jd,double xyz[3]) void get_mimas_parent_coordsv(double jd,double xyz[3], void* unused)
{GetTass17Coor(jd,TASS17_MIMAS,xyz);} {GetTass17Coor(jd,TASS17_MIMAS,xyz);}
void get_tethys_parent_coordsv(double jd,double xyz[3]) void get_tethys_parent_coordsv(double jd,double xyz[3], void* unused)
{GetTass17Coor(jd,TASS17_TETHYS,xyz);} {GetTass17Coor(jd,TASS17_TETHYS,xyz);}
void get_dione_parent_coordsv(double jd,double xyz[3]) void get_dione_parent_coordsv(double jd,double xyz[3], void* unused)
{GetTass17Coor(jd,TASS17_DIONE,xyz);} {GetTass17Coor(jd,TASS17_DIONE,xyz);}
void get_rhea_parent_coordsv(double jd,double xyz[3]) void get_rhea_parent_coordsv(double jd,double xyz[3], void* unused)
{GetTass17Coor(jd,TASS17_RHEA,xyz);} {GetTass17Coor(jd,TASS17_RHEA,xyz);}
void get_titan_parent_coordsv(double jd,double xyz[3]) void get_titan_parent_coordsv(double jd,double xyz[3], void* unused)
{GetTass17Coor(jd,TASS17_TITAN,xyz);} {GetTass17Coor(jd,TASS17_TITAN,xyz);}
void get_hyperion_parent_coordsv(double jd,double xyz[3]) void get_hyperion_parent_coordsv(double jd,double xyz[3], void* unused)
{GetTass17Coor(jd,TASS17_HYPERION,xyz);} {GetTass17Coor(jd,TASS17_HYPERION,xyz);}
void get_iapetus_parent_coordsv(double jd,double xyz[3]) void get_iapetus_parent_coordsv(double jd,double xyz[3], void* unused)
{GetTass17Coor(jd,TASS17_IAPETUS,xyz);} {GetTass17Coor(jd,TASS17_IAPETUS,xyz);}
void get_miranda_parent_coordsv(double jd,double xyz[3]) void get_miranda_parent_coordsv(double jd,double xyz[3], void* unused)
{GetGust86Coor(jd,GUST86_MIRANDA,xyz);} {GetGust86Coor(jd,GUST86_MIRANDA,xyz);}
void get_ariel_parent_coordsv(double jd,double xyz[3]) void get_ariel_parent_coordsv(double jd,double xyz[3], void* unused)
{GetGust86Coor(jd,GUST86_ARIEL,xyz);} {GetGust86Coor(jd,GUST86_ARIEL,xyz);}
void get_umbriel_parent_coordsv(double jd,double xyz[3]) void get_umbriel_parent_coordsv(double jd,double xyz[3], void* unused)
{GetGust86Coor(jd,GUST86_UMBRIEL,xyz);} {GetGust86Coor(jd,GUST86_UMBRIEL,xyz);}
void get_titania_parent_coordsv(double jd,double xyz[3]) void get_titania_parent_coordsv(double jd,double xyz[3], void* unused)
{GetGust86Coor(jd,GUST86_TITANIA,xyz);} {GetGust86Coor(jd,GUST86_TITANIA,xyz);}
void get_oberon_parent_coordsv(double jd,double xyz[3]) void get_oberon_parent_coordsv(double jd,double xyz[3], void* unused)
{GetGust86Coor(jd,GUST86_OBERON,xyz);} {GetGust86Coor(jd,GUST86_OBERON,xyz);}
End of changes. 29 change blocks.
29 lines changed or deleted 29 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/