Changeset 7205
- Timestamp:
- 07/21/05 17:45:25 (19 years ago)
- Location:
- trunk/MagicSoft/Mars
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/MagicSoft/Mars/Changelog
r7204 r7205 69 69 * ganymed_onoff.rc, ganymed_wobble.rc: 70 70 - added 71 72 * ganymed.rc: 73 - updated 71 74 72 75 -
trunk/MagicSoft/Mars/NEWS
r7204 r7205 93 93 photo-electrons for the spline extractor by 1-2% (correctly). 94 94 95 - callisto: The intercalibration is now done using a full f-factor 96 method instead of a simple update. This makes things slower but 97 more reliable in terms of gain-fluctuations and sudden VCSEL gain 98 changes. 99 100 - callisto: MPedestalY3 now uses the same extraction range as the data 101 as calculated by MPedestalY2 102 103 - callisto: A check of the fraction of allowed unsuitable (10%) and 104 unreliable (30%) pixels has been addded when the conversion is 105 calculated from interleaved events 106 95 107 - star: fixed a bug which caused MEffectiveOnTime containers not to 96 108 be written. In the worst case they were skipped almost all, in the … … 103 115 - star: corrects now (correctly?) for the misspointing in May/April 05 104 116 117 - star: Output now contains MReportStarguider 118 105 119 - ganymed: Two new default templates for ganymed.rc are avilable: 106 120 ganymed_onoff.rc and ganymed_wobble.rc 107 121 108 - ganymed: The first version of MFMagicCuts ha vebeen released122 - ganymed: The first version of MFMagicCuts has been released 109 123 110 124 - ganymed: the Conc1 plot was incorrectly scaled in MHVsSize … … 116 130 - ganymed: optimized palettes for MHDisp 117 131 118 - ganymed: MPedestalY3 now uses the same extraction range as the data119 as calculated by MPedestalY2120 121 - ganymed: A check of the fraction of allowed unsuitable (10%) and122 unreliable (30%) pixels has been addded when the conversion is123 calculated from interleaved events124 125 132 - ganymed: Fixed an important bug when using ThetaSq as fit function: 126 133 The result for the sigma of the gauss(sqrt(x)) fit was a factor 127 134 sqrt(2) to large 128 135 129 - ganymed: The intercalibration is now done using a full f-factor130 method instead of a simple update. This makes things slower but131 more reliable in terms of gain-fluctuations and sudden VCSEL gain132 changes.133 134 136 - ganymed: The false source plot (MHDisp) is now based on Disp 135 and a background model determi ed in the first loop is137 and a background model determined in the first loop is 136 138 subtracted 139 140 - ganymed: MFMagicCuts are now available in the cvs. The correct 141 solution for the disp ambiguity problem is now calculated using 142 the third moment. The third moment cut therefor is skipped. 143 144 - ganymed: Output now contains "Disp [MParameterD]" which sign is 145 already determined by the third moment along the major axis and 146 so its actual sign is aligned along the major axis of the shower. 137 147 138 148 - sponde: the zenith angle distribution is now weighted instead of -
trunk/MagicSoft/Mars/ganymed.rc
r6988 r7205 32 32 # Use this to setup binnings. For more details see: MBinning::ReadEnv 33 33 # ------------------------------------------------------------------------- 34 #BinningAlpha.Raw: 9 0 90 35 #BinningFalseSource.Raw: 30 -1.2 1.2 36 #BinningEnergyEst.Raw: 25 10 1000000 log 37 #BinningTheta.Raw: 50 0 60 cos 34 BinningAlpha.Raw: 36 0 90 35 BinningFalseSource.Raw: 91 -1.5 1.5 36 #BinningTheta.Raw: 50 0 60 cos 37 BinningWidth.Raw: 50 0 1 38 BinningLength.Raw: 25 0 1 39 BinningDist.Raw: 25 0 2 40 BinningMaxDist.Raw: 25 0 2 38 41 39 42 # ------------------------------------------------------------------------- … … 47 50 #MAlphaFitter.ScaleMax: 80 48 51 #MAlphaFitter.PolynomOrder: 2 49 #MAlphaFitter.ScaleMode: kSignificance52 #MAlphaFitter.ScaleMode: None 50 53 51 54 # ------------------------------------------------------------------------- … … 55 58 #MJCut.NameHist: MHAlpha 56 59 60 # ------------------------------------------------------------------------- 61 # To get a meaningfull false source plot in wobble mode use magic cuts 62 # and the following two lines. Remark: You'll get worse results 63 # for you significance 64 # ------------------------------------------------------------------------- 65 MJCut.NameHistFS: MHDisp 66 #Cut1.HadronnessCut: Area 67 68 MHDisp.Smearing: 0.03 69 #MHDisp.Wobble: Yes 57 70 58 71 # ------------------------------------------------------------------------- … … 69 82 Cut3.Inverted: Yes 70 83 71 #Cut0.Condition: MCameraCooling.fTempCenter < 55 84 # Get rid of triangular events... 85 Cut0.Condition: ({0} || {1}) && {2} && {3} && {4} && {5} 86 Cut0.0: MImagePar.fNumSatPixelsHG < 1 87 Cut0.1: MHillas.GetArea*(MGeomCam.fConvMm2Deg^2) > (0.0014*MImagePar.fNumSatPixelsHG) + 0.02 88 Cut0.2: MNewImagePar.fNumUsedPixels>5 89 Cut0.3: MNewImagePar.fLeakage1 < 0.3 90 Cut0.4: MImagePar.fNumSatPixelsLG<2 91 Cut0.5: MImagePar.fNumIslands<3 72 92 73 # Get rid of triangular events... 74 Cut0.Condition: {0} 75 Cut0.0: log10(MNewImagePar.fConc1) < (-0.467)*log10(MHillas.fSize) +0.75 93 # ---------- SETUP FOR ONOFF-MODE ----------- 94 MAlphaFitter.BackgroundFitMin: 0.137 95 MAlphaFitter.BackgroundFitMax: 0.64 96 MAlphaFitter.PolynomOrder: 1 97 MAlphaFitter.ScaleMode: Background 98 MAlphaFitter.SignalFunction: ThetaSq 76 99 77 # If you could setup MFEventSelector by resource file you could use it here 78 # To produce trainings and test sample use: "{MMcEvt.fEvtNumber%2}>0.5" 79 #Cut1.Condition: <MFSupercuts> 80 #Cut1.Param0: 0.056 81 #Cut1.Param8: 0.222 82 #Cut1.Param16: 0.042 83 #Cut1.Param24: 0.087 84 #Cut1.Param32: 0.33 100 Cut1.Condition: MFMagicCuts 101 Cut1.ThetaCut: None 102 Cut1.Param0: 1.3245 103 Cut1.Param1: 0.189 104 Cut1.Param2: 0.230 105 Cut1.Param3: 5.320 106 Cut1.Param4: 0.100 107 Cut1.Param5: -0.0636 108 Cut1.Param6: 8.2957 109 Cut1.Param7: 0.8677 85 110 86 Cut1.Condition: {0} && {1} && {2} && {3} && {4} 111 # ---------- SETUP FOR WOBBLE-MODE ----------- 112 #MAlphaFitter.ScaleMode: none 113 #MAlphaFitter.BackgroundFitMin: 0.09 114 #MAlphaFitter.BackgroundFitMax: 0.25 115 #MAlphaFitter.SignalFunction: ThetaSq 116 #Cut1.Condition: MFMagicCuts 117 #Cut1.ThetaCut: Off 118 #Cut1.Param0: 1.221 119 #Cut1.Param1: 0.233161 120 #Cut1.Param2: 0.234233 121 #Cut1.Param3: 5.23611 122 #Cut1.Param4: 0.109593 123 #Cut1.Param5: -0.095321 124 #Cut1.Param6: 13.425 125 #Cut1.Param7: 1.04343 87 126 88 Cut1.0: MHillas.fLength*MGeomCam.fConvMm2Deg > 0.0063*log10(MHillas.fSize)+0.0974 89 Cut1.1: MHillas.fLength*MGeomCam.fConvMm2Deg < 0.0040*log10(MHillas.fSize)+0.1791 90 Cut1.2: MHillas.fWidth *MGeomCam.fConvMm2Deg > 0.0067*log10(MHillas.fSize)+0.0511 91 Cut1.3: MHillas.fWidth *MGeomCam.fConvMm2Deg < 0.0050*log10(MHillas.fSize)+0.1203 92 Cut1.4: MHillas.fSize>95 93 94 Cut2.Condition: MHillasSrc.fDist*MGeomCam.fConvMm2Deg>0.55 95 96 Cut3.Condition: abs(MHillasSrc.fAlpha)<10 127 # Be carefull: The spectrum might be done with a different binning 128 # This might change the scale factor 129 MHThetaSq.NumBinsSignal: 3 130 MHThetaSq.NumBinsTotal: 75 97 131 98 132 # ------------------------------------------------------------------------- … … 101 135 #MHFalseSource.DistMin: 0.55 102 136 #MHFalseSource.DistMax: 0.55 103 #MHFalseSource.DWMin: 0.55104 #MHFalseSource.DWMax: 0.55137 #MHFalseSource.DWMin: 0.55 138 #MHFalseSource.DWMax: 0.55 105 139 106 140 # ------------------------------------------------------------------------- -
trunk/MagicSoft/Mars/mpointing/MPointingDevCalc.cc
r7203 r7205 27 27 // MPointingDevCalc 28 28 // 29 // Calculates the pointing deviation from the starguider information. 30 // 31 // There are some quality parameters to steer which are the valid 32 // starguider data points: 33 // * MPointingDevCalc.NumMinStars: 8 34 // Minimum number of identified stars required to accep the data 35 // * MPointingDevCalc.NsbLevel: 3.0 36 // Minimum deviation (in rms) from the the mean allowed for the measured 37 // NSB (noise in the ccd camera) 38 // * MPointingDevCalc.NsbMin: 30 39 // - minimum NSB to be used in mean/rms calculation 40 // * MPointingDevCalc.NsbMax: 60 41 // - maximum NSB to be used in mean/rms calculation 42 // * MPointingDevCalc.MaxAbsDev: 15 43 // - Maximum absolute deviation which is consideres as valid (arcmin) 44 // 45 // Starguider data which doens't fullfill this requirements is ignored. 46 // If the measures NSB==0 (file too old, starguider didn't write down 47 // these values) the checks based on NSB and NumMinStar are skipped. 48 // 49 // The calculation of NSB mean and rms is reset for each file (ReInit) 50 // 51 // 29 52 // Input Container: 30 53 // MReportStarguider … … 129 152 if (nsb>0) 130 153 { 131 if (nsb> 30 && nsb<60)154 if (nsb>fNsbMin && nsb<fNsbMax) 132 155 { 133 156 fNsbSum += nsb; … … 141 164 const Double_t sq = fNsbSq /fNsbCount; 142 165 143 const Double_t rms = TMath::Sqrt(sq - sum*sum);144 145 if (nsb<sum- 3*rms || nsb>sum+3*rms)166 const Double_t rms = fNsbLevel*TMath::Sqrt(sq - sum*sum); 167 168 if (nsb<sum-rms || nsb>sum+rms) 146 169 { 147 170 fSkip[2]++; … … 150 173 } 151 174 152 if (fReport->GetNumIdentifiedStars()< 8)175 if (fReport->GetNumIdentifiedStars()<fNumMinStars) 153 176 { 154 177 fSkip[3]++; … … 166 189 167 190 // Sanity check... larger deviation are strange and ignored 168 if (dev >0.25)191 if (dev*60>fMaxAbsDev) 169 192 { 170 193 fSkip[4]++; … … 213 236 *fLog << GetDescriptor() << " execution statistics:" << endl; 214 237 PrintSkipped(fSkip[1], "Starguider deviation not set, is exactly 0/0"); 215 PrintSkipped(fSkip[2], "NSB out of 3 sigma range");216 PrintSkipped(fSkip[3], "Number of identified stars < 8");217 PrintSkipped(fSkip[4], "Absolute deviation > 0.25deg");238 PrintSkipped(fSkip[2], Form("NSB out of %.1f sigma range", fNsbLevel)); 239 PrintSkipped(fSkip[3], Form("Number of identified stars < %d", fNumMinStars)); 240 PrintSkipped(fSkip[4], Form("Absolute deviation > %.1farcmin", fMaxAbsDev)); 218 241 *fLog << " " << (int)fSkip[0] << " (" << Form("%5.1f", 100.*fSkip[0]/GetNumExecutions()) << "%) Evts survived calculation!" << endl; 219 242 *fLog << endl; … … 221 244 return kTRUE; 222 245 } 246 247 // -------------------------------------------------------------------------- 248 // 249 // MPointingDevCalc.NumMinStars: 8 250 // MPointingDevCalc.NsbLevel: 3.0 251 // MPointingDevCalc.NsbMin: 30 252 // MPointingDevCalc.NsbMax: 60 253 // MPointingDevCalc.MaxAbsDev: 15 254 // 255 Int_t MPointingDevCalc::ReadEnv(const TEnv &env, TString prefix, Bool_t print) 256 { 257 Bool_t rc = kFALSE; 258 if (IsEnvDefined(env, prefix, "NumMinStars", print)) 259 { 260 SetNumMInStars(GetEnvValue(env, prefix, "NumMinStars", fNumMinStars)); 261 rc = kTRUE; 262 } 263 if (IsEnvDefined(env, prefix, "NsbLevel", print)) 264 { 265 SetNsbLevel(GetEnvValue(env, prefix, "NsbLevel", fNsbLevel)); 266 rc = kTRUE; 267 } 268 if (IsEnvDefined(env, prefix, "NsbMin", print)) 269 { 270 SetNsbMin(GetEnvValue(env, prefix, "NsbMin", fNsbMin)); 271 rc = kTRUE; 272 } 273 if (IsEnvDefined(env, prefix, "NsbMax", print)) 274 { 275 SetNsbMax(GetEnvValue(env, prefix, "NsbMax", fNsbMax)); 276 rc = kTRUE; 277 } 278 if (IsEnvDefined(env, prefix, "MaxAbsDev", print)) 279 { 280 SetMaxAbsDev(GetEnvValue(env, prefix, "MaxAbsDev", fMaxAbsDev)); 281 rc = kTRUE; 282 } 283 284 return rc; 285 } -
trunk/MagicSoft/Mars/mpointing/MPointingDevCalc.h
r7203 r7205 27 27 TArrayI fSkip; //! Counter for execution statistics 28 28 29 UInt_t fNumMinStars; // Minimum number of identified stars 30 Float_t fNsbLevel; // Minimum deviation from mean in sigma 31 Float_t fNsbMin; // Minimum NSB to calc mean and rms 32 Float_t fNsbMax; // Maximum NSB to calc mean and rms 33 Float_t fMaxAbsDev; // [arcmin] Maximum considered absolute deviation 34 29 35 // MPointingDevCalc 30 36 Int_t ProcessStarguiderReport(); 37 38 // MParContainer 31 39 32 40 // MTask … … 37 45 38 46 public: 39 MPointingDevCalc() : fReport(0), fDeviation(0), fSkip(5) 47 MPointingDevCalc() : fReport(0), fDeviation(0), fSkip(5), fNumMinStars(8), 48 fNsbLevel(3), fNsbMin(30), fNsbMax(60), fMaxAbsDev(15) 40 49 { 41 50 fName = "MPointingDevCalc"; … … 43 52 } 44 53 54 void SetNumMinStars(UInt_t n) { fNumMinStars=8; } 55 void SetNsbLevel(Float_t lvl) { fNsbLevel=lvl; } 56 void SetNsbMin(Float_t nsb) { fNsbMin=nsb; } 57 void SetNsbMax(Float_t nsb) { fNsbMax=nsb; } 58 void SetMaxAbsDev(Float_t max) { fMaxAbsDev=max; } 59 45 60 ClassDef(MPointingDevCalc, 0) //Task calculating the pointing deviation 46 61 }; -
trunk/MagicSoft/Mars/mpointing/MPointingPos.h
r7178 r7205 6 6 #endif 7 7 8 // FIXME: Should not be here... 8 // FIXME: Should not be here... (ZdAz) 9 9 #ifndef MARS_MPointing 10 10 #include "MPointing.h" -
trunk/MagicSoft/Mars/mpointing/MPointingPosCalc.h
r5935 r7205 1 #ifndef MARS_MPointingPos itionCalc2 #define MARS_MPointingPos itionCalc1 #ifndef MARS_MPointingPosCalc 2 #define MARS_MPointingPosCalc 3 3 4 4 #ifndef MARS_MTask
Note:
See TracChangeset
for help on using the changeset viewer.