";;P_{T} [GeV/c];N_{points}",
fNBinsY,fMinY,fMaxY,
fNBinsPt,fMinPt,fMaxPt,
- 100,0,200);
+ 50,0,200);
if(fProtonAnalysisBase->GetEtaMode())
gHistESDInitYPtProtons->GetXaxis()->SetTitle("#eta");
else
";;P_{T} [GeV/c];N_{points}",
fNBinsY,fMinY,fMaxY,
fNBinsPt,fMinPt,fMaxPt,
- 100,0,200);
+ 50,0,200);
if(fProtonAnalysisBase->GetEtaMode())
gHistESDIdYPtProtons->GetXaxis()->SetTitle("#eta");
else
";;P_{T} [GeV/c];N_{points}",
fNBinsY,fMinY,fMaxY,
fNBinsPt,fMinPt,fMaxPt,
- 100,0,200);
+ 50,0,200);
if(fProtonAnalysisBase->GetEtaMode())
gHistESDRecIdYPtProtons->GetXaxis()->SetTitle("#eta");
else
";;P_{T} [GeV/c];N_{points}",
fNBinsY,fMinY,fMaxY,
fNBinsPt,fMinPt,fMaxPt,
- 100,0,200);
+ 50,0,200);
if(fProtonAnalysisBase->GetEtaMode())
gHistESDContamYPtProtons->GetXaxis()->SetTitle("#eta");
else
fAcceptedCutList->Add(gHistEtaPhiChi2PerTPCClusterSecondaryAntiProtonsPass);//eta-phi of secondary accepted ESD antiprotons
//eta-phi-number of TPC points for the dE/dx
TH3D *gHistEtaPhiTPCdEdxNPointsPrimaryProtonsPass = new TH3D("gHistEtaPhiTPCdEdxNPointsPrimaryProtonsPass",
- "Accepted primary protons;#eta;#phi;#chi^{2}/N_{clusters}(TPC)",
+ "Accepted primary protons;#eta;#phi;N_{points}(TPC)",
fNBinsY,fMinY,fMaxY,
100,0,360,
100,0,200);
gHistEtaPhiTPCdEdxNPointsPrimaryProtonsPass->GetXaxis()->SetTitleColor(1);
fAcceptedCutList->Add(gHistEtaPhiTPCdEdxNPointsPrimaryProtonsPass);//eta-phi of primary accepted ESD protons
TH3D *gHistEtaPhiTPCdEdxNPointsPrimaryAntiProtonsPass = new TH3D("gHistEtaPhiTPCdEdxNPointsPrimaryAntiProtonsPass",
- "Accepted primary antiprotons;#eta;#phi;#chi^{2}/N_{clusters}(TPC)",
+ "Accepted primary antiprotons;#eta;#phi;N_{points}(TPC)",
fNBinsY,fMinY,fMaxY,
100,0,360,
100,0,200);
gHistEtaPhiTPCdEdxNPointsPrimaryAntiProtonsPass->GetXaxis()->SetTitleColor(1);
fAcceptedCutList->Add(gHistEtaPhiTPCdEdxNPointsPrimaryAntiProtonsPass);//eta-phi of primary accepted ESD antiprotons
TH3D *gHistEtaPhiTPCdEdxNPointsSecondaryProtonsPass = new TH3D("gHistEtaPhiTPCdEdxNPointsSecondaryProtonsPass",
- "Accepted secondary protons;#eta;#phi;#chi^{2}/N_{clusters}(TPC)",
+ "Accepted secondary protons;#eta;#phi;N_{points}(TPC)",
fNBinsY,fMinY,fMaxY,
100,0,360,
100,0,200);
gHistEtaPhiTPCdEdxNPointsSecondaryProtonsPass->GetXaxis()->SetTitleColor(1);
fAcceptedCutList->Add(gHistEtaPhiTPCdEdxNPointsSecondaryProtonsPass);//eta-phi of secondary accepted ESD protons
TH3D *gHistEtaPhiTPCdEdxNPointsSecondaryAntiProtonsPass = new TH3D("gHistEtaPhiTPCdEdxNPointsSecondaryAntiProtonsPass",
- "Accepted secondary antiprotons;#eta;#phi;#chi^{2}/N_{clusters}(TPC)",
+ "Accepted secondary antiprotons;#eta;#phi;N_{points}(TPC)",
fNBinsY,fMinY,fMaxY,
100,0,360,
100,0,200);
fRejectedCutList->Add(gHistEtaPhiChi2PerTPCClusterSecondaryAntiProtonsReject);//eta-phi of secondary rejected ESD antiprotons
//eta-phi-number of TPC points for the dE/dx
TH3D *gHistEtaPhiTPCdEdxNPointsPrimaryProtonsReject = new TH3D("gHistEtaPhiTPCdEdxNPointsPrimaryProtonsReject",
- "Rejected primary protons;#eta;#phi;#chi^{2}/N_{clusters}(TPC)",
+ "Rejected primary protons;#eta;#phi;N_{points}(TPC)",
fNBinsY,fMinY,fMaxY,
100,0,360,
100,0,200);
gHistEtaPhiTPCdEdxNPointsPrimaryProtonsReject->GetXaxis()->SetTitleColor(1);
fRejectedCutList->Add(gHistEtaPhiTPCdEdxNPointsPrimaryProtonsReject);//eta-phi of primary rejected ESD protons
TH3D *gHistEtaPhiTPCdEdxNPointsPrimaryAntiProtonsReject = new TH3D("gHistEtaPhiTPCdEdxNPointsPrimaryAntiProtonsReject",
- "Rejected primary antiprotons;#eta;#phi;#chi^{2}/N_{clusters}(TPC)",
+ "Rejected primary antiprotons;#eta;#phi;N_{points}(TPC)",
fNBinsY,fMinY,fMaxY,
100,0,360,
100,0,200);
gHistEtaPhiTPCdEdxNPointsPrimaryAntiProtonsReject->GetXaxis()->SetTitleColor(1);
fRejectedCutList->Add(gHistEtaPhiTPCdEdxNPointsPrimaryAntiProtonsReject);//eta-phi of primary rejected ESD antiprotons
TH3D *gHistEtaPhiTPCdEdxNPointsSecondaryProtonsReject = new TH3D("gHistEtaPhiTPCdEdxNPointsSecondaryProtonsReject",
- "Rejected secondary protons;#eta;#phi;#chi^{2}/N_{clusters}(TPC)",
+ "Rejected secondary protons;#eta;#phi;N_{points}(TPC)",
fNBinsY,fMinY,fMaxY,
100,0,360,
100,0,200);
gHistEtaPhiTPCdEdxNPointsSecondaryProtonsReject->GetXaxis()->SetTitleColor(1);
fRejectedCutList->Add(gHistEtaPhiTPCdEdxNPointsSecondaryProtonsReject);//eta-phi of secondary rejected ESD protons
TH3D *gHistEtaPhiTPCdEdxNPointsSecondaryAntiProtonsReject = new TH3D("gHistEtaPhiTPCdEdxNPointsSecondaryAntiProtonsReject",
- "Rejected secondary antiprotons;#eta;#phi;#chi^{2}/N_{clusters}(TPC)",
+ "Rejected secondary antiprotons;#eta;#phi;N_{points}(TPC)",
fNBinsY,fMinY,fMaxY,
100,0,360,
100,0,200);
}
else
if((fProtonAnalysisBase->Rapidity(particle->Px(),particle->Py(),particle->Pz()) > fMaxY)||(fProtonAnalysisBase->Rapidity(particle->Px(),particle->Py(),particle->Pz()) < fMinY)) continue;
-
- //Double_t probability[5];
-
+
if(fUseCutsInEfficiency)
if(!fProtonAnalysisBase->IsAccepted(esd,vertex,track)) continue;
//reconstructed primary (anti)protons
if(pdgcode == 2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
if(label <= stack->GetNprimary()) {
if(fProtonAnalysisBase->GetEtaMode())
((TH2D *)(fEfficiencyList->At(6)))->Fill(particle->Eta(),
}//secondaries
}//initial protons
if(pdgcode == -2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
if(label <= stack->GetNprimary()) {
if(fProtonAnalysisBase->GetEtaMode())
((TH2D *)(fEfficiencyList->At(7)))->Fill(particle->Eta(),
//reconstructed primary (anti)protons
if(pdgcode == 2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
if(label <= stack->GetNprimary()) {
if(fProtonAnalysisBase->GetEtaMode())
((TH2D *)(fEfficiencyList->At(6)))->Fill(particle->Eta(),
}//secondaries
}//initial protons
if(pdgcode == -2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
if(label <= stack->GetNprimary()) {
if(fProtonAnalysisBase->GetEtaMode())
((TH2D *)(fEfficiencyList->At(7)))->Fill(particle->Eta(),
particle->Pt());
}//hadronic interactions
}//secondaries
- }//initial antiprotons
-
+ }//initial antiprotons
}//global tracking
}//track loop
labelArray.Reset();
//____________________________________________________________________//
void AliProtonQAAnalysis::RunPIDEfficiencyAnalysis(AliStack *const stack,
- AliESDEvent *esd) {
+ AliESDEvent *esd,
+ const AliESDVertex *vertex) {
Int_t nGoodTracks = esd->GetNumberOfTracks();
TArrayI labelArray(nGoodTracks);
Int_t labelCounter = 0;
Int_t nTPCpoints = track->GetTPCsignalN();
+ if(fUseCutsInEfficiency)
+ if(!fProtonAnalysisBase->IsAccepted(esd,vertex,track)) continue;
+
+ if(TMath::Abs(pdgcode) == 2212) {
+ if(fProtonAnalysisBase->GetEtaMode())
+ ((TH3D *)(fEfficiencyList->At(12)))->Fill(particle->Eta(),
+ particle->Pt(),nTPCpoints);
+ else
+ ((TH3D *)(fEfficiencyList->At(12)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),particle->Py(),particle->Pz()),particle->Pt(),nTPCpoints);
+ }
+
//pid
if(fProtonAnalysisBase->IsProton(track)) {
if(fProtonAnalysisBase->GetEtaMode())
//reconstructed primary (anti)protons
if(pdgcode == 2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
if(label <= stack->GetNprimary()) {
nESDProtons += 1;
if(fProtonAnalysisBase->GetEtaMode())
}//secondaries
}//initial protons
if(pdgcode == -2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
if(label <= stack->GetNprimary()) {
if(fProtonAnalysisBase->GetEtaMode())
((TH2D *)(fEfficiencyList->At(7)))->Fill(particle->Eta(),
}//hadronic interactions
}//secondaries
}//initial antiprotons
-
- //pid
- if(fProtonAnalysisBase->IsProton(track)) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(14)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(14)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
- if(TMath::Abs(pdgcode) == 2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(13)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(13)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
- }//properly identified as proton
- else {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(15)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(15)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
- }//contamination
- }//identified as proton
}//TPC only tracks
else {
if((particle->Pt() > fMaxPt)||(particle->Pt() < fMinPt)) continue;
//reconstructed primary (anti)protons
if(pdgcode == 2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(12)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
if(label <= stack->GetNprimary()) {
nESDProtons += 1;
if(fProtonAnalysisBase->GetEtaMode())
}//hadronic interactions
}//secondaries
}//initial antiprotons
-
- //pid
- if(fProtonAnalysisBase->IsProton(track)) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(14)))->Fill(particle->Eta(),
- particle->Pt());
- else ((TH2D *)(fEfficiencyList->At(14)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
- if(TMath::Abs(pdgcode) == 2212) {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(13)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(13)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
- }//properly identified as proton
- else {
- if(fProtonAnalysisBase->GetEtaMode())
- ((TH2D *)(fEfficiencyList->At(15)))->Fill(particle->Eta(),
- particle->Pt());
- else
- ((TH2D *)(fEfficiencyList->At(15)))->Fill(fProtonAnalysisBase->Rapidity(particle->Px(),
- particle->Py(),
- particle->Pz()),
- particle->Pt());
- }//contamination
- }//identified as proton
}//global tracking
}//track loop
//____________________________________________________________________//
void AliProtonQAAnalysis::RunVertexQA(AliGenEventHeader *header,
- AliStack *const stack,
AliESDEvent *const esd) {
//Runs the vertex QA
//MC vertex