@Wile_E_Coyote, my supervisor just wrote me to calculate the particle direction in experimental setup and when I asked him how to do it, he just replied
Take 2 points in x i.e. on two Silicon detecots on the same arm of the detector (for example the 35 and 37) putting the relative distance .
So I think that I’ve to get the tracks of particles moving from the tracker 35 to the tracker 37 (shown in the image in first post).
Anyway, the macro just fill for the subdetectors 10,20,30,31 instead my supervisor and his collegue wrote me to study the trackers 33,35 and 37 so
- In TBAlign.c I added the code
a.
TH1F *hnx33=new TH1F("hnx33","N hits in Si33, X coord",10,0,10);
TH1F *hnx35=new TH1F("hnx35","N hits in Si35, X coord",10,0,10);
TH1F *hnx37=new TH1F("hnx37","N hits in Si37, X coord",10,0,10);
b.
TH1F *hx33=new TH1F("hx33","X cood, Si33", 100,0,L33);
TH1F *hx35=new TH1F("hx35","X cood, Si35", 100,0,L35);
TH1F *hx37=new TH1F("hx37","X cood, Si37", 100,0,L37);
c.
TH2F *h2x33v31=new TH2F("h2x33v31","X, x33:x31", 100, 0, L31, 100, 0, L33);
TH2F *h2x35v33=new TH2F("h2x35v33","X, x35:x33", 100, 0, L33, 100, 0, L35);
TH2F *h2x37v35=new TH2F("h2x37v35","X, x37:x35", 100, 0, L35, 100, 0, L37);
d.
TH2F *h2y33v31=new TH2F("h2y33v31","Y, y33:y31", 100, 0, L31, 100, 0, L33);
TH2F *h2y35v33=new TH2F("h2y35v33","Y, y35:y33", 100, 0, L33, 100, 0, L35);
TH2F *h2y37v35=new TH2F("h2y37v35","Y, y37:y35", 100, 0, L35, 100, 0, L37);
e.
TH1F *h33diff = new TH1F("h33diff","X: x33-x31", 100, -1., 1.);
TH1F *h35diff = new TH1F("h35diff","X: x35-x33", 100, -1., 1.);
TH1F *h37diff = new TH1F("h37diff","X: x37-x35", 100, -1., 1.);
f.
TH1F *h33xz = new TH1F("h33xz","X: x33-x31, mrad", 100, -3., 3.);
TH1F *h35xz = new TH1F("h35xz","X: x35-x33, mrad", 100, -3., 3.);
TH1F *h37xz = new TH1F("h37xz","X: x37-x35, mrad", 100, -3., 3.);
TH1F *h33yz = new TH1F("h33yz","Y: y33-y31, mrad", 100, -3., 3.);
TH1F *h35yz = new TH1F("h35yz","Y: y35-y33, mrad", 100, -3., 3.);
TH1F *h37yz = new TH1F("h37yz","Y: y37-y35, mrad", 100, -3., 3.);
g.
TH2F *h2x33v31all=new TH2F("h2x33v31all","X, x33:x31", 100, 0, L31, 100, 0, L33);
TH2F *h2x35v33all=new TH2F("h2x35v33all","X, x35:x33", 100, 0, L33, 100, 0, L35);
TH2F *h2x37v35all=new TH2F("h2x37v35all","X, x37:x35", 100, 0, L35, 100, 0, L37);
h.
TH2F *h2y33v31all=new TH2F("h2y33v31all","Y, y33:y31", 100, 0, L31, 100, 0, L33);
TH2F *h2y35v33all=new TH2F("h2y35v33all","Y, y35:y33", 100, 0, L33, 100, 0, L35);
TH2F *h2y37v35all=new TH2F("h2y37v35all","Y, y37:y35", 100, 0, L35, 100, 0, L37);
i.
hnx33->Fill(nx33);
hnx35->Fill(nx35);
hnx37->Fill(nx37);
l.
if(nx31==1 && nx33==1) h2x33v31->Fill(x31[0],x33[0]);
if(nx33==1 && nx35==1) h2x35v33->Fill(x33[0],x35[0]);
if(nx35==1 && nx37==1) h2x37v35->Fill(x35[0],x37[0]);
m.
h2x33v31all->Fill(x31[j],x33[j]);
h2x35v33all->Fill(x33[j],x35[j]);
h2x37v35all->Fill(x35[j],x37[j]);
m.
if(ny31==1 && ny33==1) h2y33v31->Fill(y31[0],y33[0]);
if(ny33==1 && ny35==1) h2y35v33->Fill(y33[0],y35[0]);
if(ny35==1 && ny37==1) h2y37v35->Fill(y35[0],y37[0]);
n.
h2y33v31all->Fill(y31[j],y33[j]);
h2y35v33all->Fill(y33[j],y35[j]);
h2y37v35all->Fill(y35[j],y37[j]);
o.
if(nx31==1 && nx33==1) h33diff->Fill(x33[0]-x31[0]);
if(nx33==1 && nx35==1) h35diff->Fill(x35[0]-x33[0]);
if(nx35==1 && nx37==1) h37diff->Fill(x37[0]-x35[0]);
p.
if(nx31==1 && nx33==1) h33xz->Fill(1e3*(x33[0]-x31[0])/(z33[0]-z31[0]));
if(nx33==1 && nx35==1) h35xz->Fill(1e3*(x35[0]-x33[0])/(z35[0]-z33[0]));
if(nx35==1 && nx37==1) h37xz->Fill(1e3*(x37[0]-x35[0])/(z37[0]-z35[0]));
if(ny31==1 && ny33==1) h33yz->Fill(1e3*(y33[0]-y31[0])/(z33[0]-z31[0]));
if(ny33==1 && ny35==1) h35yz->Fill(1e3*(y35[0]-y33[0])/(z35[0]-z33[0]));
if(ny35==1 && ny37==1) h37yz->Fill(1e3*(y37[0]-y35[0])/(z37[0]-z35[0]));
q.
h33xz->Fit("gaus");
h33yz->Fit("gaus");
h35xz->Fit("gaus");
h35yz->Fit("gaus");
h37xz->Fit("gaus");
h37yz->Fit("gaus");
and this is the modified macro
TBAlign.C (19.8 KB)
TBAlign.h (4.3 KB)
I runned the macro getting this ROOT file si-500596-trasl.root (1.7 MB)
but it looks like there are problems…
-
In the 3 plots hx33, hx35, hx37 I read in the stat box that there are events, but I don’t see them, for example
-
In the 3 plots h2x33v31, h2x35v33, h2x37v35 I read in the stat box that there are events, but I don’t see them, for example
-
In the plot h33xz I read there are events, but I can’t see them
-
In the 3 plots h33diff, h35diff, h37diff, I read in the stat box that there are events, but I don’t see them, for example