]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGCF/EBYE/Fluctuations/AliHigherMomentsToyModel.cxx
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / EBYE / Fluctuations / AliHigherMomentsToyModel.cxx
index 284137a37fe5bf2884903a8d650f6c2b0191caed..eba0d0836dcd669b609bc4a9a0d6937369033a0e 100644 (file)
@@ -356,7 +356,8 @@ void AliHigherMomentsToyModel::doAODEvent(){
   }  
   
   
-  AliAODHeader *aodHeader = fAOD->GetHeader();
+  AliAODHeader *aodHeader = dynamic_cast<AliAODHeader*>(fAOD->GetHeader());
+  if(!aodHeader) AliFatal("Not a standard AOD");
   
   fCentrality = (Int_t)aodHeader->GetCentralityP()->GetCentralityPercentile(fCentralityEstimator.Data());
   /* Int_t cent = -1;
@@ -414,7 +415,8 @@ void AliHigherMomentsToyModel::doAODEvent(){
       Int_t gID = aodTrack1->GetID();
       
       //if( aodTrack->GetID() != (-aodTrack1->GetID() -1) ) continue;
-      newAodTrack = gID >= 0 ? aodTrack1 : fAOD->GetTrack(trackMap->GetValue(-1-gID)); //Take those global track who corresponds to TPC only track
+      newAodTrack = gID >= 0 ? aodTrack1 : dynamic_cast<AliAODTrack*>(fAOD->GetTrack(trackMap->GetValue(-1-gID))); //Take those global track who corresponds to TPC only track
+      if(!newAodTrack) AliFatal("Not a standard AOD");
       
       Float_t dxy = 0., dz = 0.;
       
@@ -468,11 +470,11 @@ void AliHigherMomentsToyModel::doAODEvent(){
        fTPCSig->Fill(newAodTrack->GetTPCmomentum(),tpcSignal);
        
        Float_t nsigmaTPCPID = -999.;
-       Float_t nsigmaTOFPID = -999.;
+       //Float_t nsigmaTOFPID = -999.;
        //Float_t nsigmaTPCTOFPID = -999.;
        
        nsigmaTPCPID = TMath::Abs(fPIDResponse->NumberOfSigmasTPC(newAodTrack,fParticleSpecies));
-       nsigmaTOFPID = TMath::Abs(fPIDResponse->NumberOfSigmasTOF(newAodTrack,fParticleSpecies));
+       //nsigmaTOFPID = TMath::Abs(fPIDResponse->NumberOfSigmasTOF(newAodTrack,fParticleSpecies));
        
        if ( nsigmaTPCPID < fNSigmaCut  ){
          
@@ -486,14 +488,14 @@ void AliHigherMomentsToyModel::doAODEvent(){
   
   
   
-  Double_t fContainerCh[3] = { fCentrality, nPlusCharge, nMinusCharge};
-  Double_t fContainerPid[3] = { fCentrality, nPartile, nAntiParticle};
+  Double_t fContainerCh[3] = { static_cast<Double_t>(fCentrality), nPlusCharge, nMinusCharge};
+  Double_t fContainerPid[3] = { static_cast<Double_t>(fCentrality), nPartile, nAntiParticle};
   
   
   fTHnCentNplusNminusCh->Fill(fContainerCh);
   
   if( fUsePid ){
-    
+    gPid = (Int_t)fParticleSpecies;
     fTHnCentNplusNminusPid[gPid]->Fill(fContainerPid);
     
     // cout << "nCentrality "<< fCentrality <<", nParticle="<< nPartile << ", nMinusParticle=" << nAntiParticle << endl;
@@ -573,7 +575,8 @@ void AliHigherMomentsToyModel::doMCAODEvent(){
     return;
   }
   
-  AliAODHeader *aodHeader = fAOD->GetHeader();
+  AliAODHeader *aodHeader = dynamic_cast<AliAODHeader*>(fAOD->GetHeader());
+  if(!aodHeader) AliFatal("Not a standard AOD");
   
   fCentrality = (Int_t)aodHeader->GetCentralityP()->GetCentralityPercentile(fCentralityEstimator.Data());
   
@@ -638,7 +641,8 @@ void AliHigherMomentsToyModel::doMCAODEvent(){
     
     //if( aodTrack->GetID() != (-aodTrack1->GetID() -1) ) continue;
     
-    newAodTrack = gID >= 0 ? aodTrack1 : fAOD->GetTrack(trackMap->GetValue(-1-gID)); //Take those global track who corresponds to TPC only track
+    newAodTrack = gID >= 0 ? aodTrack1 : dynamic_cast<AliAODTrack*>(fAOD->GetTrack(trackMap->GetValue(-1-gID))); //Take those global track who corresponds to TPC only track
+    if(!newAodTrack) AliFatal("Not a standard AOD");
     
   
     //cout << dxy << endl;
@@ -701,11 +705,11 @@ void AliHigherMomentsToyModel::doMCAODEvent(){
       fTPCSig->Fill(newAodTrack->GetTPCmomentum(),tpcSignal);
       
       Float_t nsigmaTPCPID = -999.;
-      Float_t nsigmaTOFPID = -999.;
+      //Float_t nsigmaTOFPID = -999.;
       //Float_t nsigmaTPCTOFPID = -999.;
       
       nsigmaTPCPID = TMath::Abs(fPIDResponse->NumberOfSigmasTPC(newAodTrack,fParticleSpecies));
-      nsigmaTOFPID = TMath::Abs(fPIDResponse->NumberOfSigmasTOF(newAodTrack,fParticleSpecies));
+      //nsigmaTOFPID = TMath::Abs(fPIDResponse->NumberOfSigmasTOF(newAodTrack,fParticleSpecies));
       
       if ( nsigmaTPCPID < fNSigmaCut  ){
 
@@ -722,13 +726,14 @@ void AliHigherMomentsToyModel::doMCAODEvent(){
   
   //cout << "nCentrality "<< fCentrality <<", nParticle="<< nPartile << ", nMinusParticle=" << nAntiParticle << endl; 
   
-  Double_t fContainerCh[3] = { fCentrality, nPlusCharge, nMinusCharge};
-  Double_t fContainerPid[3] = { fCentrality, nPartile, nAntiParticle};
+  Double_t fContainerCh[3] = { static_cast<Double_t>(fCentrality), nPlusCharge, nMinusCharge};
+  Double_t fContainerPid[3] = { static_cast<Double_t>(fCentrality), nPartile, nAntiParticle};
   
   fTHnCentNplusNminusCh->Fill(fContainerCh);  
   
   if( fUsePid ){
-    
+
+    gPid = (Int_t)fParticleSpecies;
     fTHnCentNplusNminusPid[gPid]->Fill(fContainerPid);
     
   }
@@ -774,8 +779,8 @@ void AliHigherMomentsToyModel::doMCAODEvent(){
   
   }//MC-Truth Track loop--
   
-  Double_t fContainerChTruth[3] = { fCentrality, nPlusChargeTruth, nMinusChargeTruth };
-  Double_t fContainerPidTruth[3] = { fCentrality, nPartileTruth, nAntiParticleTruth };
+  Double_t fContainerChTruth[3] = { static_cast<Double_t>(fCentrality), nPlusChargeTruth, nMinusChargeTruth };
+  Double_t fContainerPidTruth[3] = { static_cast<Double_t>(fCentrality), nPartileTruth, nAntiParticleTruth };
   
   //cout << "Cent=" << fCentrality << " MC-PlusChrgT=" << nPlusChargeTruth << " MC-MinusChrgT=" << nMinusChargeTruth << endl;
   
@@ -785,7 +790,7 @@ void AliHigherMomentsToyModel::doMCAODEvent(){
   fTHnCentNplusNminusChTruth->Fill(fContainerChTruth);  
   
   if( fUsePid ){
-    
+    gPid = (Int_t)fParticleSpecies;
     fTHnCentNplusNminusPidTruth[gPid]->Fill(fContainerPidTruth);
     
   }