3 #include "FairMCPoint.h"
4 #include "FairRootManager.h"
20 char *fMvdPixelBranch,
21 char *fMvdStripBranch,
42 cout<<
"da PndTrkTraking : n. Mvd Pixel Hits = "<<nMvdPixelHit<<endl;
43 cout<<
"da PndTrkTracking : n. Mvd Strip Hits = "<<nMvdStripHit<<endl;
44 cout<<
"da PndTrkTracking : info hits di Mvd pixels ------------------\n";
45 for(
int i= 0;
i< nMvdPixelHit;
i++){
46 cout<<
" Pixel hit n. "<<
i<<
" Info : X = "<<XMvdPixel[
i]<<
"; Y = "<<YMvdPixel[
i]<<
47 "; Z = "<<ZMvdPixel[
i]<<
", R=sqrt(X**2+Y**2) = "<<
48 sqrt(XMvdPixel[
i]*XMvdPixel[
i]+YMvdPixel[
i]*YMvdPixel[
i])<<endl;
49 cout<<
"\t\tPixel Info : sigmaX = "<<sigmaXMvdPixel[
i]<<
"; sigmaY = "<<sigmaYMvdPixel[
i]<<
50 "; sigmaZ = "<<sigmaZMvdPixel[
i]<<endl<<
"\t suo RefIndex = "<<refindexMvdPixel[
i]<<
51 ", suo FairRootManager::Instance()->GetBranchId(fMvdPixelBranch) = "<<
52 FairRootManager::Instance()->GetBranchId(fMvdPixelBranch)<<endl;
54 cout<<
" ------------------\n";
56 cout<<
"\tInfo hits di Mvd strips; n. strip hits = "<<nMvdStripHit<<
" ------------------\n";
57 for(
int i= 0;
i< nMvdStripHit;
i++){
58 cout<<
" Strip hit n. "<<
i<<
" Info : X = "<<XMvdStrip[
i]<<
"; Y = "<<YMvdStrip[
i]<<
59 "; Z = "<<ZMvdStrip[
i]<<
", R=sqrt(X**2+Y**2) = "<<
60 sqrt(XMvdStrip[
i]*XMvdStrip[
i]+YMvdStrip[
i]*YMvdStrip[
i])<<endl;
61 cout<<
"\t\tStrip Info : sigmaX = "<<sigmaXMvdStrip[
i]<<
"; sigmaY = "<<sigmaYMvdStrip[
i]<<
62 "; sigmaZ = "<<sigmaZMvdStrip[
i]<<endl<<
"\t suo RefIndex = "<<refindexMvdStrip[
i]<<
63 ", suo FairRootManager::Instance()->GetBranchId(fMvdStripBranch) = "<<
64 FairRootManager::Instance()->GetBranchId(fMvdStripBranch)<<endl;
67 cout<<
" ------------------\n";
69 cout<<
"-----------------------------------------------------\n";
80 char *fMvdPixelBranch,
81 char *fMvdStripBranch,
86 Short_t * fMCtrack_of_Pixel,
87 Short_t * fMCtrack_of_Strip,
104 cout<<
"da PndTrkTraking : n. Mvd Pixel Hits = "<<nMvdPixelHit<<endl;
105 cout<<
"da PndTrkTracking : n. Mvd Strip Hits = "<<nMvdStripHit<<endl;
106 cout<<
"da PndTrkTracking : info hits di Mvd pixels ------------------\n";
107 for(
int i= 0;
i< nMvdPixelHit;
i++){
109 cout<<
" Pixel hit n. "<<
i<<
" Info : X = "<<XMvdPixel[
i]<<
"; Y = "<<YMvdPixel[
i]<<
110 "; Z = "<<ZMvdPixel[
i]<<
", R=sqrt(X**2+Y**2) = "<<
111 sqrt(XMvdPixel[
i]*XMvdPixel[
i]+YMvdPixel[
i]*YMvdPixel[
i])<<endl;
112 cout<<
"\t\tPixel Info : sigmaX = "<<sigmaXMvdPixel[
i]<<
"; sigmaY = "<<sigmaYMvdPixel[
i]<<
113 "; sigmaZ = "<<sigmaZMvdPixel[
i]<<endl
114 <<
"\t\tsuo RefIndex = "<<refindexMvdPixel[
i]<<
115 ", suo ...Instance()->GetBranchId(fMvdPixelBranch) = "<<
116 FairRootManager::Instance()->GetBranchId(fMvdPixelBranch);
118 if( refindexMvdPixel[i]<0) {
119 cout<<
", electronic noise hit non associato ad alcuna MC track;"<<endl<<endl;
121 cout<<
", traccia MC a cui e' associato = "
122 << fMCtrack_of_Pixel[
i]<<endl<<endl;
125 cout<<
" ------------------\n";
127 cout<<
"\tInfo hits di Mvd strips; n. strip hits = "<<nMvdStripHit<<
" ------------------\n";
128 for(
int i= 0;
i< nMvdStripHit;
i++){
129 cout<<
" Strip hit n. "<<
i<<
" Info : X = "<<XMvdStrip[
i]<<
"; Y = "<<YMvdStrip[
i]<<
130 "; Z = "<<ZMvdStrip[
i]<<
", R=sqrt(X**2+Y**2) = "<<
131 sqrt(XMvdStrip[
i]*XMvdStrip[
i]+YMvdStrip[
i]*YMvdStrip[
i])<<endl;
132 cout<<
"\t\tStrip Info : sigmaX = "<<sigmaXMvdStrip[
i]<<
"; sigmaY = "<<sigmaYMvdStrip[
i]<<
133 "; sigmaZ = "<<sigmaZMvdStrip[
i]<<endl
134 <<
"\t\tsuo RefIndex = "<<refindexMvdStrip[
i]<<
135 ", suo ...Instance()->GetBranchId(fMvdStripBranch) = "<<
136 FairRootManager::Instance()->GetBranchId(fMvdStripBranch);
138 if( refindexMvdStrip[i]<0) {
139 cout<<
", electronic noise hit non associato ad alcuna MC track;"<<endl<<endl;
141 cout<<
", traccia MC a cui e' associato = "
142 << fMCtrack_of_Strip[
i]<<endl<<endl;
146 cout<<
" ------------------\n";
148 cout<<
"-----------------------------------------------------\n";
165 FairMCPoint* puntator,
172 cout <<
"\tStt iHit "<< i <<
" e n. punto MC ottenuto con RefIndex = "
175 cout<<
"hit di background da mixing!\n";
176 cout <<
" hit wire pos. in middle " << pSttTube->
GetPosition().X() <<
" " <<
180 ", suo drift radius = "<<dradius <<endl;
181 cout <<
" wire direction, X, Y, Z (Z direction set always positive)"
182 << WDX[
i]<<
" "<<WDY[
i]<<
" "<<WDZ[
i] <<endl;
184 cout <<
" hit X, Y, Z space position " << puntator->GetX() <<
" " <<
185 puntator->GetY() <<
" " << puntator->GetZ()<<endl;
186 cout <<
" hit wire pos. in middle " << pSttTube->
GetPosition().X() <<
" " <<
190 ", suo drift radius = "<<dradius <<endl;
191 cout <<
" wire direction, X, Y, Z (Z direction set always positive)"
192 << WDX[
i]<<
" "<<WDY[
i]<<
" "<<WDZ[
i] <<endl
193 <<
" this hit belongs to MC track n. "<<puntator->GetTrackID()<<endl;
211 FairMCPoint* puntator,
219 cout <<
"\tStt iHit "<< i <<
" e n. punto MC ottenuto con RefIndex = "
220 <<ipunto<<
", the straw was hit with tube ID = "<<tubeID<<endl;
222 cout<<
"hit di background da mixing!\n";
223 cout <<
" hit wire pos. in middle " << pSttTube->
GetPosition().X() <<
" " <<
227 ", suo drift radius = "<<dradius <<
", semilength "<<pSttTube->
GetHalfLength()<<endl;
228 cout <<
" wire direction, X, Y, Z (Z direction set always positive)"
229 << WDX[
i]<<
" "<<WDY[
i]<<
" "<<WDZ[
i] <<endl;
231 cout <<
" hit X, Y, Z space position " << puntator->GetX() <<
" " <<
232 puntator->GetY() <<
" " << puntator->GetZ()<<endl;
233 cout <<
" hit wire pos. in middle " << pSttTube->
GetPosition().X() <<
" " <<
237 ", suo drift radius = "<<dradius <<
", semilength "<<pSttTube->
GetHalfLength() <<endl;
238 cout <<
" wire direction, X, Y, Z (Z direction set always positive)"
239 << WDX[
i]<<
" "<<WDY[
i]<<
" "<<WDZ[
i] <<endl
240 <<
" this hit belongs to MC track n. "<<puntator->GetTrackID()<<endl;
253 Short_t *ListMvdPixelHitsinTrack,
254 Short_t *ListMvdStripHitsinTrack,
255 Short_t *ListSttParHitsinTrack,
256 Short_t *ListSttSkewHitsinTrack,
257 Short_t *ListSciTilHitsinTrack,
258 Short_t *nMvdPixelHitsinTrack,
259 Short_t *nMvdStripHitsinTrack,
260 Short_t *nSttParHitsinTrack,
261 Short_t *nSttSkewHitsinTrack,
262 Short_t *nSciTilHitsinTrack,
265 int MAXMVDPIXELHITSINTRACK,
266 int MAXMVDSTRIPHITSINTRACK,
267 int MAXSCITILHITSINTRACK,
276 int i,j, nend, start;
289 cout<<
"da PndTrkTracking, inizia stampetta ---------------------------\n";
290 cout<<
"da PndTrkTracking, evt. "<<IVOLTE<<
", n. SttTrackCand totali = "
292 for( i= start; i< nend; i++){
293 cout<<
"\tcandidate n. "<<i<<
", keepit = "<<keepit[
i]<<
", Ox "<<Ox[
i]
294 <<
", Oy "<<Oy[
i]<<
", R "<<R[
i]<<
", FI0 "<<FI0[
i]<<
", KAPPA "<<KAPPA[
i]<<endl;
295 cout<<
"-----------------\n";
296 if(!keepit[i])
continue;
297 cout<<
"da PndTrkTracking --------------------------------------\n"<<
298 " SttTrackCand n. "<<i<<
"; n. Hits in Pixels associati = "
299 <<nMvdPixelHitsinTrack[
i]<<
" e loro lista \n";
300 for(j=0; j<nMvdPixelHitsinTrack[
i];j++){
301 cout<<
"\t\tMvd Pixel Hit n. "<<
302 ListMvdPixelHitsinTrack[i*MAXMVDPIXELHITSINTRACK+j]<<endl;
304 cout<<
"da PndTrkTracking --------------------------------------\n"<<
305 " SttTrackCand n. "<<i<<
"; n. Hits in Strips associati = "
306 <<nMvdStripHitsinTrack[
i]<<
" e loro lista \n";
307 for(j=0; j<nMvdStripHitsinTrack[
i];j++){
308 cout<<
"\t\tMvd Strip Hit n. "<<
309 ListMvdStripHitsinTrack[i*MAXMVDSTRIPHITSINTRACK+j]<<endl;
311 cout<<
"da PndTrkTracking --------------------------------------\n"<<
312 " SttTrackCand n. "<<i<<
"; n. || Hits in Stt in Track = "
313 <<nSttParHitsinTrack[
i]<<
" e loro lista \n";
314 for(j=0; j<nSttParHitsinTrack[
i];j++){
315 cout<<
"\t\t|| Stt Hit n. "<<
316 ListSttParHitsinTrack[i*MAXSTTHITSINTRACK+j]<<endl;
318 cout<<
"da PndTrkTracking --------------------------------------\n"<<
319 " SttTrackCand n. "<<i<<
"; n. skew Hits in Stt Track = "
320 <<nSttSkewHitsinTrack[
i]<<
" e loro lista \n";
321 for(j=0; j<nSttSkewHitsinTrack[
i];j++){
322 cout<<
"\t\tskew Stt Hit n. "<<
323 ListSttSkewHitsinTrack[i*MAXSTTHITSINTRACK+j]<<endl;
325 cout<<
"da PndTrkTracking --------------------------------------\n"<<
326 " SttTrackCand n. "<<i<<
"; n. SciTil Hits in Stt Track = "
327 <<nSciTilHitsinTrack[
i]<<
" e loro lista \n";
328 for(j=0; j<nSciTilHitsinTrack[
i];j++){
329 cout<<
"\t\tscitil Hit n. "<<
330 ListSciTilHitsinTrack[i*MAXSCITILHITSINTRACK+j]<<endl;
334 cout<<
"---------------fine stampetta----------------------"<<endl<<endl;
346 Short_t *ListMvdPixelHitsinTrack,
347 Short_t *ListMvdStripHitsinTrack,
348 Short_t *ListSttParHitsinTrack,
349 Short_t *ListSttSkewHitsinTrack,
350 Short_t *ListSciTilHitsinTrack,
351 Short_t *nMvdPixelHitsinTrack,
352 Short_t *nMvdStripHitsinTrack,
353 Short_t *nSttParHitsinTrack,
354 Short_t *nSttSkewHitsinTrack,
355 Short_t *nSciTilHitsinTrack,
358 int MAXMVDPIXELHITSINTRACK,
359 int MAXMVDSTRIPHITSINTRACK,
360 int MAXSCITILHITSINTRACK,
369 int i,j, nend, start;
382 cout<<
"inizia stampetta ---------------------------\n";
383 cout<<
"\tn. SttTrackCand totali = "
385 for( i= start; i< nend; i++){
386 cout<<
"\tcandidate n. "<<i<<
", keepit = "<<keepit[
i]<<
", Ox "<<Ox[
i]
387 <<
", Oy "<<Oy[
i]<<
", R "<<R[
i]<<
", FI0 "<<FI0[
i]<<
", KAPPA "<<KAPPA[
i]<<endl;
388 cout<<
"-----------------\n";
389 if(!keepit[i])
continue;
390 cout<<
" --------------------------------------\n"<<
391 " SttTrackCand n. "<<i<<
"; n. Hits in Pixels associati = "
392 <<nMvdPixelHitsinTrack[
i]<<
" e loro lista \n";
393 for(j=0; j<nMvdPixelHitsinTrack[
i];j++){
394 cout<<
"\t\tMvd Pixel Hit n. "<<
395 ListMvdPixelHitsinTrack[i*MAXMVDPIXELHITSINTRACK+j]<<endl;
397 cout<<
" --------------------------------------\n"<<
398 " SttTrackCand n. "<<i<<
"; n. Hits in Strips associati = "
399 <<nMvdStripHitsinTrack[
i]<<
" e loro lista \n";
400 for(j=0; j<nMvdStripHitsinTrack[
i];j++){
401 cout<<
"\t\tMvd Strip Hit n. "<<
402 ListMvdStripHitsinTrack[i*MAXMVDSTRIPHITSINTRACK+j]<<endl;
404 cout<<
" --------------------------------------\n"<<
405 " SttTrackCand n. "<<i<<
"; n. || Hits in Stt in Track = "
406 <<nSttParHitsinTrack[
i]<<
" e loro lista \n";
407 for(j=0; j<nSttParHitsinTrack[
i];j++){
408 cout<<
"\t\t|| Stt Hit n. "<<
409 ListSttParHitsinTrack[i*MAXSTTHITSINTRACK+j]<<endl;
411 cout<<
" --------------------------------------\n"<<
412 " SttTrackCand n. "<<i<<
"; n. skew Hits in Stt Track = "
413 <<nSttSkewHitsinTrack[
i]<<
" e loro lista \n";
414 for(j=0; j<nSttSkewHitsinTrack[
i];j++){
415 cout<<
"\t\tskew Stt Hit n. "<<
416 ListSttSkewHitsinTrack[i*MAXSTTHITSINTRACK+j]<<endl;
418 cout<<
" --------------------------------------\n"<<
419 " SttTrackCand n. "<<i<<
"; n. SciTil Hits in Stt Track = "
420 <<nSciTilHitsinTrack[
i]<<
" e loro lista \n";
421 for(j=0; j<nSciTilHitsinTrack[
i];j++){
422 cout<<
"\t\tscitil Hit n. "<<
423 ListSciTilHitsinTrack[i*MAXSCITILHITSINTRACK+j]<<endl;
427 cout<<
"---------------fine stampetta----------------------"<<endl<<endl;
void stampetta(int IVOLTE, bool *keepit, Short_t *ListMvdPixelHitsinTrack, Short_t *ListMvdStripHitsinTrack, Short_t *ListSttParHitsinTrack, Short_t *ListSttSkewHitsinTrack, Short_t *ListSciTilHitsinTrack, Short_t *nMvdPixelHitsinTrack, Short_t *nMvdStripHitsinTrack, Short_t *nSttParHitsinTrack, Short_t *nSttSkewHitsinTrack, Short_t *nSciTilHitsinTrack, Short_t nTotalCand, Short_t Cand, int maxmvdpixelhitsintrack, int maxmvdstriphitsintrack, int maxscitilhitsintrack, int maxstthitsintrack, Double_t *R, Double_t *Ox, Double_t *Oy, Double_t *FI0, Double_t *KAPPA)
friend F32vec4 sqrt(const F32vec4 &a)
void stampaSttHits2(Short_t iHit, Short_t ipunto, Double_t dradius, Double_t *WDX, Double_t *WDY, Double_t *WDZ, FairMCPoint *puntator, PndSttTube *pSttTube, Short_t tubeID)
const int MAXSTTHITSINTRACK
void stampaSttHits(Short_t iHit, Short_t ipunto, Double_t dradius, Double_t *WDX, Double_t *WDY, Double_t *WDZ, FairMCPoint *puntator, PndSttTube *pSttTube)
void stampetta2(bool *keepit, Short_t *ListMvdPixelHitsinTrack, Short_t *ListMvdStripHitsinTrack, Short_t *ListSttParHitsinTrack, Short_t *ListSttSkewHitsinTrack, Short_t *ListSciTilHitsinTrack, Short_t *nMvdPixelHitsinTrack, Short_t *nMvdStripHitsinTrack, Short_t *nSttParHitsinTrack, Short_t *nSttSkewHitsinTrack, Short_t *nSciTilHitsinTrack, Short_t nTotalCand, Short_t Cand, int maxmvdpixelhitsintrack, int maxmvdstriphitsintrack, int maxscitilhitsintrack, int maxstthitsintrack, Double_t *R, Double_t *Ox, Double_t *Oy, Double_t *FI0, Double_t *KAPPA)
void stampaMvdHits(char *fMvdPixelBranch, char *fMvdStripBranch, Short_t nMvdPixelHit, Short_t nMvdStripHit, Double_t *refindexMvdPixel, Double_t *refindexMvdStrip, Double_t *sigmaXMvdPixel, Double_t *sigmaXMvdStrip, Double_t *sigmaYMvdPixel, Double_t *sigmaYMvdStrip, Double_t *sigmaZMvdPixel, Double_t *sigmaZMvdStrip, Double_t *XMvdPixel, Double_t *XMvdStrip, Double_t *YMvdPixel, Double_t *YMvdStrip, Double_t *ZMvdPixel, Double_t *ZMvdStrip)
void stampaMvdHits2(char *fMvdPixelBranch, char *fMvdStripBranch, Short_t nMvdPixelHit, Short_t nMvdStripHit, Double_t *refindexMvdPixel, Double_t *refindexMvdStrip, Short_t *fMCtrack_of_Pixel, Short_t *fMCtrack_of_Strip, Double_t *sigmaXMvdPixel, Double_t *sigmaXMvdStrip, Double_t *sigmaYMvdPixel, Double_t *sigmaYMvdStrip, Double_t *sigmaZMvdPixel, Double_t *sigmaZMvdStrip, Double_t *XMvdPixel, Double_t *XMvdStrip, Double_t *YMvdPixel, Double_t *YMvdStrip, Double_t *ZMvdPixel, Double_t *ZMvdStrip)