COSMOS core  1.0.2 (beta)
Comprehensive Open-architecture Solution for Mission Operations Systems
eci2kep_test Class Reference

#include <eci2kep_test.h>

Inheritance diagram for eci2kep_test:
Collaboration diagram for eci2kep_test:

Public Member Functions

 eci2kep_test (TestContainer *parent=0)
 
 ~eci2kep_test ()
 

Private Slots

void on_comboBox_currentIndexChanged (int index)
 
void on_SelectMax_clicked ()
 
void on_SelectMin_clicked ()
 

Private Attributes

Ui::eci2kep_test * ui
 
int test_maxErr
 
int period_maxErr
 
int a_maxErr
 
int e_maxErr
 
int h_maxErr
 
int beta_maxErr
 
int eta_maxErr
 
int i_maxErr
 
int raan_maxErr
 
int ap_maxErr
 
int alat_maxErr
 
int ma_maxErr
 
int ta_maxErr
 
int ea_maxErr
 
int mm_maxErr
 
int fa_maxErr
 
int test_minErr
 
int period_minErr
 
int a_minErr
 
int e_minErr
 
int h_minErr
 
int beta_minErr
 
int eta_minErr
 
int i_minErr
 
int raan_minErr
 
int ap_minErr
 
int alat_minErr
 
int ma_minErr
 
int ta_minErr
 
int ea_minErr
 
int mm_minErr
 
int fa_minErr
 

Constructor & Destructor Documentation

