TStopwatch timer;
timer.Start();
-
+ TH2F *h2 = new TH2F("h2"," Y vs. X",200,-100.,100.,200,-100.,100.);
// FILE *fpw = fopen("alipmdhits.dat","w");
AliRunLoader *fRunLoader = AliRunLoader::Open("galice.root");
}
fPMD = (AliPMD*)gAlice->GetDetector("PMD");
+
fPMDLoader = fRunLoader->GetLoader("PMDLoader");
+
if (fPMDLoader == 0x0)
{
printf("Can not find PMDLoader\n");
const Int_t kPi0 = 111;
const Int_t kGamma = 22;
- Int_t npmd;
- Int_t trackno;
- Int_t smnumber;
- Int_t trackpid;
- Int_t mtrackno;
- Int_t mtrackpid;
-
- Float_t xPos, yPos, zPos;
- Int_t xpad = -1, ypad = -1;
+ Int_t npmd;
+ Int_t trackno;
+ Int_t smnumber;
+ Int_t trackpid;
+ Int_t mtrackno;
+ Int_t mtrackpid;
+ Int_t xpad = -1, ypad = -1;
Float_t edep;
Float_t vx = -999.0, vy = -999.0, vz = -999.0;
+ Float_t xPos, yPos, zPos;
+ Float_t xx, yy;
+
+ AliPMDUtility cc;
for (Int_t ievt = 0; ievt < nevt; ievt++)
{
for (Int_t track=0; track<ntracks;track++)
{
- gAlice->ResetHits();
+ gAlice->GetMCApp()->ResetHits();
treeH->GetEvent(track);
if (fPMD)
{
//fprintf(fpw,"trackno = %d\n",trackno);
// get kinematics of the particles
-
+
TParticle* mparticle = gAlice->GetMCApp()->Particle(trackno);
trackpid = mparticle->GetPdgCode();
mtrackpid = trackpidOld;
}
+ //printf("mtrackno = %d mtrackpid = %d\n",mtrackno,mtrackpid);
+
xPos = fPMDHit->X();
yPos = fPMDHit->Y();
zPos = fPMDHit->Z();
+
+ Float_t time = fPMDHit->GetTime();
+ printf("++++++++++ time = %f\n",time);
+
edep = fPMDHit->GetEnergy();
Int_t vol1 = fPMDHit->GetVolume(1); // Column
Int_t vol2 = fPMDHit->GetVolume(2); // Row
- Int_t vol3 = fPMDHit->GetVolume(3); // UnitModule
- Int_t vol6 = fPMDHit->GetVolume(6); // SuperModule
+
+ Int_t vol3 = fPMDHit->GetVolume(4); // UnitModule
+
// -----------------------------------------//
// For Super Module 1 & 2 //
// nrow = 48, ncol = 96 //
// -----------------------------------------//
- smnumber = (vol6-1)*6 + vol3;
-
- if (vol6 == 1 || vol6 == 2)
+ if (vol3 < 24)
{
- xpad = vol2;
- ypad = vol1;
+ smnumber = vol3;
}
- else if (vol6 == 3 || vol6 == 4)
+ else
{
- xpad = vol1;
- ypad = vol2;
+ smnumber = vol3 - 24;
+ }
+
+ xpad = vol1;
+ ypad = vol2;
+
+ if(zPos > 361.5)
+ {
+ cc.RectGeomCellPos(smnumber,xpad,ypad,xx,yy);
+ h2->Fill(xx,yy);
}
-
- //printf("Zposition = %f Edeposition = %f",zPos,edep);
- Float_t zposition = TMath::Abs(zPos);
}
}
} // Track Loop ended
}
+
+ h2->Draw();
+
fRunLoader->UnloadgAlice();
fRunLoader->UnloadHeader();
fRunLoader->UnloadKinematics();
-
fPMDLoader->UnloadHits();
timer.Stop();