4 #define DegPerRad 57.29577951308232087680
5 #define RadPerDeg 0.01745329251994329576
10 typedef struct Vector
{
17 typedef struct Position
{
24 typedef struct CTrans
{
25 double UT
; /* Universal Time (in decimal hours) */
26 int year
; /* 2 digit year */
27 int month
; /* 2 digit month of year */
28 int day
; /* 2 digit day of month */
29 int doy
; /* 3 digit Day Of Year */
30 int dow
; /* 1 digit day of week */
31 char dowstr
[80]; /* Day of week String (e.g. "Sun") */
32 double gmst
; /* Greenwich Mean Sidereal Time (in radians) */
33 double eccentricity
; /* Eccentricity of Earth-Sun orbit */
34 double epsilon
; /* Obliquity of the ecliptic (in radians) */
35 double lambda_sun
; /* Ecliptic Long. of Sun (in radians) */
36 double earth_sun_dist
; /* Earth-Sun distance (in units of earth radii) */
37 double RA_sun
; /* Right Ascention of Sun (in degrees) */
38 double DEC_sun
; /* Declination of Sun (in degrees) */
39 Vector Sun
; /* direction of Sun in GEI system (unit vector) */
40 Vector EcPole
; /* direction of Ecliptic Pole in GEI system (unit vector) */
41 double psi
; /* Geodipole tilt angle (in radians) */
42 double Dipole_Gcolat
; /* Geographic colat of centered dipole axis (deg.) */
43 double Dipole_Glon
; /* Geographic long. of centered dipole axis (deg.) */
45 double RA_moon
; /* Right Ascention of Moon (in degrees) */
46 double DEC_moon
; /* Declination of Moon (in degrees) */
47 double MoonPhase
; /* The Phase of the Moon (in days) */
48 double MoonAge
; /* Age of Moon in Days */
49 double EarthMoonDistance
; /* Distance between the Earth and Moon (in earth-radii) */
50 double Glat
; /* Geographic Latitude of Observer */
51 double Glon
; /* Geographic Longitude of Observer */
52 double h_moon
; /* Altitude of Moon (in degrees) */
53 double A_moon
; /* Azimuth of Moon (in degrees) */
54 int Visible
; /* Wether or not moon is above horizon */
57 void CalcEphem(long int, double, CTrans
*);
58 int DayofWeek(int, int, int, char*);
59 int DayofYear(int, int, int);