source: trunk/MagicSoft/Mars/mtemp/mifae/macros/observationTime.C@ 4308

Last change on this file since 4308 was 4259, checked in by rico, 20 years ago
*** empty log message ***
File size: 1.5 KB
Line 
1/* ======================================================================== *\!
2! Author(s): Javier Rico
3\* ======================================================================== */
4
5void observationTime(
6 Int_t iniRun=0,
7 Int_t finRun=99999,
8 TString filename="/mnt/users/jrico/magic/mars/mars/mtemp/mifae/hillas/AllCrabNebula_3015_kDefault_MispE.root",
9)
10{
11 // define files, chains...
12 TChain* t= new TChain("Parameters");
13 t->Add(filename);
14
15 // define aliases
16 t->SetAlias("run", "MRawRunHeader.fRunNumber");
17 t->SetAlias("runiniT", "MRawRunHeader.fRunStart.fTime.fMilliSec/1000");
18 t->SetAlias("runfinT", "MRawRunHeader.fRunStop.fTime.fMilliSec/1000");
19
20 TH1I* hrun = new TH1I("hrun","",finRun-iniRun+1,iniRun,finRun+1);
21 TH1I* hent = new TH1I("hent","",finRun-iniRun+1,iniRun,finRun+1);
22
23 const char varcut[512];
24 const char runcut[512];
25 sprintf(runcut,"(run>=%d && run<=%d)",iniRun,finRun);
26 sprintf(varcut,"%s*(runfinT-runiniT)",runcut);
27
28 t->Draw("run>>hrun",runcut);
29 t->Draw("run>>hent",varcut);
30
31 Float_t seconds=0;
32 for(Int_t irun = 1; irun<=finRun-iniRun+1; irun++)
33 {
34 Int_t nev;
35 if(nev=hrun->GetBinContent(irun))
36 {
37 Float_t time = hent->GetBinContent(irun)/nev;
38 seconds += time;
39 cout << "run " << iniRun-1+irun << ", " << time << " seconds" << endl;
40 }
41 }
42
43 cout << "Total observation time = " << seconds << " seconds = " << seconds/60. << " minutes = " << seconds/3600. << " hours" << endl;
44 delete hrun;
45 delete hent;
46}
47
48
Note: See TracBrowser for help on using the repository browser.