10 TTree *
treepnt = (TTree*) filerun.Get(
"pndsim");
11 TClonesArray *
pnt =
new TClonesArray(
"PndSttPoint");
12 treepnt->SetBranchAddress(
"STTPoint",&pnt);
18 TClonesArray *
digi =
new TClonesArray(
"PndSttHit");
19 treedigi->SetBranchAddress(
"STTHit",&digi);
24 TClonesArray *
hh =
new TClonesArray(
"PndSttHelixHit");
25 treereco->SetBranchAddress(
"SttHelixHit",&hh);
28 TClonesArray *
track =
new TClonesArray(
"PndSttTrack");
29 treereco->SetBranchAddress(
"STTTrack",&track);
31 TCanvas *
c =
new TCanvas(
"c",
"c", 0, 0, 600, 600);
33 TH2F *
hxy =
new TH2F(
"hxy",
"hxy",100,-42,42, 100,-42,42);
34 TH2F *
hyz =
new TH2F(
"hyz",
"hyz",100,0,50, 100,-40,110);
38 treepnt->GetEntry(evt);
39 treedigi->GetEntry(evt);
40 treereco->GetEntry(evt);
49 cout <<
"blue = Monte Carlo " << endl;
50 cout <<
"red = Helix Hit " << endl;
51 cout <<
"green = Center Of Tubes " << endl;
54 for (Int_t k = 0; k < track->GetEntriesFast(); k++) {
57 if(!stttrack)
continue;
73 cout <<
"evt" << evt <<
" track " << k <<
" num hits " << stttrack->
GetNofHelixHits() <<
" flag " << stttrack->
GetFlag() <<
" ptran " << ptran <<
" plong "<< plong <<
" ptot " << ptot << endl;
77 TArc *circ =
new TArc(x0, y0, R, 0, 360);
78 circ->SetLineColor(k+1);
79 circ->SetFillStyle(0);
87 TLine* line =
new TLine(scoslT, scoslT*tanl+ z0, 50, 50*tanl + z0);
88 line->SetLineColor(k+1);
103 TMarker *mrkpnt =
new TMarker(mcpoint->
GetXtot(), mcpoint->
GetYtot(), 2);
104 mrkpnt->SetMarkerColor(4);
105 mrkpnt->Draw(
"SAME");
106 TMarker *mrkdigi =
new TMarker(hit->GetX(), hit->GetY(), 6);
107 mrkdigi->SetMarkerColor(3);
108 mrkdigi->Draw(
"SAME");
109 TMarker *mrkhh =
new TMarker(helixhit->GetX(), helixhit->GetY(), 5);
110 mrkhh->SetMarkerColor(2);
138 TMarker *mrkpnt =
new TMarker(scoslMC, mcpoint->
GetZtot(), 2);
139 mrkpnt->SetMarkerColor(4);
140 mrkpnt->Draw(
"SAME");
143 TMarker *mrkdigi =
new TMarker(scoslH, hit->GetZ(), 6);
144 mrkdigi->SetMarkerColor(3);
148 TMarker *mrkhh =
new TMarker(scoslHH, helixhit->GetZ(), 5);
149 mrkhh->SetMarkerColor(2);
friend F32vec4 cos(const F32vec4 &a)
TFile filerun("testrun.root")
TFile filedigi("testdigi.root")
Int_t GetNofHelixHits() const
friend F32vec4 sqrt(const F32vec4 &a)
friend F32vec4 sin(const F32vec4 &a)
int hit(Int_t nEvents=0, TString inFile="sim.root", TString parFile="par.root", TString inDigi="digi.root", TString outFile="hit.root", Int_t timeBased=0)
Int_t GetHelixHitIndex(Int_t iHit) const
Double_t CalculateScosl(Double_t x, Double_t y)
TFile filehelix("testreco.root")