Changeset 30348
- Timestamp:
- Jan 24, 2011, 1:36:36 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/ipp-20101205/Ohana/src/addstar/src/resort_catalog.c
r29938 r30348 39 39 tmp_ave = AVE[A]; AVE[A] = AVE[B]; AVE[B] = tmp_ave; \ 40 40 } 41 # define COMPARE(A,B)( MEAS[A] < MEAS[B])41 # define COMPARE(A,B)(AVE[A] < AVE[B]) 42 42 OHANA_SORT (N, COMPARE, SWAPFUNC); 43 43 # undef SWAPFUNC … … 96 96 } 97 97 98 // check that averageSeq is now in order 99 // for (i = 1; i < Nmeasure; i++) { 100 // if (averageSeq[i] < averageSeq[i-1]) { 101 // fprintf (stderr, "%d ", (int) i); 102 // } 103 // } 104 // fprintf (stderr, "\n"); 105 98 106 SortAveMeasMatch(measureSeq, averageSeq, Nmeasure); 99 107 // MARKTIME("sort : %f sec\n", dtime); 108 109 // check that averageSeq is now in order 110 // for (i = 1; i < Nmeasure; i++) { 111 // if (averageSeq[i] < averageSeq[i-1]) { 112 // fprintf (stderr, "%d ", (int) i); 113 // } 114 // } 115 // fprintf (stderr, "\n"); 100 116 101 117 // copy the measurements in the sorted order … … 116 132 for (i = 0; i < Nmeasure; i++) { 117 133 if (averageSeq[i] != currentAve) { 134 // we have hit the next entry in the list 118 135 average[currentAve].Nmeasure = N; 119 136 N = 0; … … 123 140 N++; 124 141 } 125 N++;142 // N++; 126 143 average[currentAve].Nmeasure = N; 127 144 // MARKTIME("update Nmeasure : %f sec\n", dtime); 128 145 146 int NmeasureTotal = 0; 147 int measureOffsetOK = TRUE; 148 for (i = 0; i < catalog[0].Naverage; i++) { 149 NmeasureTotal += catalog[0].average[i].Nmeasure; 150 if (VERBOSE && !(NmeasureTotal <= catalog[0].Nmeasure)) { 151 fprintf (stderr, "too few measurements: %d %d %d\n", (int) i, NmeasureTotal, (int) catalog[0].Nmeasure); 152 } 153 measureOffsetOK &= (catalog[0].average[i].measureOffset < catalog[0].Nmeasure); 154 if (VERBOSE && !(catalog[0].average[i].measureOffset < catalog[0].Nmeasure)) { 155 fprintf (stderr, "offset too large: %d %d %d\n", (int) i, catalog[0].average[i].Nmeasure, (int) catalog[0].Nmeasure); 156 } 157 measureOffsetOK &= (catalog[0].average[i].measureOffset + catalog[0].average[i].Nmeasure <= catalog[0].Nmeasure); 158 if (VERBOSE && !(catalog[0].average[i].measureOffset + catalog[0].average[i].Nmeasure <= catalog[0].Nmeasure)) { 159 fprintf (stderr, "orrset + Nmeasure too large: %d + %d > %d %d\n", (int) i, catalog[0].average[i].measureOffset, catalog[0].average[i].Nmeasure, (int) catalog[0].Nmeasure); 160 } 161 } 162 163 if (!measureOffsetOK) { 164 fprintf (stderr, "ERROR: catalog %s has an invalid measureOffset\n", catalog[0].filename); 165 } 166 167 if (NmeasureTotal != catalog[0].Nmeasure) { 168 fprintf (stderr, "ERROR: catalog %s has an invalid Nmeasure\n", catalog[0].filename); 169 } 170 129 171 // MARKTIME(" match time %9.4f sec for %7lld measures, %6lld average\n", dtime, (long long) Nmeasure, (long long) Naverage); 172 173 catalog[0].sorted = TRUE; 130 174 131 175 FREE (measureSeq);
Note:
See TracChangeset
for help on using the changeset viewer.
