//_____________________________________________________________________
AliFMDBackgroundCorrection::AliFMDInputBG::AliFMDInputBG(Bool_t hits_not_trackref) :
- AliFMDInput(),
+ AliFMDInput("galice.root"),
fPrimaryArray(),
fHitArray(),
fPrim(0),
fPrevTrack(-1),
fPrevDetector(-1),
fPrevRing('Q'),
+ fPrevSec(-1),
fNbinsEta(100)
{
AddLoad(kTracks);
if(charge != 0 &&
(nTrack != fPrevTrack ||
det != fPrevDetector ||
- ring != fPrevRing)) {
+ ring != fPrevRing) ||
+ sec != fPrevSec) {
Double_t x,y,z;
AliFMDGeometry* fmdgeo = AliFMDGeometry::Instance();
fmdgeo->Detector2XYZ(det,ring,sec,strip,x,y,z);
Float_t eta = -1*TMath::Log(TMath::Tan(0.5*theta));
hHits->Fill(eta,phi);
fHits++;
- fPrevDetector = det;
- fPrevRing = ring;
+
}
- fPrevTrack = nTrack;
+ fPrevDetector = det;
+ fPrevRing = ring;
+ fPrevSec = sec;
+ fPrevTrack = nTrack;
+
return kTRUE;
}
Int_t vertexBin = (Int_t)vertexBinDouble;
for(Int_t j=0;j<nTracks;j++) {
- TParticle* p = partStack->Particle(j);
- TDatabasePDG* pdgDB = TDatabasePDG::Instance();
- TParticlePDG* pdgPart = pdgDB->GetParticle(p->GetPdgCode());
- Float_t charge = (pdgPart ? pdgPart->Charge() : 0);
- Float_t phi = TMath::ATan2(p->Py(),p->Px());
+ TParticle* p = partStack->Particle(j);
+ TDatabasePDG* pdgDB = TDatabasePDG::Instance();
+ TParticlePDG* pdgPart = pdgDB->GetParticle(p->GetPdgCode());
+ Float_t charge = (pdgPart ? pdgPart->Charge() : 0);
+ Float_t phi = TMath::ATan2(p->Py(),p->Px());
if(phi<0) phi = phi+2*TMath::Pi();
if(p->Theta() == 0) continue;