eci2kep_test::eci2kep_test ( TestContainer parent = 0)
explicit
37  :
38  QWidget(parent),
39  ui(new Ui::eci2kep_test)
40 {
41  ui->setupUi(this);
42  FILE *KeplerData;
43  FILE *ECIData;
44  QListWidget *testlist = ui->TestList;
45  if ((TestContainer::openFileLine(&KeplerData, "kepler_data.txt", 0)!=0)&&(TestContainer::openFileLine(&ECIData, "eci_data.txt", 0)!=0)) {
46  int numTests, idx;
49  double aveTestErr = 0.0, maxTestErr = 0.0, minTestErr = 0.0, testErr = 0.0, correctSum = 0.0, aveTestSum = 0.0;
50  fscanf(KeplerData, "%d", &numTests);
51  fscanf(ECIData, "%d", &idx);
52  TestContainer::skipLines(KeplerData, 2);
53  TestContainer::skipLines(ECIData, 2);
54  numTests = (numTests>idx)?idx:numTests;
55  kepstruc kepcorrect, keptest, kepdelta, kepMaxErr, kepMinErr;
56  cartpos eciinput;
57  idx = 0;
58  while (idx<numTests&&(!feof(KeplerData)||!feof(ECIData))) {
59  fscanf(KeplerData, "%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf%lf", &kepcorrect.beta, &kepcorrect.period, &kepcorrect.alat, &kepcorrect.ap, &kepcorrect.ea, &kepcorrect.e, &kepcorrect.h.col[0], &kepcorrect.fa, &kepcorrect.i, &kepcorrect.ma, &kepcorrect.mm, &kepcorrect.raan, &kepcorrect.a, &kepcorrect.ta);
60  kepcorrect.fa -= RADOF(90.);
61  kepcorrect.h.col[0] = kepcorrect.h.col[1] = kepcorrect.h.col[2] = 1.;//for now... (but bear in mind it's not correct
62  fscanf(ECIData, "%lf%lf%lf%lf%lf%lf%lf%lf%lf", &eciinput.s.col[0], &eciinput.s.col[1], &eciinput.s.col[2], &eciinput.v.col[0], &eciinput.v.col[1], &eciinput.v.col[2], &eciinput.a.col[0], &eciinput.a.col[1], &eciinput.a.col[2]);
63  eciinput.utc = 55927;
64  eciinput.a.col[3] = eciinput.s.col[3] = eciinput.v.col[3] = 0.0;
65  eci2kep(&eciinput, &keptest); //make sure to copy the files: unxp2000.405, wmm_2010.cof & egm2008_coef.txt from MOSTexport/resources/static into current build folder.
66  kepdelta = TestContainer::keplerDelta(keptest, kepcorrect);
67  //TEMPORARY UNTILL h vector DATA CAN BE OBTAINED FROM STK:
68  kepdelta.h = rv_zero();
69  //-------
70  testErr = (100*(fabs(kepdelta.period)+fabs(kepdelta.a)+fabs(kepdelta.e)+length_rv(kepdelta.h)+fabs(kepdelta.beta)+fabs(kepdelta.i)+fabs(kepdelta.raan)+fabs(kepdelta.ap)
71  +fabs(kepdelta.alat)+fabs(kepdelta.ma)+fabs(kepdelta.ta)+fabs(kepdelta.ea)+fabs(kepdelta.mm)+fabs(kepdelta.fa)))/(fabs(kepcorrect.period)+fabs(kepcorrect.a)
72  +fabs(kepcorrect.e)+length_rv(kepcorrect.h)+fabs(kepcorrect.beta)+fabs(kepcorrect.i)+fabs(kepcorrect.raan)+fabs(kepcorrect.ap)+fabs(kepcorrect.alat)+fabs(kepcorrect.ma)
73  +fabs(kepcorrect.ta)+fabs(kepcorrect.ea)+fabs(kepcorrect.mm)+fabs(kepcorrect.fa));
74  QListWidgetItem *newTest = new QListWidgetItem(QString("Test %1: total error: %2 %").arg(idx+1).arg(testErr), testlist);
75  int j = 0;
76  newTest->setData(Qt::UserRole+j, QVariant(testErr));
77  j++;
78  eciinput_address = j;
79  TestContainer::listWriteCartpos(newTest, eciinput, &j);
80  keptest_address = j;
81  TestContainer::listWriteKepstruc(newTest, keptest, &j);
83  TestContainer::listWriteKepstruc(newTest, kepcorrect, &j);
84  kepdelta_address = j;
85  TestContainer::listWriteKepstruc(newTest, kepdelta, &j);
86  if (idx==0) {
87  kepMaxErr = kepMinErr = kepdelta;
88  maxTestErr = minTestErr = testErr;
89  } else {
90  if (maxTestErr<testErr) {
91  maxTestErr = testErr;
92  test_maxErr = idx;
93  } else if (minTestErr>testErr) {
94  minTestErr = testErr;
95  test_minErr = idx;
96  }
97  if (fabs(kepMaxErr.period)<fabs(kepdelta.period)) {
98  kepMaxErr.period = kepdelta.period;
99  period_maxErr = idx;
100  } else if (fabs(kepMinErr.period)>fabs(kepdelta.period)) {
101  kepMinErr.period = kepdelta.period;
102  period_minErr = idx;
103  }
104  if (fabs(kepMaxErr.a)<fabs(kepdelta.a)) {
105  kepMaxErr.a = kepdelta.a;
106  a_maxErr = idx;
107  } else if (fabs(kepMinErr.a)>fabs(kepdelta.a)) {
108  kepMinErr.a = kepdelta.a;
109  a_minErr = idx;
110  }
111  if (fabs(kepMaxErr.e)<fabs(kepdelta.e)) {
112  kepMaxErr.e = kepdelta.e;
113  e_maxErr = idx;
114  } else if (fabs(kepMinErr.e)>fabs(kepdelta.e)) {
115  kepMinErr.e = kepdelta.e;
116  e_minErr = idx;
117  }
118  if (length_rv(kepMaxErr.h)<length_rv(kepdelta.h)) {
119  kepMaxErr.h = kepdelta.h;
120  h_maxErr = idx;
121  } else if (length_rv(kepMinErr.h)>length_rv(kepdelta.h)) {
122  kepMinErr.h = kepdelta.h;
123  h_minErr = idx;
124  }
125  if (fabs(kepMaxErr.beta)<fabs(kepdelta.beta)) {
126  kepMaxErr.beta = kepdelta.beta;
127  beta_maxErr = idx;
128  } else if (fabs(kepMinErr.beta)>fabs(kepdelta.beta)) {
129  kepMinErr.beta = kepdelta.beta;
130  beta_minErr = idx;
131  }
132  if (fabs(kepMaxErr.eta)<fabs(kepdelta.eta)) {
133  kepMaxErr.eta = kepdelta.eta;
134  eta_maxErr = idx;
135  } else if (fabs(kepMinErr.eta)>fabs(kepdelta.eta)) {
136  kepMinErr.eta = kepdelta.eta;
137  eta_minErr = idx;
138  }
139  if (fabs(kepMaxErr.i)<fabs(kepdelta.i)) {
140  kepMaxErr.i = kepdelta.i;
141  i_maxErr = idx;
142  } else if (fabs(kepMinErr.i)>fabs(kepdelta.i)) {
143  kepMinErr.i = kepdelta.i;
144  i_minErr = idx;
145  }
146  if (fabs(kepMaxErr.raan)<fabs(kepdelta.raan)) {
147  kepMaxErr.raan = kepdelta.raan;
148  raan_maxErr = idx;
149  } else if (fabs(kepMinErr.raan)>fabs(kepdelta.raan)) {
150  kepMinErr.raan = kepdelta.raan;
151  raan_minErr = idx;
152  }
153  if (fabs(kepMaxErr.alat)<fabs(kepdelta.alat)) {
154  kepMaxErr.alat = kepdelta.alat;
155  alat_maxErr = idx;
156  } else if (fabs(kepMinErr.alat)>fabs(kepdelta.alat)) {
157  kepMinErr.alat = kepdelta.alat;
158  alat_minErr = idx;
159  }
160  if (fabs(kepMaxErr.ma)<fabs(kepdelta.ma)) {
161  kepMaxErr.ma = kepdelta.ma;
162  ma_maxErr = idx;
163  } else if (fabs(kepMinErr.ma)>fabs(kepdelta.ma)) {
164  kepMinErr.ma = kepdelta.ma;
165  ma_minErr = idx;
166  }
167  if (fabs(kepMaxErr.ta)<fabs(kepdelta.ta)) {
168  kepMaxErr.ta = kepdelta.ta;
169  ta_maxErr = idx;
170  } else if (fabs(kepMinErr.ta)>fabs(kepdelta.ta)) {
171  kepMinErr.ta = kepdelta.ta;
172  ta_minErr = idx;
173  }
174  if (fabs(kepMaxErr.ea)<fabs(kepdelta.ea)) {
175  kepMaxErr.ea = kepdelta.ea;
176  ea_maxErr = idx;
177  } else if (fabs(kepMinErr.ea)>fabs(kepdelta.ea)) {
178  kepMinErr.ea = kepdelta.ea;
179  ea_minErr = idx;
180  }
181  if (fabs(kepMaxErr.mm)<fabs(kepdelta.mm)) {
182  kepMaxErr.mm = kepdelta.mm;
183  mm_maxErr = idx;
184  } else if (fabs(kepMinErr.mm)>fabs(kepdelta.mm)) {
185  kepMinErr.mm = kepdelta.mm;
186  mm_minErr = idx;
187  }
188  if (fabs(kepMaxErr.fa)<fabs(kepdelta.fa)) {
189  kepMaxErr.fa = kepdelta.fa;
190  fa_maxErr = idx;
191  } else if (fabs(kepMinErr.fa)>fabs(kepdelta.fa)) {
192  kepMinErr.fa = kepdelta.fa;
193  fa_minErr = idx;
194  }
195  }
196  aveTestErr += testErr;
197  idx++;
198  }
199  fclose(KeplerData);
200  fclose(ECIData);
201  aveTestErr = aveTestErr/idx;
202  parent->setError(minTestErr, maxTestErr, aveTestErr);
203  ui->TestCount->setText(QString("%1 Tests:").arg(numTests));
204  ui->comboBox->setCurrentIndex(overall);
205  ui->testsOverview->setText(QString("Max error in #%1 Min error in #%2").arg(test_maxErr+1).arg(test_minErr+1));
206  ui->TestList->item(test_maxErr)->setBackground(Qt::red);
207  ui->TestList->item(test_minErr)->setBackground(Qt::darkGreen);
208  }
209 }
int ea_maxErr
Definition: eci2kep_test.h:59
double ta
True Anomoly.
Definition: convertdef.h:557
int32_t eci2kep(cartpos &eci, kepstruc &kep)
Definition: convertlib.cpp:2934
double mm
Mean Motion.
Definition: convertdef.h:561
int alat_minErr
Definition: eci2kep_test.h:60
int eciinput_address
Definition: eci2kep_test.cpp:34
rvector a
Acceleration.
Definition: convertdef.h:167
double utc
UTC of Position.
Definition: convertdef.h:161
double e
Eccentricity.
Definition: convertdef.h:540
int e_minErr
Definition: eci2kep_test.h:60
Cartesian full position structure.
Definition: convertdef.h:158
int ta_minErr
Definition: eci2kep_test.h:60
double length_rv(rvector v)
Length of row vector.
Definition: vector.cpp:748
double ma
Mean Anomoly.
Definition: convertdef.h:555
int a_minErr
Definition: eci2kep_test.h:60
int keptest_address
Definition: eci2kep_test.cpp:34
int kepdelta_address
Definition: eci2kep_test.cpp:34
int test_maxErr
Definition: eci2kep_test.h:59
int ta_maxErr
Definition: eci2kep_test.h:59
static int openFileLine(FILE **fp, const char filename[], int startLine)
Definition: testcontainer.cpp:155
rvector h
Angular Momentum vector.
Definition: convertdef.h:542
double eta
Definition: convertdef.h:545
int period_maxErr
Definition: eci2kep_test.h:59
int raan_minErr
Definition: eci2kep_test.h:60
int ma_maxErr
Definition: eci2kep_test.h:59
rvector s
Location.
Definition: convertdef.h:163
double period
Orbital Period in seconds.
Definition: convertdef.h:536
int a_maxErr
Definition: eci2kep_test.h:59
double fa
Definition: convertdef.h:562
int test_minErr
Definition: eci2kep_test.h:60
void setError(double min, double max, double avg)
Definition: testcontainer.cpp:114
int kepcorrect_address
Definition: eci2kep_test.cpp:34
int ap_minErr
Definition: eci2kep_test.h:60
int fa_maxErr
Definition: eci2kep_test.h:59
int ap_maxErr
Definition: eci2kep_test.h:59
static void listWriteKepstruc(QListWidgetItem *listItem, kepstruc kep, int *roleIndex)
Definition: testcontainer.cpp:182
static void listWriteCartpos(QListWidgetItem *listItem, cartpos pos, int *roleIndex)
Definition: testcontainer.cpp:173
int ea_minErr
Definition: eci2kep_test.h:60
int i_minErr
Definition: eci2kep_test.h:60
double raan
Right Ascension of the Ascending Node in radians.
Definition: convertdef.h:549
rvector rv_zero()
Zero row order vector.
Definition: vector.cpp:107
Classical elements structure.
Definition: convertdef.h:529
int h_minErr
Definition: eci2kep_test.h:60
int eta_minErr
Definition: eci2kep_test.h:60
static kepstruc keplerDelta(kepstruc kep1, kepstruc kep2)
Definition: testcontainer.cpp:242
int period_minErr
Definition: eci2kep_test.h:60
static void skipLines(FILE *fp, int lines)
Definition: testcontainer.cpp:144
int i_maxErr
Definition: eci2kep_test.h:59
double ap
Argument of Perigee.
Definition: convertdef.h:551
Definition: eci2kep_test.cpp:33
double col[3]
Definition: vector.h:55
double i
Orbital Inclination in radians.
Definition: convertdef.h:547
int ma_minErr
Definition: eci2kep_test.h:60
Ui::eci2kep_test * ui
Definition: eci2kep_test.h:57
int e_maxErr
Definition: eci2kep_test.h:59
int beta_minErr
Definition: eci2kep_test.h:60
double beta
Solar Beta Angle in radians.
Definition: convertdef.h:544
double a
Semi-Major Axis in meters.
Definition: convertdef.h:538
int mm_maxErr
Definition: eci2kep_test.h:59
int fa_minErr
Definition: eci2kep_test.h:60
int raan_maxErr
Definition: eci2kep_test.h:59
int eta_maxErr
Definition: eci2kep_test.h:59
int alat_maxErr
Definition: eci2kep_test.h:59
double ea
Eccentric Anomoly.
Definition: convertdef.h:559
int beta_maxErr
Definition: eci2kep_test.h:59
int h_maxErr
Definition: eci2kep_test.h:59
rvector v
Velocity.
Definition: convertdef.h:165
int mm_minErr
Definition: eci2kep_test.h:60
double alat
Argument of Latitude.
Definition: convertdef.h:553
#define RADOF(deg)
Radians of a Degree value.
Definition: math/constants.h:29
eci2kep_test::~eci2kep_test ( )
212 {
213  delete ui;
214 }
Ui::eci2kep_test * ui
Definition: eci2kep_test.h:57

