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

Last change on this file since 4308 was 4070, checked in by rico, 21 years ago
*** empty log message ***
File size: 2.4 KB
Line 
1
2// Macro to compare the rotation obtained from simple FOV rotation, with
3// measured values
4
5void rotation()
6{
7 const Int_t rmax=17427;
8 gStyle->SetMarkerStyle(20);
9 gStyle->SetMarkerSize(1);
10
11 const char* fname="/mnt/users/jrico/magic/mars/Mars_Standard02/mtemp/mifae/macros/20040215_Mrk421.B.pos";
12 TFile* file= new TFile("/mnt/users/jrico/magic/mars/Mars_Standard02/mtemp/mifae/hillas/mrk20040215OnRotateNoCalB.root");
13 TTree* chain = (TTree*)file->Get("Parameters");
14
15 // read position data from file
16 ifstream ifun(fname);
17
18 Int_t irun;
19 Float_t ix;
20 Float_t iy;
21
22 // first loop to evaluate number of entries
23 Int_t nentries=0;
24 while(ifun >> irun)
25 {
26 ifun >> ix;
27 ifun >> iy;
28 nentries++;
29 }
30 ifun.close();
31 const Int_t size = nentries;
32 Float_t x[size];
33 Float_t y[size];
34 Int_t run[size];
35
36 // second loop to actually read values into arrays
37 Int_t i=0;
38 ifstream ifun2(fname);
39 while(ifun2 >> run[i])
40 {
41 ifun2 >> x[i];
42 ifun2 >> y[i];
43 x[i]/=315.;
44 y[i]/=315.;
45 i++;
46 }
47 ifun2.close();
48 TGraph* tray = new TGraph(nentries,x,y);
49
50 // get data from tree
51 MSrcPosCam* srpos = new MSrcPosCam;
52 MRawRunHeader* hrun = new MRawRunHeader;
53 chain->SetBranchAddress("MSrcPosCam.",&srpos);
54 chain->SetBranchAddress("MRawRunHeader.",&hrun);
55
56 Int_t ntot = chain->GetEntries();
57 const Int_t ctot =ntot;
58 Float_t xth[ctot];
59 Float_t yth[ctot];
60 Int_t rtot=0;
61 for(Int_t j=0;j<ctot;j++)
62 {
63 chain->GetEntry(j);
64 Int_t arun=hrun->GetRunNumber();
65 if(arun<=rmax)
66 {
67 xth[j]=srpos->GetX()/315.;
68 yth[j]=srpos->GetY()/315.;
69 rtot++;
70 }
71 }
72 TGraph* trayth = new TGraph(rtot,xth,yth);
73
74
75 // Plot
76 TPostScript myps("rotation.ps",111);
77 myps.Range(15,15);
78 TCanvas* myC = new TCanvas("myC","pedestal studies",500,500);
79 myC->cd(1);
80
81 // Null graph to adjust plot limits
82 Float_t nullx[2]={-0.4,0.4};
83 Float_t nully[2]={-0.4,0.4};
84
85 TGraph grnull(2,nullx,nully);
86 grnull.SetMarkerSize(0);
87 grnull.SetMarkerColor(0);
88 grnull.GetXaxis()->SetTitle("x (deg)");
89 grnull.GetYaxis()->SetTitle("y (deg)");
90 grnull.SetTitle("Source position in camera Mrk421 15th February");
91 grnull.DrawClone("AP");
92
93 tray->SetMarkerStyle(2);
94 tray->SetMarkerSize(2);
95 trayth->SetMarkerStyle(6);
96 trayth->SetMarkerColor(2);
97
98 tray->DrawClone("P");
99 trayth->DrawClone("P");
100 myps.Close();
101}
Note: See TracBrowser for help on using the repository browser.