-
Notifications
You must be signed in to change notification settings - Fork 0
/
plan13.h
192 lines (179 loc) · 3.29 KB
/
plan13.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
#ifndef PLAN13
#define PLAN13
class Plan13 {
public:
void setLocation (double lon, double lat, int height);
void setTime (int yearIn, int monthIn, int mDayIn,
int hourIn, int minIn, float secIn);
void setElements (double YE_in, double TE_in, double IN_in,
double RA_in, double EC_in, double WP_in,
double MA_in, double MM_in, double M2_in,
double RV_in, double ALON_in );
void calculate ();
void printdata (void) const;
double getAzimuth() const;
double getElevation() const;
double getLongitude() const;
double getLatitude() const;
private:
inline double rad (double deg);
inline double deg (double rad);
double FNatn (double y, double x);
double FNday (int year, int month, int day);
void initSat (void);
void satvec (void);
void rangevec (void);
double observer_lon;
double observer_lat;
int observer_height;
const static double YM = 365.25; // Days in a year
double EL; // Elevation
double TN;
double E;
double N;
double AZ;
double SLON;
double SLAT;
double RR;
double CL;
double CS;
double SL;
double CO;
double SO;
double RE;
double FL;
double RP;
double XX;
double ZZ;
double D;
double R;
double Rx;
double Ry;
double Rz;
double Ex;
double Ey;
double Ez;
double Ny;
double Nx;
double Nz;
double Ox;
double Oy;
double Oz;
double U;
double Ux;
double Uy;
double Uz;
const static double YT = 365.2421970;
double WW;
double WE;
double W0;
double VOx;
double VOy;
double VOz;
double DE;
double GM;
double J2;
double N0;
double A0;
double b0;
double SI;
double CI;
double PC;
double QD;
double WD;
double DC;
double YG;
double G0;
double MAS0;
double MASD;
double INS;
double CNS;
double SNS;
double EQC1;
double EQC2;
double TEG;
double GHAE;
double MRSE;
double MASE;
double ax;
double ay;
double az;
int OLDRN;
double T;
double DT;
double KD;
double KDP;
double M;
int DR;
long RN;
double EA;
double C;
double S;
double DNOM;
double A;
double B;
double RS;
double Sx;
double Sy;
//double Sz;
double Vx;
double Vy;
double Vz;
double AP;
double CWw;
double SW;
double RAAN;
double CQ;
double SQ;
double CXx;
double CXy;
double CXz;
double CYx;
double CYy;
double CYz;
double CZx;
double CZy;
double CZz;
double SATx;
double SATy;
double SATz;
double ANTx;
double ANTy;
double ANTz;
double VELx;
double VELy;
double VELz;
double Ax;
double Ay;
double Az;
double Sz;
//double Vz;
double GHAA;
double DS;
double DF;
// keplerians
char SAT[20];
long SATNO;
double YE;
double TE;
double IN;
double RA;
double EC;
double WP;
double MA;
double MM;
double M2;
long RV;
double ALON;
double ALAT;
double rxOut;
double txOut;
// location
char LOC[20];
double LA;
double LO;
double HT;
double HR; // Hours
double DN;
};
#endif