Changeset 8310
- Timestamp:
- 02/09/07 09:02:23 (18 years ago)
- Location:
- trunk/MagicSoft/Mars
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/MagicSoft/Mars/Changelog
r8308 r8310 19 19 -*-*- END OF LINE -*-*- 20 20 21 2007/02/09 Thomas Bretz 22 23 * star.rc: 24 - added new options 25 - reordering 26 27 * mbase/MStatusDisplay.cc: 28 - updated from 2006 to 2007 29 30 * mfbase/MFDataPhrase.cc: 31 - fixed ReadEnv to correctly return true/false 32 33 * mjobs/MJStar.cc: 34 - added new tabs "Spakless" and "Sparks" dividing the average 35 signal tab into two distributions by a SparkCut 36 - replaced all MF by MFDataPhrase 37 38 39 21 40 2007/02/06 Thomas Bretz 22 41 -
trunk/MagicSoft/Mars/NEWS
r8304 r8310 45 45 + the hi-gain window was extended to slice 16. This allows extraction 46 46 of very late pulses in single pixels or of huge hadron showers. 47 + Now uses the lo-gain extraction range for pedestal extraction, 48 not the hi-gain range in the lo-gain 47 49 48 50 - callisto: New hi-/lo-gain calibration constants have been produced … … 60 62 - callisto: Fixed a bug in the seuqence handling which caused the 61 63 light condition to be ignored 64 65 - star: Added two new tabs "Sparkless" and "Sparks" these tabs show 66 basically the same as "Cleaned" but the distribution devided into 67 the events fullfilling a spark cut or being rejected by it. 68 This cut can be changed from star.rc (see example inside) by 69 the "SparkCut" directive 62 70 63 71 - optim: fixed a problem with the optim-macros which was due to a bug -
trunk/MagicSoft/Mars/mfbase/MFDataPhrase.cc
r8276 r8310 18 18 ! Author(s): Thomas Bretz 01/2002 <mailto:tbretz@astro.uni-wuerzburg.de> 19 19 ! 20 ! Copyright: MAGIC Software Development, 2000-200 520 ! Copyright: MAGIC Software Development, 2000-2007 21 21 ! 22 22 ! … … 273 273 Int_t MFDataPhrase::ReadEnv(const TEnv &env, TString prefix, Bool_t print) 274 274 { 275 Int_t rc = MFilter::ReadEnv(env, prefix, print);276 if (rc ==kERROR)275 Int_t rc1 = MFilter::ReadEnv(env, prefix, print); 276 if (rc1==kERROR) 277 277 return kERROR; 278 278 … … 329 329 *fLog << endl; 330 330 } 331 332 rc1 = kTRUE; 331 333 } 332 334 else … … 340 342 } 341 343 342 if (fData->ReadEnv(env, prefix, print)==kERROR) 344 const Int_t rc2 = fData->ReadEnv(env, prefix, print); 345 if (rc2==kERROR) 343 346 return kERROR; 344 347 … … 351 354 SetInverted(kFALSE);*/ 352 355 353 return kTRUE;354 } 356 return rc1 || rc2; 357 } -
trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc
r8300 r8310 465 465 // The window size of the extractor is not yet initialized, 466 466 // so we have to stick to the extraction range 467 const Int_t f = extractor1->GetHiGainFirst(); 468 const Int_t l = extractor1->GetHiGainLast(); 469 const Int_t w = (l-f+1)&~1; 467 // 468 // Even if we would like to use a range comparable to the 469 // hi-gain extraction we use the lo-gain range to make 470 // sure that exclusions (eg. due to switching noise) 471 // are correctly handled. 472 // 473 const Int_t f = extractor1->GetLoGainFirst(); 474 const Int_t l = extractor1->GetLoGainLast(); 475 const Int_t w = (l-f+1); 476 //const Int_t f = extractor1->GetHiGainFirst(); 477 //const Int_t l = extractor1->GetHiGainLast(); 478 //const Int_t w = (l-f+1)&~1; 470 479 471 480 pedlo1.SetExtractWindow(f, w); -
trunk/MagicSoft/Mars/mjobs/MJStar.cc
r8280 r8310 18 18 ! Author(s): Thomas Bretz, 1/2004 <mailto:tbretz@astro.uni-wuerzburg.de> 19 19 ! 20 ! Copyright: MAGIC Software Development, 2000-200 420 ! Copyright: MAGIC Software Development, 2000-2007 21 21 ! 22 22 ! … … 51 51 #include "MReadReports.h" 52 52 #include "MReadMarsFile.h" 53 #include "MF.h" 53 #include "MFDataPhrase.h" 54 #include "MFilterList.h" 54 55 #include "MFDataMember.h" 55 56 #include "MFDeltaT.h" … … 209 210 // ------------------ Setup histograms and fill tasks ---------------- 210 211 MHCamEvent evt0a(0, "Cleaned", "Signal after Cleaning;;S [\\gamma]"); 212 MHCamEvent evt0c(0, "Cleaned", "Signal after Cleaning and Spark cuts;;S [\\gamma]"); 213 MHCamEvent evt0d(0, "Cleaned", "Signal after Cleaning for Spark cuts;;S [\\gamma]"); 211 214 MHCamEvent evt0b(0, "UsedPix", "Fraction of Events in which Pixels are used;;Fraction"); 212 215 evt0a.SetErrorSpread(kFALSE); 213 216 evt0b.SetErrorSpread(kFALSE); 217 evt0c.SetErrorSpread(kFALSE); 218 evt0d.SetErrorSpread(kFALSE); 214 219 evt0b.SetThreshold(0); 215 220 … … 223 228 MFillH fill0a(&evt0a, "MSignalCam", "FillSignalCam"); 224 229 MFillH fill0b(&evt0b, "MSignalCam", "FillCntUsedPixels"); 230 MFillH fill0c(&evt0c, "MSignalCam", "FillSignalCamSparkless"); 231 MFillH fill0d(&evt0d, "MSignalCam", "FillSignalCamSparks"); 225 232 MFillH fill1("MHHillas", "MHillas", "FillHillas"); 226 233 MFillH fill2("MHHillasExt", "", "FillHillasExt"); … … 232 239 //fillvs.SetNameTab("Rate"); 233 240 fill9.SetNameTab("EffOnTime"); 241 fill0c.SetNameTab("Sparkless"); 242 fill0d.SetNameTab("Sparks"); 234 243 235 244 // ------------------ Setup write task ---------------- … … 327 336 tlist2.AddToList(&writet); 328 337 } 338 339 // Spark cut 340 MFDataPhrase fsparks("log10(MNewImagePar.fConc1) < (-0.371)*log10(MHillas.fSize) + 0.596", "SparkCut"); 341 fill0c.SetFilter(&fsparks); 342 343 // Inverted spark cut (need not to be a member of the task list 344 // because it fsparks is 345 MFilterList fnsparks(&fsparks); 346 fill0d.SetFilter(&fnsparks); 347 329 348 tlist2.AddToList(&clean); 330 tlist2.AddToList(&fill0a);331 tlist2.AddToList(&fill0b);332 349 tlist2.AddToList(&poscalc); 333 350 tlist2.AddToList(&hcalc); 351 tlist2.AddToList(&fsparks); 352 tlist2.AddToList(&fill0a); 353 tlist2.AddToList(&fill0c); 354 tlist2.AddToList(&fill0d); 355 tlist2.AddToList(&fill0b); 334 356 tlist2.AddToList(&fill1); 335 357 tlist2.AddToList(&fill2); … … 340 362 // ----------------------- Muon Analysis ---------------------- 341 363 // Filter to start muon analysis 342 MF fmuon1("MHillas.fSize>150", "MuonPreCut");364 MFDataPhrase fmuon1("MHillas.fSize>150", "MuonPreCut"); 343 365 // Filter to calculate further muon parameters 344 MF fmuon2("(MMuonSearchPar.fRadius>180) && (MMuonSearchPar.fRadius<400) &&"345 "(MMuonSearchPar.fDeviation<45)", "MuonSearchCut");366 MFDataPhrase fmuon2("(MMuonSearchPar.fRadius>180) && (MMuonSearchPar.fRadius<400) &&" 367 "(MMuonSearchPar.fDeviation<45)", "MuonSearchCut"); 346 368 // Filter to fill the MHMuonPar 347 MF fmuon3("(MMuonCalibPar.fArcPhi>190) && (MMuonSearchPar.fDeviation<35) &&"348 "(MMuonCalibPar.fArcWidth<0.20) && (MMuonCalibPar.fArcWidth>0.04)",349 "MuonFinalCut");369 MFDataPhrase fmuon3("(MMuonCalibPar.fArcPhi>190) && (MMuonSearchPar.fDeviation<35) &&" 370 "(MMuonCalibPar.fArcWidth<0.20) && (MMuonCalibPar.fArcWidth>0.04)", 371 "MuonFinalCut"); 350 372 // Filter to write Muons to Muon tree 351 373 MFDataMember fmuon4("MMuonCalibPar.fArcPhi", '>', -0.5, "MuonWriteCut"); -
trunk/MagicSoft/Mars/star.rc
r8245 r8310 44 44 45 45 # ------------------------------------------------------------------------- 46 # Setup the image cleaning here 47 # ------------------------------------------------------------------------- 48 MImgCleanStd.CleanLevel1: 8.5 49 MImgCleanStd.CleanLevel2: 4.0 50 MImgCleanStd.CleanMethod: Absolute 51 #MImgCleanStd.CleanRings: 1 52 #MImgCleanStd.KeepSinglePixels: No 53 54 # ------------------------------------------------------------------------- 55 # Setup the cut applied to the Sparkless tab 56 # ------------------------------------------------------------------------- 57 58 # This is the simple default 59 #SparkCut.Condition: log10(MNewImagePar.fConc1) < (-0.371)*log10(MHillas.fSize) + 0.596 60 61 # This is the more complicated cut from ganymed.rc 62 #SparkCut.Condition: ({0} || {1}) && {2} 63 #SparkCut.0: MImagePar.fNumSatPixelsHG < 1 64 #SparkCut.1: MHillas.GetArea*(MGeomCam.fConvMm2Deg^2) > (0.003*MImagePar.fNumSatPixelsHG) + 0.0325 65 #SparkCut.2: log10(MNewImagePar.fConc1) < (-0.371)*log10(MHillas.fSize) + 0.596 66 67 # ------------------------------------------------------------------------- 68 # setup the image parameter calculation here 69 # ------------------------------------------------------------------------- 70 #MHillasCalc.IdxIsland: 0 71 72 # ------------------------------------------------------------------------- 46 73 # Setup or switch off the muon analysis here 47 74 # ------------------------------------------------------------------------- … … 62 89 #MuonSearcCut.Condition: (MMuonSearchPar.fRadius>180) && (MMuonSearchPar.fRadius<400) && (MMuonSearchPar.fDeviation<45) 63 90 #MuonFinalCut.Condition: (MMuonCalibPar.fArcPhi>190) && (MMuonSearchPar.fDeviation<35) && (MMuonCalibPar.fArcWidth<0.20) && (MMuonCalibPar.fArcWidth>0.04) 64 65 # -------------------------------------------------------------------------66 # Setup the image cleaning here67 # -------------------------------------------------------------------------68 MImgCleanStd.CleanLevel1: 8.569 MImgCleanStd.CleanLevel2: 4.070 MImgCleanStd.CleanMethod: Absolute71 #MImgCleanStd.KeepSinglePixels: No72 73 # -------------------------------------------------------------------------74 # setup the image parameter calculation here75 # -------------------------------------------------------------------------76 #MHillasCalc.IdxIsland: 077
Note:
See TracChangeset
for help on using the changeset viewer.