// Date: Wed Jul 9 18:38:30 CEST 2014 //
// New approch to find particle ratio to reduce memory //
// (Test Only) //
+// Copied from NetParticle Classes
+// Origin: Authors: Jochen Thaeder <jochen@thaeder.de>
+// Michael Weber <m.weber@cern.ch>
//=========================================================================//
#include "TMath.h"
AliEbyEPidRatioEffCont::AliEbyEPidRatioEffCont() :
AliEbyEPidRatioBase("EffCont", "EffCont"),
fLabelsRec(NULL),
- fHnEff(NULL),
- fHnCont(NULL) {
+ fHnEffMc(NULL),
+ fHnContMc(NULL),
+ fHnEffRec(NULL),
+ fHnContRec(NULL) {
// Constructor
AliLog::SetClassDebugLevel("AliEbyEPidRatioEffCont",10);
//________________________________________________________________________
void AliEbyEPidRatioEffCont::CreateHistograms() {
// Copied from NetParticle class
- Int_t binHnEff[20] = {AliEbyEPidRatioHelper::fgkfHistNBinsCent, AliEbyEPidRatioHelper::fgkfHistNBinsEta, // cent | etaMC
- AliEbyEPidRatioHelper::fgkfHistNBinsRap, AliEbyEPidRatioHelper::fgkfHistNBinsPhi, // yMC | phiMC
- AliEbyEPidRatioHelper::fgkfHistNBinsPt, AliEbyEPidRatioHelper::fgkfHistNBinsSign, // ptMC | signMC
- 2, 2 , 2 , // findable | recStatus | pidStatus
- AliEbyEPidRatioHelper::fgkfHistNBinsEta, AliEbyEPidRatioHelper::fgkfHistNBinsRap, // etaRec | yRec
- AliEbyEPidRatioHelper::fgkfHistNBinsPhi, AliEbyEPidRatioHelper::fgkfHistNBinsPt, // phiRec | ptRec
- AliEbyEPidRatioHelper::fgkfHistNBinsSign, // signRec
- AliEbyEPidRatioHelper::fgkfHistNBinsEta, AliEbyEPidRatioHelper::fgkfHistNBinsRap, // deltaEta | deltaY
- 2*AliEbyEPidRatioHelper::fgkfHistNBinsPhi+1, 2*AliEbyEPidRatioHelper::fgkfHistNBinsPt+1, // deltaPhi | deltaPt
- AliEbyEPidRatioHelper::fgkfHistNBinsSign+2, 4}; // deltaSign
+ Int_t binHnEff[10] = { AliEbyEPidRatioHelper::fgkfHistNBinsCent, 4,
+ AliEbyEPidRatioHelper::fgkfHistNBinsSign, 2, 2 , 2 ,
+ AliEbyEPidRatioHelper::fgkfHistNBinsEta,
+ AliEbyEPidRatioHelper::fgkfHistNBinsRap,
+ AliEbyEPidRatioHelper::fgkfHistNBinsPhi,
+ AliEbyEPidRatioHelper::fgkfHistNBinsPt};
+
+ Double_t minHnEff[10] = {AliEbyEPidRatioHelper::fgkfHistRangeCent[0], -0.5,
+ AliEbyEPidRatioHelper::fgkfHistRangeSign[0], -0.5, -0.5, -0.5,
+ AliEbyEPidRatioHelper::fgkfHistRangeEta[0],
+ AliEbyEPidRatioHelper::fgkfHistRangeRap[0],
+ AliEbyEPidRatioHelper::fgkfHistRangePhi[0],
+ AliEbyEPidRatioHelper::fgkfHistRangePt[0]};
+
+
+ Double_t maxHnEff[10] = {AliEbyEPidRatioHelper::fgkfHistRangeCent[1], 3.5,
+ AliEbyEPidRatioHelper::fgkfHistRangeSign[1], 1.5, 1.5, 1.5,
+ AliEbyEPidRatioHelper::fgkfHistRangeEta[1],
+ AliEbyEPidRatioHelper::fgkfHistRangeRap[1],
+ AliEbyEPidRatioHelper::fgkfHistRangePhi[1],
+ AliEbyEPidRatioHelper::fgkfHistRangePt[1]};
+
+ fHnEffMc = new THnSparseF("hnEffMc", "cent:pid:SignMC:findable:recStatus:pidStatus:etaMC:yMC:phiMC:ptMC", 10, binHnEff, minHnEff, maxHnEff);
+ fHnEffRec = new THnSparseF("hnEffRec", "cent:pid:SignMC:findable:recStatus:pidStatus:etaRec:yRec:phiRec:ptRec", 10, binHnEff, minHnEff, maxHnEff);
+ //fHnEffRecMc = new THnSparseF("hnEffRecMMc", "cent:pid:SignMC:findable:recStatus:pidStatus:deltaEta:deltaY:deltaPhi:deltaPt" 10, binHnEff, minHnEff, maxHnEff);
+ fHnEffMc->Sumw2();
+ fHnEffRec->Sumw2();
+
- Double_t minHnEff[20] = {AliEbyEPidRatioHelper::fgkfHistRangeCent[0], AliEbyEPidRatioHelper::fgkfHistRangeEta[0],
- AliEbyEPidRatioHelper::fgkfHistRangeRap[0], AliEbyEPidRatioHelper::fgkfHistRangePhi[0],
- AliEbyEPidRatioHelper::fgkfHistRangePt[0], AliEbyEPidRatioHelper::fgkfHistRangeSign[0],
- -0.5, -0.5, -0.5,
- AliEbyEPidRatioHelper::fgkfHistRangeEta[0], AliEbyEPidRatioHelper::fgkfHistRangeRap[0],
- AliEbyEPidRatioHelper::fgkfHistRangePhi[0], AliEbyEPidRatioHelper::fgkfHistRangePt[0],
- AliEbyEPidRatioHelper::fgkfHistRangeSign[0],
- AliEbyEPidRatioHelper::fgkfHistRangeEta[0], AliEbyEPidRatioHelper::fgkfHistRangeRap[0],
- -1.*AliEbyEPidRatioHelper::fgkfHistRangePhi[1], -1.*AliEbyEPidRatioHelper::fgkfHistRangePt[1],
- AliEbyEPidRatioHelper::fgkfHistRangeSign[0]-1., -0.5};
-
- Double_t maxHnEff[20] = {AliEbyEPidRatioHelper::fgkfHistRangeCent[1], AliEbyEPidRatioHelper::fgkfHistRangeEta[1],
- AliEbyEPidRatioHelper::fgkfHistRangeRap[1], AliEbyEPidRatioHelper::fgkfHistRangePhi[1],
- AliEbyEPidRatioHelper::fgkfHistRangePt[1], AliEbyEPidRatioHelper::fgkfHistRangeSign[1],
- 1.5, 1.5, 1.5,
- AliEbyEPidRatioHelper::fgkfHistRangeEta[1], AliEbyEPidRatioHelper::fgkfHistRangeRap[1],
- AliEbyEPidRatioHelper::fgkfHistRangePhi[1], AliEbyEPidRatioHelper::fgkfHistRangePt[1],
- AliEbyEPidRatioHelper::fgkfHistRangeSign[1],
- AliEbyEPidRatioHelper::fgkfHistRangeEta[1], AliEbyEPidRatioHelper::fgkfHistRangeRap[1],
- AliEbyEPidRatioHelper::fgkfHistRangePhi[1], AliEbyEPidRatioHelper::fgkfHistRangePt[1],
- AliEbyEPidRatioHelper::fgkfHistRangeSign[1]+1., 3.5};
-
- fHnEff = new THnSparseF("hnEff", "cent:etaMC:yMC:phiMC:ptMC:signMC:findable:recStatus:pidStatus:etaRec:yRec:phiRec:ptRec:signRec:deltaEta:deltaY:deltaPhi:deltaPt:deltaSign:PID",
- 20, binHnEff, minHnEff, maxHnEff);
- fHnEff->Sumw2();
-
- fHnEff->GetAxis(0)->SetTitle("centrality"); // 0-5|5-10|10-20|20-30|30-40|40-50|50-60|60-70|70-80|80-90 --> 10 bins
- fHnEff->GetAxis(1)->SetTitle("#eta_{MC}"); // eta [-0.9, 0.9]
- fHnEff->GetAxis(2)->SetTitle("#it{y}_{MC}"); // rapidity [-0.5, 0.5]
- fHnEff->GetAxis(3)->SetTitle("#varphi_{MC} (rad)"); // phi [ 0. , 2Pi]
- fHnEff->GetAxis(4)->SetTitle("#it{p}_{T,MC} (GeV/#it{c})"); // pT [ 0.2, 2.3]
+
+ fHnEffMc->GetAxis(0)->SetTitle("centrality"); // 0-5|5-10|10-20|20-30|30-40|40-50|50-60|60-70|70-80|80-90 --> 10 bins
+ fHnEffMc->GetAxis(1)->SetTitle("N_{ch}|N_{#pi}|N_{K}|N_{p}"); // 0 | 1 | 2 | 3
+ fHnEffMc->GetAxis(2)->SetTitle("sign"); // -1 | 0 | +1
+ fHnEffMc->GetAxis(3)->SetTitle("findable"); // 0 not findable | 1 findable
+ fHnEffMc->GetAxis(4)->SetTitle("recStatus"); // 0 not reconstructed | 1 reconstructed
+ fHnEffMc->GetAxis(5)->SetTitle("recPid"); // 0 not accepted | 1 accepted
+ fHnEffMc->GetAxis(6)->SetTitle("#eta_{MC}"); // eta [-0.9, 0.9]
+ fHnEffMc->GetAxis(7)->SetTitle("#it{y}_{MC}"); // rapidity [-0.5, 0.5]
+ fHnEffMc->GetAxis(8)->SetTitle("#varphi_{MC} (rad)"); // phi [ 0. , 2Pi]
+ fHnEffMc->GetAxis(9)->SetTitle("#it{p}_{T,MC} (GeV/#it{c})"); // pT [ 0.2, 2.3]
- fHnEff->GetAxis(5)->SetTitle("sign"); // -1 | 0 | +1
- fHnEff->GetAxis(6)->SetTitle("findable"); // 0 not findable | 1 findable
- fHnEff->GetAxis(7)->SetTitle("recStatus"); // 0 not reconstructed | 1 reconstructed
- fHnEff->GetAxis(8)->SetTitle("recPid"); // 0 not accepted | 1 accepted
-
- fHnEff->GetAxis(9)->SetTitle("#eta_{Rec}"); // eta [-0.9, 0.9]
- fHnEff->GetAxis(10)->SetTitle("#it{y}_{Rec}"); // rapidity [-0.5, 0.5]
- fHnEff->GetAxis(11)->SetTitle("#varphi_{Rec} (rad)"); // phi [ 0. , 2Pi]
- fHnEff->GetAxis(12)->SetTitle("#it{p}_{T,Rec} (GeV/#it{c})"); // pt [ 0.2, 2.3]
- fHnEff->GetAxis(13)->SetTitle("sign"); // -1 | 0 | +1
-
- fHnEff->GetAxis(14)->SetTitle("#eta_{MC}-#eta_{Rec}"); // eta [-0.9, 0.9]
- fHnEff->GetAxis(15)->SetTitle("#it{y}_{MC}-#it{y}_{Rec}"); // rapidity [-0.5, 0.5]
- fHnEff->GetAxis(16)->SetTitle("#varphi_{MC}-#varphi_{Rec} (rad)"); // phi [ -2Pi , 2Pi]
- fHnEff->GetAxis(17)->SetTitle("#it{p}_{T,MC}-#it{p}_{T,Rec} (GeV/#it{c})"); // pt [ -2.3, 2.3]
- fHnEff->GetAxis(18)->SetTitle("sign_{MC}-sign_{Rec}"); // -2 | 0 | +2
- fHnEff->GetAxis(19)->SetTitle("N_{ch}|N_{#pi}|N_{K}|N_{p}"); // 0 | 1 | 2 | 3
-
- fHelper->BinLogAxis(fHnEff, 4);
- fHelper->BinLogAxis(fHnEff, 12);
+
+ fHnEffRec->GetAxis(0)->SetTitle("centrality"); // 0-5|5-10|10-20|20-30|30-40|40-50|50-60|60-70|70-80|80-90 --> 10 bins
+ fHnEffRec->GetAxis(1)->SetTitle("N_{ch}|N_{#pi}|N_{K}|N_{p}"); // 0 | 1 | 2 | 3
+ fHnEffRec->GetAxis(2)->SetTitle("sign"); // -1 | 0 | +1
+ fHnEffRec->GetAxis(3)->SetTitle("findable"); // 0 not findable | 1 findable
+ fHnEffRec->GetAxis(4)->SetTitle("recStatus"); // 0 not reconstructed | 1 reconstructed
+ fHnEffRec->GetAxis(5)->SetTitle("recPid"); // 0 not accepted | 1 accepted
+ fHnEffRec->GetAxis(6)->SetTitle("#eta_{Rec}"); // eta [-0.9, 0.9]
+ fHnEffRec->GetAxis(7)->SetTitle("#it{y}_{Rec}"); // rapidity [-0.5, 0.5]
+ fHnEffRec->GetAxis(8)->SetTitle("#varphi_{Rec} (rad)"); // phi [ 0. , 2Pi]
+ fHnEffRec->GetAxis(9)->SetTitle("#it{p}_{T,Rec} (GeV/#it{c})"); // pt [ 0.2, 2.3]
+
+ fHelper->BinLogAxis(fHnEffMc, 9);
+ fHelper->BinLogAxis(fHnEffRec, 9);
/*
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Copied from NetParticle
// -- Create THnSparse - Cont
// ------------------------------------------------------------------
- Int_t binHnCont[18] = {AliEbyEPidRatioHelper::fgkfHistNBinsCent, AliEbyEPidRatioHelper::fgkfHistNBinsEta, // cent | etaMC
- AliEbyEPidRatioHelper::fgkfHistNBinsRap, AliEbyEPidRatioHelper::fgkfHistNBinsPhi, // yMC | phiMC
- AliEbyEPidRatioHelper::fgkfHistNBinsPt, AliEbyEPidRatioHelper::fgkfHistNBinsSign, // ptMC | signMC=contSign
- 8, // contPart |
- AliEbyEPidRatioHelper::fgkfHistNBinsEta, AliEbyEPidRatioHelper::fgkfHistNBinsRap, // etaRec | yRec
- AliEbyEPidRatioHelper::fgkfHistNBinsPhi, AliEbyEPidRatioHelper::fgkfHistNBinsPt, // phiRec | ptRec
- AliEbyEPidRatioHelper::fgkfHistNBinsSign, // signRec
- AliEbyEPidRatioHelper::fgkfHistNBinsEta, AliEbyEPidRatioHelper::fgkfHistNBinsRap, // deltaEta | deltaY
- 2*AliEbyEPidRatioHelper::fgkfHistNBinsPhi+1, 2*AliEbyEPidRatioHelper::fgkfHistNBinsPt+1, // deltaPhi | deltaPt
- AliEbyEPidRatioHelper::fgkfHistNBinsSign+2, 4}; // deltaSign| pid 0-3
+ Int_t binHnCont[8] = {AliEbyEPidRatioHelper::fgkfHistNBinsCent, 4,
+ AliEbyEPidRatioHelper::fgkfHistNBinsSign, 8,
+ AliEbyEPidRatioHelper::fgkfHistNBinsEta,
+ AliEbyEPidRatioHelper::fgkfHistNBinsRap,
+ AliEbyEPidRatioHelper::fgkfHistNBinsPhi,
+ AliEbyEPidRatioHelper::fgkfHistNBinsPt};
- Double_t minHnCont[18] = {AliEbyEPidRatioHelper::fgkfHistRangeCent[0], AliEbyEPidRatioHelper::fgkfHistRangeEta[0],
- AliEbyEPidRatioHelper::fgkfHistRangeRap[0], AliEbyEPidRatioHelper::fgkfHistRangePhi[0],
- AliEbyEPidRatioHelper::fgkfHistRangePt[0], AliEbyEPidRatioHelper::fgkfHistRangeSign[0],
- 0.5,
- AliEbyEPidRatioHelper::fgkfHistRangeEta[0], AliEbyEPidRatioHelper::fgkfHistRangeRap[0],
- AliEbyEPidRatioHelper::fgkfHistRangePhi[0], AliEbyEPidRatioHelper::fgkfHistRangePt[0],
- AliEbyEPidRatioHelper::fgkfHistRangeSign[0],
- AliEbyEPidRatioHelper::fgkfHistRangeEta[0], AliEbyEPidRatioHelper::fgkfHistRangeRap[0],
- -1.*AliEbyEPidRatioHelper::fgkfHistRangePhi[1], -1.*AliEbyEPidRatioHelper::fgkfHistRangePt[1],
- AliEbyEPidRatioHelper::fgkfHistRangeSign[0]-1., -0.5};
-
+ Double_t minHnCont[8] = {AliEbyEPidRatioHelper::fgkfHistRangeCent[0], -0.5,
+ AliEbyEPidRatioHelper::fgkfHistRangeSign[0], 0.5,
+ AliEbyEPidRatioHelper::fgkfHistRangeEta[0],
+ AliEbyEPidRatioHelper::fgkfHistRangeRap[0],
+ AliEbyEPidRatioHelper::fgkfHistRangePhi[0],
+ AliEbyEPidRatioHelper::fgkfHistRangePt[0]};
- Double_t maxHnCont[18] = {AliEbyEPidRatioHelper::fgkfHistRangeCent[1], AliEbyEPidRatioHelper::fgkfHistRangeEta[1],
- AliEbyEPidRatioHelper::fgkfHistRangeRap[1], AliEbyEPidRatioHelper::fgkfHistRangePhi[1],
- AliEbyEPidRatioHelper::fgkfHistRangePt[1], AliEbyEPidRatioHelper::fgkfHistRangeSign[1],
- 8.5,
- AliEbyEPidRatioHelper::fgkfHistRangeEta[1], AliEbyEPidRatioHelper::fgkfHistRangeRap[1],
- AliEbyEPidRatioHelper::fgkfHistRangePhi[1], AliEbyEPidRatioHelper::fgkfHistRangePt[1],
- AliEbyEPidRatioHelper::fgkfHistRangeSign[1],
- AliEbyEPidRatioHelper::fgkfHistRangeEta[1], AliEbyEPidRatioHelper::fgkfHistRangeRap[1],
- AliEbyEPidRatioHelper::fgkfHistRangePhi[1], AliEbyEPidRatioHelper::fgkfHistRangePt[1],
- AliEbyEPidRatioHelper::fgkfHistRangeSign[1]+1., 3.5};
-
- fHnCont = new THnSparseF("hnCont", "cent:etaMC:yMC:phiMC:ptMC:signMC:contPart:etaRec:yRec:phiRec:ptRec:signRec:deltaEta:deltaY:deltaPhi:deltaPt:deltaSign:PID",
- 18, binHnCont, minHnCont, maxHnCont);
- fHnCont->Sumw2();
-
- fHnCont->GetAxis(0)->SetTitle("centrality"); // 0-5|5-10|10-20|20-30|30-40|40-50|50-60|60-70|70-80|80-90 --> 10 bins
- fHnCont->GetAxis(1)->SetTitle("#eta_{MC}"); // eta [-0.9,0.9]
- fHnCont->GetAxis(2)->SetTitle("#it{y}_{MC}"); // rapidity [-0.5, 0.5]
- fHnCont->GetAxis(3)->SetTitle("#varphi_{MC} (rad)"); // phi [ 0. ,2Pi]
- fHnCont->GetAxis(4)->SetTitle("#it{p}_{T,MC} (GeV/#it{c})"); // pT [ 0.2,2.3]
- fHnCont->GetAxis(5)->SetTitle("sign"); // -1 | 0 | +1
+ Double_t maxHnCont[8] = {AliEbyEPidRatioHelper::fgkfHistRangeCent[1], 3.5,
+ AliEbyEPidRatioHelper::fgkfHistRangeSign[1], 8.5,
+ AliEbyEPidRatioHelper::fgkfHistRangeEta[1],
+ AliEbyEPidRatioHelper::fgkfHistRangeRap[1],
+ AliEbyEPidRatioHelper::fgkfHistRangePhi[1],
+ AliEbyEPidRatioHelper::fgkfHistRangePt[1]};
- fHnCont->GetAxis(6)->SetTitle("contPart"); // 1 pi | 2 K | 3 p | 4 e | 5 mu | 6 other | 7 p from WeakDecay | 8 p from Material
+ fHnContMc = new THnSparseF("hnContMc", "cent:pid:SignMC:contPart:etaMC:yMC:phiMC:ptMC",8, binHnCont, minHnCont, maxHnCont);
+ fHnContRec = new THnSparseF("hnContRec", "cent:pid:SignRec:contPart:etaRec:yRec:phiRec:ptRec",8, binHnCont, minHnCont, maxHnCont);
+
+ fHnContMc->Sumw2();
+ fHnContRec->Sumw2();
+
+ fHnContMc->GetAxis(0)->SetTitle("centrality"); // 0-5|5-10|10-20|20-30|30-40|40-50|50-60|60-70|70-80|80-90 --> 10 bins
+ fHnContMc->GetAxis(1)->SetTitle("N_{ch}|N_{#pi}|N_{K}|N_{p}"); // 0 | 1 | 2 | 3
+ fHnContMc->GetAxis(2)->SetTitle("sign"); // -1 | 0 | +1
+ fHnContMc->GetAxis(3)->SetTitle("contPart"); // 1 pi | 2 K | 3 p | 4 e | 5 mu | 6 other | 7 p from WeakDecay | 8 p from Material
+ fHnContMc->GetAxis(4)->SetTitle("#eta_{MC}"); // eta [-0.9,0.9]
+ fHnContMc->GetAxis(5)->SetTitle("#it{y}_{MC}"); // rapidity [-0.5, 0.5]
+ fHnContMc->GetAxis(6)->SetTitle("#varphi_{MC} (rad)"); // phi [ 0. ,2Pi]
+ fHnContMc->GetAxis(7)->SetTitle("#it{p}_{T,MC} (GeV/#it{c})"); // pT [ 0.2,2.3]
+
+
+ fHnContRec->GetAxis(0)->SetTitle("centrality"); // 0-5|5-10|10-20|20-30|30-40|40-50|50-60|60-70|70-80|80-90 --> 10 bins
+ fHnContRec->GetAxis(1)->SetTitle("N_{ch}|N_{#pi}|N_{K}|N_{p}"); // 0 | 1 | 2 | 3
+ fHnContRec->GetAxis(2)->SetTitle("sign"); // -1 | 0 | +1
+ fHnContRec->GetAxis(3)->SetTitle("contPart"); // 1 pi | 2 K | 3 p | 4 e | 5 mu | 6 other | 7 p from WeakDecay | 8 p from Material
+ fHnContRec->GetAxis(4)->SetTitle("#eta_{Rec}"); // eta [-0.9, 0.9]
+ fHnContRec->GetAxis(5)->SetTitle("#it{y}_{Rec}"); // rapidity [-0.5, 0.5]
+ fHnContRec->GetAxis(6)->SetTitle("#varphi_{Rec} (rad)"); // phi [ 0. , 2Pi]
+ fHnContRec->GetAxis(7)->SetTitle("#it{p}_{T,Rec} (GeV/#it{c})"); // pt [ 0.2, 2.3]
- fHnCont->GetAxis(7)->SetTitle("#eta_{Rec}"); // eta [-0.9, 0.9]
- fHnCont->GetAxis(8)->SetTitle("#it{y}_{Rec}"); // rapidity [-0.5, 0.5]
- fHnCont->GetAxis(9)->SetTitle("#varphi_{Rec} (rad)"); // phi [ 0. , 2Pi]
- fHnCont->GetAxis(10)->SetTitle("#it{p}_{T,Rec} (GeV/#it{c})"); // pt [ 0.2, 2.3]
- fHnCont->GetAxis(11)->SetTitle("sign"); // -1 | 0 | +1
-
- fHnCont->GetAxis(12)->SetTitle("#eta_{MC}-#eta_{Rec}"); // eta [-0.9, 0.9]
- fHnCont->GetAxis(13)->SetTitle("#it{y}_{MC}-#it{y}_{Rec}"); // rapidity [-0.5, 0.5]
- fHnCont->GetAxis(14)->SetTitle("#varphi_{MC}-#varphi_{Rec} (rad)"); // phi [ -2Pi , 2Pi]
- fHnCont->GetAxis(15)->SetTitle("#it{p}_{T,MC}-#it{p}_{T,Rec} (GeV/#it{c})"); // pt [ -2.3, 2.3]
- fHnCont->GetAxis(16)->SetTitle("sign_{MC}-sign_{Rec}"); // -2 | 0 | +2
- fHnCont->GetAxis(17)->SetTitle("N_{ch}|N_{#pi}|N_{K}|N_{p}"); // 0 | 1 | 2 | 3
-
- fHelper->BinLogAxis(fHnCont, 4);
- fHelper->BinLogAxis(fHnCont, 10);
+
+ // fHnCont->GetAxis(12)->SetTitle("#eta_{MC}-#eta_{Rec}"); // eta [-0.9, 0.9]
+ // fHnCont->GetAxis(13)->SetTitle("#it{y}_{MC}-#it{y}_{Rec}"); // rapidity [-0.5, 0.5]
+ // fHnCont->GetAxis(14)->SetTitle("#varphi_{MC}-#varphi_{Rec} (rad)"); // phi [ -2Pi , 2Pi]
+ // fHnCont->GetAxis(15)->SetTitle("#it{p}_{T,MC}-#it{p}_{T,Rec} (GeV/#it{c})"); // pt [ -2.3, 2.3]
+ // fHnCont->GetAxis(16)->SetTitle("sign_{MC}-sign_{Rec}"); // -2 | 0 | +2
+ // fHnCont->GetAxis(17)->SetTitle("N_{ch}|N_{#pi}|N_{K}|N_{p}"); // 0 | 1 | 2 | 3
+
+ fHelper->BinLogAxis(fHnContMc, 7);
+ fHelper->BinLogAxis(fHnContRec, 7);
return;
}
else if (fHelper->IsTrackAcceptedPID(track, pid, (AliPID::kProton))){ iPid = 3; gPdgCode = 2212;}
else iPid = 0;
+ // cout << " --- EFF ---- " << iPid << " " << gPdgCode << endl;
Double_t yP;
if (!fHelper->IsTrackAcceptedRapidity(track, yP, iPid))
else contPart = 6; // other
}
+ // cout << " --- CONT ---- " << iPid << " " << gPdgCode << endl;
+
// -- Get Reconstructed y
// yRec = y for identified particles | yRec = eta for charged particles
Double_t yRec = 0.;
deltaPhi -= TMath::TwoPi();
}
- Double_t hnCont[18] = {fCentralityBin,
- particle->Eta(),
- particle->Y(),
- particle->Phi(),
- particle->Pt(),
- signMC,
- contPart,
- track->Eta(),
- yRec,
- track->Phi(),
- track->Pt(),
- signRec,
- particle->Eta()-track->Eta(),
- particle->Y()-yRec,
- deltaPhi,
- particle->Pt()-track->Pt(),
- signMC-signRec,
- iPid};
- fHnCont->Fill(hnCont);
+ Double_t hnContMc[8] = {fCentralityBin,static_cast<Double_t>(iPid),signMC,static_cast<Double_t>(contPart),particle->Eta(),particle->Y(),particle->Phi(),particle->Pt()};
+ Double_t hnContRec[8] = {fCentralityBin,static_cast<Double_t>(iPid),signRec,static_cast<Double_t>(contPart), track->Eta(),yRec,track->Phi(),track->Pt()};
+ fHnContMc->Fill(hnContMc);
+ fHnContRec->Fill(hnContRec);
}
Int_t iPid = 0;
Int_t gPdgCode = 0;
- if ( particle->PdgCode() == 211 ) { iPid = 1; gPdgCode = 211;}
- if ( particle->PdgCode() == 321 ) { iPid = 1; gPdgCode = 321;}
- if ( particle->PdgCode() == 2212 ) { iPid = 1; gPdgCode = 2212;}
+ if ( TMath::Abs(particle->PdgCode()) == 211 ) { iPid = 1; gPdgCode = 211;}
+ else if ( TMath::Abs(particle->PdgCode()) == 321 ) { iPid = 2; gPdgCode = 321;}
+ else if ( TMath::Abs(particle->PdgCode()) == 2212 ) { iPid = 3; gPdgCode = 2212;}
else {iPid = 0; gPdgCode = 0;}
// -- Check if accepted in rapidity window -- for identified particles
Double_t yMC;
- if (iPid != 0 && !fHelper->IsParticleAcceptedRapidity(particle, yMC, iPid))
- continue;
-
- // -- Check if accepted in eta window -- for charged particles
- if (iPid == 0 && TMath::Abs(particle->Eta()) > etaRange[1])
- continue;
-
+ if (iPid != 0) {
+ if(!fHelper->IsParticleAcceptedRapidity(particle, yMC, iPid))
+ continue;
+ } else {
+ // -- Check if accepted in eta window -- for charged particles
+ if (TMath::Abs(particle->Eta()) > etaRange[1])
+ continue;
+ }
+
+ // cout << particle->PdgCode() << " " <<iPid << endl;
+
// -- Check if probeParticle / anti-probeParticle
// > skip check if PID is not required
- if (iPid == 0 && TMath::Abs(particle->PdgCode()) != gPdgCode)
+ if (iPid != 0) {
+ if (TMath::Abs(particle->PdgCode()) != gPdgCode)
continue;
+ }
// -- Get sign of particle
Float_t signMC = (particle->PdgCode() < 0) ? -1. : 1.;
// -- Get if particle is findable --- not availible for AODs yet
Float_t findable = (fESD) ? Float_t(fHelper->IsParticleFindable(idxMC)) : 1.;
+ // cout << findable << " " << fHelper->IsParticleFindable(idxMC)<< endl;
+
// -- Get recStatus and pidStatus
Float_t recStatus = 0.;
Float_t recPid = 0.;
deltaPhi -= TMath::TwoPi();
}
+ // if (signRec == 0) continue;
+
if(iPid != 0) {
- Double_t hnEff[20] = {fCentralityBin,
- particle->Eta(),
- particle->Y(),
- particle->Phi(),
- particle->Pt(),
- signMC,
- findable,
- recStatus,
- recPid,
- etaRec,
- yRec,
- phiRec,
- ptRec,
- signRec,
- particle->Eta()-etaRec,
- particle->Y()-yRec,
- deltaPhi,
- particle->Pt()-ptRec,
- signMC-signRec,
- 0};
- fHnEff->Fill(hnEff);
+ Double_t hnEffMc[10] = {fCentralityBin,0,
+ static_cast<Double_t>(signMC),
+ static_cast<Double_t>(findable),
+ static_cast<Double_t>(recStatus),
+ static_cast<Double_t>(recPid),
+ particle->Eta(), particle->Y(), particle->Phi(),particle->Pt()};
+ Double_t hnEffRec[10] = {fCentralityBin,0,
+ static_cast<Double_t>(signRec),
+ static_cast<Double_t>(findable),
+ static_cast<Double_t>(recStatus),
+ static_cast<Double_t>(recPid),etaRec, yRec, phiRec, ptRec};
+ fHnEffMc->Fill(hnEffMc);
+ fHnEffRec->Fill(hnEffRec);
}
+ Double_t hnEffMc[10] = {fCentralityBin,static_cast<Double_t>(iPid),
+ static_cast<Double_t>(signMC),
+ static_cast<Double_t>(findable),
+ static_cast<Double_t>(recStatus),
+ static_cast<Double_t>(recPid),
+ particle->Eta(), particle->Y(), particle->Phi(),particle->Pt()};
+ Double_t hnEffRec[10] = {fCentralityBin,
+ static_cast<Double_t>(iPid),
+ static_cast<Double_t>(signRec),
+ static_cast<Double_t>(findable),
+ static_cast<Double_t>(recStatus),
+ static_cast<Double_t>(recPid),etaRec, yRec, phiRec, ptRec};
+ fHnEffMc->Fill(hnEffMc);
+ fHnEffRec->Fill(hnEffRec);
- Double_t hnEff[20] = {fCentralityBin,
- particle->Eta(),
- particle->Y(),
- particle->Phi(),
- particle->Pt(),
- signMC,
- findable,
- recStatus,
- recPid,
- etaRec,
- yRec,
- phiRec,
- ptRec,
- signRec,
- particle->Eta()-etaRec,
- particle->Y()-yRec,
- deltaPhi,
- particle->Pt()-ptRec,
- signMC-signRec,
- iPid};
- fHnEff->Fill(hnEff);
+
+ // cout << signMC << " " << signRec << " " << iPid << " " << gPdgCode << endl;
} // for (Int_t idxMC = 0; idxMC < nPart; ++idxMC) {