Changeset 555 in Sophya for trunk/Poubelle/archTOI.old/galcrosslocator.cc
- Timestamp:
- Nov 9, 1999, 3:04:05 PM (26 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Poubelle/archTOI.old/galcrosslocator.cc
r534 r555 9 9 #define alphaZenith "alphaZenith" 10 10 #define deltaZenith "deltaZenith" 11 #define rotSpeed "rotSpeed "11 #define rotSpeed "rotSpeed0" 12 12 #define rotSpeedSample1 "rotSpeedSample1" 13 13 #define rotSpeedSample2 "rotSpeedSample2" … … 22 22 #define alphaBolo "alphaBolo" 23 23 #define deltaBolo "deltaBolo" 24 #define azimuthSST "azimuthSST" 25 #define elvSST "elvSST" 26 #define alphaSST "alphaSST" 27 #define deltaSST "deltaSST" 24 28 29 // Note : rotSpeed is an estimate, does not take into account balloon drift. 30 // accurate value between two galactic crossings has to be determined afterwards 31 // as a derived TOI. 25 32 26 33 GalCrossLocator::GalCrossLocator() { 27 possibleTOIs.insert(TOI(alphaZenith, TOI::unspec, "", "hours", "galcross0")); 28 possibleTOIs.insert(TOI(deltaZenith, TOI::unspec, "", "degrees", "galcross0")); 29 possibleTOIs.insert(TOI(rotSpeed, TOI::unspec, "", "deg/s", "galcross0")); 30 possibleTOIs.insert(TOI(rotSpeedSample1, TOI::unspec, "", "integer", "galcross0")); 31 possibleTOIs.insert(TOI(rotSpeedSample2, TOI::unspec, "", "integer", "galcross0")); 32 possibleTOIs.insert(TOI(lastCrossSample, TOI::unspec, "", "integer", "galcross0")); 33 possibleTOIs.insert(TOI(lastCrossSample, TOI::unspec, "", "integer", "galcross0")); 34 possibleTOIs.insert(TOI(nextCrossSample, TOI::unspec, "", "integer", "galcross0")); 35 possibleTOIs.insert(TOI(azimuthFPC, TOI::unspec, "", "degrees", "galcross0")); 36 possibleTOIs.insert(TOI(elvFPC, TOI::unspec, "", "degrees", "galcross0")); 37 possibleTOIs.insert(TOI(alphaFPC, TOI::unspec, "", "hours", "galcross0")); 38 possibleTOIs.insert(TOI(deltaFPC, TOI::unspec, "", "degrees", "galcross0")); 39 possibleTOIs.insert(TOI(azimuthBolo, TOI::all, "", "degrees", "galcross0")); 40 possibleTOIs.insert(TOI(elvBolo, TOI::all, "", "degrees", "galcross0")); 41 possibleTOIs.insert(TOI(alphaBolo, TOI::all, "", "hours", "galcross0")); 42 possibleTOIs.insert(TOI(deltaBolo, TOI::all, "", "degrees", "galcross0")); 34 possibleTOIs.insert(TOI(alphaZenith, TOI::unspec, "interp flag", "hours", "")); 35 possibleTOIs.insert(TOI(deltaZenith, TOI::unspec, "interp flag", "degrees", "")); 36 possibleTOIs.insert(TOI(rotSpeed, TOI::unspec, "interp flag", "deg/s", "galcross0")); 37 possibleTOIs.insert(TOI(rotSpeedSample1, TOI::unspec, "interp flag", "integer", "galcross0")); 38 possibleTOIs.insert(TOI(rotSpeedSample2, TOI::unspec, "interp flag", "integer", "galcross0")); 39 possibleTOIs.insert(TOI(lastCrossSample, TOI::unspec, "interp flag", "integer", "galcross0")); 40 possibleTOIs.insert(TOI(nextCrossSample, TOI::unspec, "interp flag", "integer", "galcross0")); 41 possibleTOIs.insert(TOI(azimuthFPC, TOI::unspec, "interp flag", "degrees", "galcross0")); 42 possibleTOIs.insert(TOI(elvFPC, TOI::unspec, "interp flag", "degrees", "galcross0")); 43 possibleTOIs.insert(TOI(alphaFPC, TOI::unspec, "interp flag", "hours", "galcross0")); 44 possibleTOIs.insert(TOI(deltaFPC, TOI::unspec, "interp flag", "degrees", "galcross0")); 45 possibleTOIs.insert(TOI(azimuthBolo, TOI::all, "interp flag", "degrees", "galcross0")); 46 possibleTOIs.insert(TOI(elvBolo, TOI::all, "interp flag", "degrees", "galcross0")); 47 possibleTOIs.insert(TOI(alphaBolo, TOI::all, "interp flag", "hours", "galcross0")); 48 possibleTOIs.insert(TOI(deltaBolo, TOI::all, "interp flag", "degrees", "galcross0")); 49 possibleTOIs.insert(TOI(azimuthSST, TOI::unspec, "interp flag", "degrees", "galcross0")); 50 possibleTOIs.insert(TOI(elvSST, TOI::unspec, "interp flag", "degrees", "galcross0")); 51 possibleTOIs.insert(TOI(alphaSST, TOI::unspec, "interp flag", "hours", "galcross0")); 52 possibleTOIs.insert(TOI(deltaSST, TOI::unspec, "interp flag", "degrees", "galcross0")); 43 53 } 44 54 … … 55 65 double GalCrossLocator::getValue(long sampleNum, TOI const& toi) { 56 66 if (!canGetValue(sampleNum, toi)) return -1; 67 68 if (toi.options.find("flag") != toi.options.end()) { 69 int SN1, SN2; 70 tempLocator.getCrossSamples(sampleNum, SN1, SN2); 71 if (sampleNum == SN1 || sampleNum == SN2) return 1; 72 return 0; 73 } 57 74 58 map<TOI, TOIProducer*> m = neededTOIs[toi];75 map<TOI, TOIProducer*> & m = neededTOIs[toi]; 59 76 double lat, lon, ts; 60 77 61 78 for (map<TOI, TOIProducer*>::iterator i = m.begin(); i != m.end(); i++) { 62 TOI inToi = (*i).first;79 TOI const& inToi = (*i).first; 63 80 TOIProducer* prod = (*i).second; 64 81 if (inToi.name == "latitude") lat = prod->getValue(sampleNum, inToi); … … 83 100 if (toi.name == alphaBolo) return tempLocator.getAlphaBolo(sampleNum, toi.index); 84 101 if (toi.name == deltaBolo) return tempLocator.getDeltaBolo(sampleNum, toi.index); 102 103 if (toi.name == azimuthSST) return tempLocator.getAzimutSST(sampleNum); 104 if (toi.name == elvSST) return tempLocator.getElvSST(sampleNum); 105 if (toi.name == alphaSST) return tempLocator.getAlphaSST(sampleNum); 106 if (toi.name == deltaSST) return tempLocator.getDeltaSST(sampleNum); 85 107 86 108 if (toi.name == lastCrossSample || toi.name == rotSpeedSample1) {
Note:
See TracChangeset
for help on using the changeset viewer.