Member Function Documentation

void eci2kep_test::on_comboBox_currentIndexChanged ( int  index)
privateslot
217 {
218  int maxErr, minErr, idx;
219  switch (index) {
220  case (overall):
221  maxErr = test_maxErr;
222  minErr = test_minErr;
223  for (idx = 0; idx<ui->TestList->count(); idx++) {
224  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
225  ui->TestList->item(idx)->setText(QString("Test %1: total error: %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole).toDouble()));
226  }
227  break;
228  case (period):
229  maxErr = period_maxErr;
230  minErr = period_minErr;
231  for (idx = 0; idx<ui->TestList->count(); idx++) {
232  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
233  ui->TestList->item(idx)->setText(QString("Test %1: period (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+1).toDouble()));
234  }
235  break;
236  case (a):
237  maxErr = a_maxErr;
238  minErr = a_minErr;
239  for (idx = 0; idx<ui->TestList->count(); idx++) {
240  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
241  ui->TestList->item(idx)->setText(QString("Test %1: a (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+2).toDouble()));
242  }
243  break;
244  case (e):
245  maxErr = e_maxErr;
246  minErr = e_minErr;
247  for (idx = 0; idx<ui->TestList->count(); idx++) {
248  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
249  ui->TestList->item(idx)->setText(QString("Test %1: e (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+3).toDouble()));
250  }
251  break;
252  case (h):
253  maxErr = h_maxErr;
254  minErr = h_minErr;
255  for (idx = 0; idx<ui->TestList->count(); idx++) {
256  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
257  ui->TestList->item(idx)->setText(QString("Test %1: h (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+4).toDouble()));
258  }
259  break;
260  case (beta):
261  maxErr = beta_maxErr;
262  minErr = beta_minErr;
263  for (idx = 0; idx<ui->TestList->count(); idx++) {
264  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
265  ui->TestList->item(idx)->setText(QString("Test %1: beta (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+7).toDouble()));
266  }
267  break;
268  case (eta):
269  maxErr = eta_maxErr;
270  minErr = eta_minErr;
271  for (idx = 0; idx<ui->TestList->count(); idx++) {
272  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
273  ui->TestList->item(idx)->setText(QString("Test %1: eta (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+8).toDouble()));
274  }
275  break;
276  case (i):
277  maxErr = i_maxErr;
278  minErr = i_minErr;
279  for (idx = 0; idx<ui->TestList->count(); idx++) {
280  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
281  ui->TestList->item(idx)->setText(QString("Test %1: i (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+9).toDouble()));
282  }
283  break;
284  case (raan):
285  maxErr = raan_maxErr;
286  minErr = raan_minErr;
287  for (idx = 0; idx<ui->TestList->count(); idx++) {
288  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
289  ui->TestList->item(idx)->setText(QString("Test %1: raan (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+10).toDouble()));
290  }
291  break;
292  case (ap):
293  maxErr = ap_maxErr;
294  minErr = ap_minErr;
295  for (idx = 0; idx<ui->TestList->count(); idx++) {
296  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
297  ui->TestList->item(idx)->setText(QString("Test %1: ap (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+11).toDouble()));
298  }
299  break;
300  case (alat):
301  maxErr = alat_maxErr;
302  minErr = alat_minErr;
303  for (idx = 0; idx<ui->TestList->count(); idx++) {
304  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
305  ui->TestList->item(idx)->setText(QString("Test %1: alat (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+12).toDouble()));
306  }
307  break;
308  case (ma):
309  maxErr = ma_maxErr;
310  minErr = ma_minErr;
311  for (idx = 0; idx<ui->TestList->count(); idx++) {
312  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
313  ui->TestList->item(idx)->setText(QString("Test %1: ma (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+13).toDouble()));
314  }
315  break;
316  case (ta):
317  maxErr = ta_maxErr;
318  minErr = ta_minErr;
319  for (idx = 0; idx<ui->TestList->count(); idx++) {
320  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
321  ui->TestList->item(idx)->setText(QString("Test %1: ta (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+14).toDouble()));
322  }
323  break;
324  case (ea):
325  maxErr = ea_maxErr;
326  minErr = ea_minErr;
327  for (idx = 0; idx<ui->TestList->count(); idx++) {
328  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
329  ui->TestList->item(idx)->setText(QString("Test %1: ea (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+15).toDouble()));
330  }
331  break;
332  case (mm):
333  maxErr = mm_maxErr;
334  minErr = mm_minErr;
335  for (idx = 0; idx<ui->TestList->count(); idx++) {
336  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
337  ui->TestList->item(idx)->setText(QString("Test %1: mm (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+16).toDouble()));
338  }
339  break;
340 
341  case (fa):
342  maxErr = fa_maxErr;
343  minErr = fa_minErr;
344  for (idx = 0; idx<ui->TestList->count(); idx++) {
345  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
346  ui->TestList->item(idx)->setText(QString("Test %1: fa (error): %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+17).toDouble()));
347  }
348  break;
349  default:
350  maxErr = test_maxErr;
351  minErr = test_minErr;
352  for (idx = 0; idx<ui->TestList->count(); idx++) {
353  ui->TestList->item(idx)->setBackground(Qt::NoBrush);
354  ui->TestList->item(idx)->setText(QString("Test %1: total error: %2 %").arg(idx+1).arg(ui->TestList->item(idx)->data(Qt::UserRole+kepdelta_address+18).toDouble()));
355  }
356  break;
357  }
358  ui->testsOverview->setText(QString("Max error in #%1 Min error in #%2").arg(maxErr+1).arg(minErr+1));
359  ui->TestList->item(maxErr)->setBackground(Qt::red);
360  ui->TestList->item(minErr)->setBackground(Qt::darkGreen);
361 }
int ea_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int alat_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
int e_minErr
Definition: eci2kep_test.h:60
int ta_minErr
Definition: eci2kep_test.h:60
int a_minErr
Definition: eci2kep_test.h:60
int kepdelta_address
Definition: eci2kep_test.cpp:34
int test_maxErr
Definition: eci2kep_test.h:59
int ta_maxErr
Definition: eci2kep_test.h:59
int period_maxErr
Definition: eci2kep_test.h:59
int raan_minErr
Definition: eci2kep_test.h:60
int ma_maxErr
Definition: eci2kep_test.h:59
int a_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int test_minErr
Definition: eci2kep_test.h:60
int ap_minErr
Definition: eci2kep_test.h:60
int fa_maxErr
Definition: eci2kep_test.h:59
int ap_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int ea_minErr
Definition: eci2kep_test.h:60
int i_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int h_minErr
Definition: eci2kep_test.h:60
int eta_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int period_minErr
Definition: eci2kep_test.h:60
int i_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
int ma_minErr
Definition: eci2kep_test.h:60
Ui::eci2kep_test * ui
Definition: eci2kep_test.h:57
int e_maxErr
Definition: eci2kep_test.h:59
int beta_minErr
Definition: eci2kep_test.h:60
int mm_maxErr
Definition: eci2kep_test.h:59
int fa_minErr
Definition: eci2kep_test.h:60
int raan_maxErr
Definition: eci2kep_test.h:59
int eta_maxErr
Definition: eci2kep_test.h:59
int alat_maxErr
Definition: eci2kep_test.h:59
int beta_maxErr
Definition: eci2kep_test.h:59
int h_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
int mm_minErr
Definition: eci2kep_test.h:60
void eci2kep_test::on_SelectMax_clicked ( )
privateslot
364 {
365  int idx;
366  switch (ui->comboBox->currentIndex()) {
367  case (overall): idx = test_maxErr; break;
368  case (period): idx = period_maxErr; break;
369  case (a): idx = a_maxErr; break;
370  case (e): idx = e_maxErr; break;
371  case (h): idx = h_maxErr; break;
372  case (beta): idx = beta_maxErr; break;
373  case (eta): idx = eta_maxErr; break;
374  case (i): idx = i_maxErr; break;
375  case (raan): idx = raan_maxErr; break;
376  case (ap): idx = ap_maxErr; break;
377  case (alat): idx = alat_maxErr; break;
378  case (ma): idx = ma_maxErr; break;
379  case (ta): idx = ta_maxErr; break;
380  case (ea): idx = ea_maxErr; break;
381  case (mm): idx = mm_maxErr; break;
382  case (fa): idx = fa_maxErr; break;
383  default: idx = test_maxErr; break;
384  }
385  ui->TestList->setCurrentRow(idx);
386 }
int ea_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int test_maxErr
Definition: eci2kep_test.h:59
int ta_maxErr
Definition: eci2kep_test.h:59
int period_maxErr
Definition: eci2kep_test.h:59
int ma_maxErr
Definition: eci2kep_test.h:59
int a_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int fa_maxErr
Definition: eci2kep_test.h:59
int ap_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int i_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
Ui::eci2kep_test * ui
Definition: eci2kep_test.h:57
int e_maxErr
Definition: eci2kep_test.h:59
int mm_maxErr
Definition: eci2kep_test.h:59
int raan_maxErr
Definition: eci2kep_test.h:59
int eta_maxErr
Definition: eci2kep_test.h:59
int alat_maxErr
Definition: eci2kep_test.h:59
int beta_maxErr
Definition: eci2kep_test.h:59
int h_maxErr
Definition: eci2kep_test.h:59
Definition: eci2kep_test.cpp:33
void eci2kep_test::on_SelectMin_clicked ( )
privateslot
389 {
390  int idx;
391  switch (ui->comboBox->currentIndex()) {
392  case (overall): idx = test_minErr; break;
393  case (period): idx = period_minErr; break;
394  case (a): idx = a_minErr; break;
395  case (e): idx = e_minErr; break;
396  case (h): idx = h_minErr; break;
397  case (beta): idx = beta_minErr; break;
398  case (eta): idx = eta_minErr; break;
399  case (i): idx = i_minErr; break;
400  case (raan): idx = raan_minErr; break;
401  case (ap): idx = ap_minErr; break;
402  case (alat): idx = alat_minErr; break;
403  case (ma): idx = ma_minErr; break;
404  case (ta): idx = ta_minErr; break;
405  case (ea): idx = ea_minErr; break;
406  case (mm): idx = mm_minErr; break;
407  case (fa): idx = fa_minErr; break;
408  default: idx = test_minErr; break;
409  }
410  ui->TestList->setCurrentRow(idx);
411 }
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int alat_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
int e_minErr
Definition: eci2kep_test.h:60
int ta_minErr
Definition: eci2kep_test.h:60
int a_minErr
Definition: eci2kep_test.h:60
int raan_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int test_minErr
Definition: eci2kep_test.h:60
int ap_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int ea_minErr
Definition: eci2kep_test.h:60
int i_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int h_minErr
Definition: eci2kep_test.h:60
int eta_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
Definition: eci2kep_test.cpp:33
int period_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
int ma_minErr
Definition: eci2kep_test.h:60
Ui::eci2kep_test * ui
Definition: eci2kep_test.h:57
int beta_minErr
Definition: eci2kep_test.h:60
int fa_minErr
Definition: eci2kep_test.h:60
Definition: eci2kep_test.cpp:33
int mm_minErr
Definition: eci2kep_test.h:60

Member Data Documentation

Ui::eci2kep_test* eci2kep_test::ui
private
int eci2kep_test::test_maxErr
private
int eci2kep_test::period_maxErr
private
int eci2kep_test::a_maxErr
private
int eci2kep_test::e_maxErr
private
int eci2kep_test::h_maxErr
private
int eci2kep_test::beta_maxErr
private
int eci2kep_test::eta_maxErr
private
int eci2kep_test::i_maxErr
private
int eci2kep_test::raan_maxErr
private
int eci2kep_test::ap_maxErr
private
int eci2kep_test::alat_maxErr
private
int eci2kep_test::ma_maxErr
private
int eci2kep_test::ta_maxErr
private
int eci2kep_test::ea_maxErr
private
int eci2kep_test::mm_maxErr
private
int eci2kep_test::fa_maxErr
private
int eci2kep_test::test_minErr
private
int eci2kep_test::period_minErr
private
int eci2kep_test::a_minErr
private
int eci2kep_test::e_minErr
private
int eci2kep_test::h_minErr
private
int eci2kep_test::beta_minErr
private
int eci2kep_test::eta_minErr
private
int eci2kep_test::i_minErr
private
int eci2kep_test::raan_minErr
private
int eci2kep_test::ap_minErr
private
int eci2kep_test::alat_minErr
private
int eci2kep_test::ma_minErr
private
int eci2kep_test::ta_minErr
private
int eci2kep_test::ea_minErr
private
int eci2kep_test::mm_minErr
private
int eci2kep_test::fa_minErr
private

The documentation for this class was generated from the following files: