]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGPP/TPC/AliPerformanceEff.cxx
TENDER becomes Tender
[u/mrichter/AliRoot.git] / PWGPP / TPC / AliPerformanceEff.cxx
index eeb3b936ee3ed30f254c8dd31be97df7dffa446a..efc8efa0175f4809e38092c626565be6af5eeb1b 100644 (file)
@@ -57,27 +57,7 @@ using namespace std;
 ClassImp(AliPerformanceEff)
 
 //_____________________________________________________________________________
-AliPerformanceEff::AliPerformanceEff():
-  AliPerformanceObject("AliPerformanceEff"),
-
-  // histograms
-  fEffHisto(0),
-  fEffSecHisto(0),
-
-  // Cuts 
-  fCutsRC(0), 
-  fCutsMC(0),
-
-  // histogram folder 
-  fAnalysisFolder(0)
-{
-  // default consttructor      
-  Init();
-}
-
-//_____________________________________________________________________________
-AliPerformanceEff::AliPerformanceEff(Char_t* name="AliPerformanceEff",Char_t*title="AliPerformanceEff",Int_t analysisMode=0, Bool_t hptGenerator=kFALSE):
-  AliPerformanceObject(name,title),
+AliPerformanceEff::AliPerformanceEff(const Char_t* name, const Char_t* title, Int_t analysisMode, Bool_t hptGenerator):  AliPerformanceObject(name,title),
 
   // histograms
   fEffHisto(0),
@@ -124,7 +104,7 @@ void AliPerformanceEff::Init()
   if (IsHptGenerator())  { 
         ptMax = 100.;
   } 
-   binsPt = CreateLogAxis(nPtBins,ptMin,ptMax);
+  binsPt = CreateLogAxis(nPtBins,ptMin,ptMax);
 
   /*
   Int_t nPtBins = 31;
@@ -140,7 +120,7 @@ void AliPerformanceEff::Init()
   //mceta:mcphi:mcpt:pid:recStatus:findable:charge
   Int_t binsEffHisto[9]={30,144,nPtBins,5,2,2,3,fgkMaxClones+1,fgkMaxFakes+1};
   Double_t minEffHisto[9]={-1.5,0.,ptMin,0.,0.,0.,-1.5,0,0};
-  Double_t maxEffHisto[9]={ 1.5,2.*TMath::Pi(), ptMax,5.,2.,2.,1.5,fgkMaxClones,fgkMaxFakes};
+  Double_t maxEffHisto[9]={ 1.5,2.*TMath::Pi(), ptMax,5.,2.,2.,1.5,fgkMaxClones+1,fgkMaxFakes+1};
 
   fEffHisto = new THnSparseF("fEffHisto","mceta:mcphi:mcpt:pid:recStatus:findable:charge:nclones:nfakes",9,binsEffHisto,minEffHisto,maxEffHisto);
   fEffHisto->SetBinEdges(2,binsPt);
@@ -159,7 +139,7 @@ void AliPerformanceEff::Init()
   //mceta:mcphi:mcpt:pid:recStatus:findable:mcR:mother_phi:mother_eta:charge
   Int_t binsEffSecHisto[12]={30,60,nPtBins,5,2,2,100,60,30,3,fgkMaxClones+1,fgkMaxFakes+1};
   Double_t minEffSecHisto[12]={-1.5,0.,ptMin,0.,0.,0.,0.,0.,-1.5,-1.5,0,0};
-  Double_t maxEffSecHisto[12]={ 1.5,2.*TMath::Pi(), ptMax,5.,2.,2.,200,2.*TMath::Pi(),1.5,1.5,fgkMaxClones,fgkMaxFakes};
+  Double_t maxEffSecHisto[12]={ 1.5,2.*TMath::Pi(), ptMax,5.,2.,2.,200,2.*TMath::Pi(),1.5,1.5,fgkMaxClones+1,fgkMaxFakes+1};
 
   fEffSecHisto = new THnSparseF("fEffSecHisto","mceta:mcphi:mcpt:pid:recStatus:findable:mcR:mother_phi:mother_eta:charge:nclones:nfakes",12,binsEffSecHisto,minEffSecHisto,maxEffSecHisto);
   fEffSecHisto->SetBinEdges(2,binsPt);
@@ -312,7 +292,7 @@ void AliPerformanceEff::ProcessTPC(AliMCEvent* const mcEvent, AliESDEvent *const
     else if (particle->GetPDG()->Charge() > 0)  charge = 1.;
 
     // Fill histograms
-    Double_t vEffHisto[9] = {mceta, mcphi, mcpt, pid, recStatus, findable, charge, nClones, nFakes}; 
+    Double_t vEffHisto[9] = {mceta, mcphi, mcpt, static_cast<Double_t>(pid), static_cast<Double_t>(recStatus), static_cast<Double_t>(findable), static_cast<Double_t>(charge), static_cast<Double_t>(nClones), static_cast<Double_t>(nFakes)}; 
     fEffHisto->Fill(vEffHisto);
   }
   if(labelsRec) delete [] labelsRec; labelsRec = 0;
@@ -451,7 +431,7 @@ void AliPerformanceEff::ProcessTPCSec(AliMCEvent* const mcEvent, AliESDEvent *co
     else if (particle->GetPDG()->Charge() > 0)  charge = 1.;
 
     // Fill histograms
-    Double_t vEffSecHisto[12] = { mceta, mcphi, mcpt, pid, recStatus, findable, mcR, mother_phi, mother_eta, charge, nClones, nFakes }; 
+    Double_t vEffSecHisto[12] = { mceta, mcphi, mcpt, static_cast<Double_t>(pid), static_cast<Double_t>(recStatus), static_cast<Double_t>(findable), mcR, mother_phi, mother_eta, static_cast<Double_t>(charge), static_cast<Double_t>(nClones), static_cast<Double_t>(nFakes) }; 
     fEffSecHisto->Fill(vEffSecHisto);
   }
   }
@@ -575,7 +555,7 @@ void AliPerformanceEff::ProcessTPCITS(AliMCEvent* const mcEvent, AliESDEvent *co
     else if (particle->GetPDG()->Charge() > 0)  charge = 1.;
     
     // Fill histograms
-    Double_t vEffHisto[9] = { mceta, mcphi, mcpt, pid, recStatus, findable, charge, nClones, nFakes}; 
+    Double_t vEffHisto[9] = { mceta, mcphi, mcpt, static_cast<Double_t>(pid), static_cast<Double_t>(recStatus), static_cast<Double_t>(findable), static_cast<Double_t>(charge), static_cast<Double_t>(nClones), static_cast<Double_t>(nFakes)}; 
     fEffHisto->Fill(vEffHisto);
   }
 
@@ -696,7 +676,7 @@ void AliPerformanceEff::ProcessConstrained(AliMCEvent* const mcEvent, AliESDEven
     else if (particle->GetPDG()->Charge() > 0)  charge = 1.;
 
     // Fill histograms
-    Double_t vEffHisto[9] = { mceta, mcphi, mcpt, pid, recStatus, findable, charge, nClones, nFakes }; 
+    Double_t vEffHisto[9] = { mceta, mcphi, mcpt, static_cast<Double_t>(pid), static_cast<Double_t>(recStatus), static_cast<Double_t>(findable), static_cast<Double_t>(charge), static_cast<Double_t>(nClones), static_cast<Double_t>(nFakes) }; 
     fEffHisto->Fill(vEffHisto);
   }
 
@@ -949,7 +929,7 @@ void AliPerformanceEff::Analyse()
   if(GetAnalysisMode() != 5) {
 
   fEffHisto->GetAxis(0)->SetRangeUser(-0.9,0.89); // eta range
-  fEffHisto->GetAxis(2)->SetRangeUser(0.1,10.);   // pt range
+  fEffHisto->GetAxis(2)->SetRangeUser(0.1,19.99);   // pt range  // FIXME maybe remove since range is defined in THnSparse 
 
   // rec efficiency vs pt
   fEffHisto->GetAxis(3)->SetRangeUser(0.,3.99);  // reconstructed 
@@ -966,7 +946,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(2, "ptRecEffPos", "rec. efficiency pos.", 0));
 
   // rec efficiency vs pid vs pt
-  fEffHisto->GetAxis(3)->SetRangeUser(2.,2.);    // pions
+  fEffHisto->GetAxis(3)->SetRange(3,3);    // pions
   
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(2, "ptRecEffPi", "rec. efficiency (pions)", 0));
@@ -978,7 +958,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(2, "ptRecEffPiPos", "rec. efficiency (pions) pos.", 0));
 
 
-  fEffHisto->GetAxis(3)->SetRangeUser(3.,3.);    // kaons
+  fEffHisto->GetAxis(3)->SetRange(4,4);    // kaons
   
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(2, "ptRecEffK", "rec. efficiency (kaons)", 0));
@@ -990,7 +970,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(2, "ptRecEffKPos", "rec. efficiency (kaons) pos.", 0));
  
   
-  fEffHisto->GetAxis(3)->SetRangeUser(4.,4.);    // protons
+  fEffHisto->GetAxis(3)->SetRange(5,5);    // protons
 
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(2, "ptRecEffP", "rec. efficiency (protons)", 0));
@@ -1003,7 +983,7 @@ void AliPerformanceEff::Analyse()
 
   // findable efficiency vs pt
   fEffHisto->GetAxis(3)->SetRangeUser(0.,4.); 
-  fEffHisto->GetAxis(5)->SetRangeUser(1.,1.); // findable
+  fEffHisto->GetAxis(5)->SetRange(2,2); // findable
 
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(2, "ptRecEffF", "rec. efficiency (findable)", 0));
@@ -1021,9 +1001,9 @@ void AliPerformanceEff::Analyse()
   // efficiency vs eta
   //
 
-  fEffHisto->GetAxis(0)->SetRangeUser(-1.5,1.5); // eta range
-  fEffHisto->GetAxis(2)->SetRangeUser(0.2,10.); // pt range
-  fEffHisto->GetAxis(5)->SetRangeUser(0.,1.);   // all
+  fEffHisto->GetAxis(0)->SetRangeUser(-1.5,1.49); // eta range
+  fEffHisto->GetAxis(2)->SetRangeUser(0.1,19.99); // pt range
+  fEffHisto->GetAxis(5)->SetRangeUser(0.,1.0);   // all
 
   // rec efficiency vs eta
   fEffHisto->GetAxis(3)->SetRangeUser(0.,4.);  // reconstructed 
@@ -1041,7 +1021,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(0, "etaRecEffPos", "rec. efficiency pos.", 0));
 
   // rec efficiency vs pid vs eta
-  fEffHisto->GetAxis(3)->SetRangeUser(2.,2.);    // pions
+  fEffHisto->GetAxis(3)->SetRange(3,3);    // pions
   
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(0, "etaRecEffPi", "rec. efficiency (pions)", 0));
@@ -1053,7 +1033,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(0, "etaRecEffPiPos", "rec. efficiency (pions) pos.", 0));
 
 
-  fEffHisto->GetAxis(3)->SetRangeUser(3.,3.);    // kaons
+  fEffHisto->GetAxis(3)->SetRange(4,4);    // kaons
   
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(0, "etaRecEffK", "rec. efficiency (kaons)", 0));
@@ -1065,7 +1045,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(0, "etaRecEffKPos", "rec. efficiency (kaons) pos.", 0));
   
   
-  fEffHisto->GetAxis(3)->SetRangeUser(4.,4.);    // protons
+  fEffHisto->GetAxis(3)->SetRange(5,5);    // protons
 
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(0, "etaRecEffP", "rec. efficiency (protons)", 0));
@@ -1078,7 +1058,7 @@ void AliPerformanceEff::Analyse()
 
   // findable efficiency vs eta
   fEffHisto->GetAxis(3)->SetRangeUser(0.,4.); 
-  fEffHisto->GetAxis(5)->SetRangeUser(1.,1.); // findable
+  fEffHisto->GetAxis(5)->SetRange(2,2); // findable
 
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(0, "etaRecEffF", "rec. efficiency (findable)", 0));
@@ -1096,8 +1076,8 @@ void AliPerformanceEff::Analyse()
   // efficiency vs phi
   //
 
-  fEffHisto->GetAxis(0)->SetRangeUser(-0.9,0.9); // eta range
-  fEffHisto->GetAxis(2)->SetRangeUser(0.2,10.); // pt range
+  fEffHisto->GetAxis(0)->SetRangeUser(-0.9,0.89); // eta range
+  fEffHisto->GetAxis(2)->SetRangeUser(0.1,19.99); // pt range
   fEffHisto->GetAxis(5)->SetRangeUser(0.,1.);   // all
 
   // rec efficiency vs phi
@@ -1115,7 +1095,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(1, "phiRecEffPos", "rec. efficiency pos.", 0));
 
   // rec efficiency vs pid vs phi
-  fEffHisto->GetAxis(3)->SetRangeUser(2.,2.);    // pions
+  fEffHisto->GetAxis(3)->SetRange(3,3);    // pions
   
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(1, "phiRecEffPi", "rec. efficiency (pions)", 0));
@@ -1127,7 +1107,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(1, "phiRecEffPiPos", "rec. efficiency (pions) pos.", 0));
 
 
-  fEffHisto->GetAxis(3)->SetRangeUser(3.,3.);    // kaons
+  fEffHisto->GetAxis(3)->SetRange(4,4);    // kaons
   
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(1, "phiRecEffK", "rec. efficiency (kaons)", 0));
@@ -1139,7 +1119,7 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(1, "phiRecEffKPos", "rec. efficiency (kaons) pos.", 0));
  
   
-  fEffHisto->GetAxis(3)->SetRangeUser(4.,4.);    // protons
+  fEffHisto->GetAxis(3)->SetRange(5,5);    // protons
 
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(1, "phiRecEffP", "rec. efficiency (protons)", 0));
@@ -1152,7 +1132,7 @@ void AliPerformanceEff::Analyse()
 
   // findable efficiency vs phi
   fEffHisto->GetAxis(3)->SetRangeUser(0.,4.); 
-  fEffHisto->GetAxis(5)->SetRangeUser(1.,1.); // findable
+  fEffHisto->GetAxis(5)->SetRange(2,2); // findable
 
   fEffHisto->GetAxis(6)->SetRangeUser(-2.,2.);   // charge all
   aFolderObj->Add(AddHistoEff(1, "phiRecEffF", "rec. efficiency (findable)", 0));
@@ -1168,9 +1148,9 @@ void AliPerformanceEff::Analyse()
   }
   else {
   // 
-  Float_t minEta=-1.5, maxEta=1.5;
+  Float_t minEta=-1.5, maxEta=1.49;
   Float_t minR=0.0, maxR=150.0;
-  Float_t minPt=0.15, maxPt=100.0;
+  Float_t minPt=0.10, maxPt=19.99;
 
   // mother eta range
   fEffSecHisto->GetAxis(8)->SetRangeUser(minEta,maxEta);
@@ -1190,23 +1170,23 @@ void AliPerformanceEff::Analyse()
 
   // rec efficiency vs pid vs pt
   
-  fEffSecHisto->GetAxis(3)->SetRangeUser(0.,0.); // electrons
+  fEffSecHisto->GetAxis(3)->SetRange(1,1); // electrons
   aFolderObj->Add(AddHistoEff(2, "ptRecEffEle", "rec. efficiency (electrons)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(2.,2.); // pions
+  fEffSecHisto->GetAxis(3)->SetRange(3,3); // pions
   aFolderObj->Add(AddHistoEff(2, "ptRecEffPi", "rec. efficiency (pions)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(3.,3.); // kaons
+  fEffSecHisto->GetAxis(3)->SetRange(4,4); // kaons
   aFolderObj->Add(AddHistoEff(2, "ptRecEffK", "rec. efficiency (kaons)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(4.,4.); // protons
+  fEffSecHisto->GetAxis(3)->SetRange(5,5); // protons
   aFolderObj->Add(AddHistoEff(2, "ptRecEffP", "rec. efficiency (protons)", 0, 1));
 
   fEffSecHisto->GetAxis(3)->SetRangeUser(0.,4.); 
 
   // findable efficiency vs pt
 
-  fEffSecHisto->GetAxis(5)->SetRangeUser(1.,1.); // findable
+  fEffSecHisto->GetAxis(5)->SetRange(2,2); // findable
   aFolderObj->Add(AddHistoEff(2, "ptRecEffF", "rec. efficiency (findable)", 0, 1));
   aFolderObj->Add(AddHistoEff(2, "ptCloneF", "clone rate (findable)", 1, 1));
   aFolderObj->Add(AddHistoEff(2, "ptFakeF", "fake rate (findable)", 2, 1));
@@ -1223,23 +1203,23 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(0, "etaFake", "fake rate", 2, 1));
 
   // rec efficiency vs pid vs eta
-  fEffSecHisto->GetAxis(3)->SetRangeUser(0.,0.); // electrons
+  fEffSecHisto->GetAxis(3)->SetRange(1,1); // electrons
   aFolderObj->Add(AddHistoEff(0, "etaRecEffEle", "rec. efficiency (electrons)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(2.,2.); // pions
+  fEffSecHisto->GetAxis(3)->SetRange(3,3); // pions
   aFolderObj->Add(AddHistoEff(0, "etaRecEffPi", "rec. efficiency (pions)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(3.,3.); // kaons
+  fEffSecHisto->GetAxis(3)->SetRange(4,4); // kaons
   aFolderObj->Add(AddHistoEff(0, "etaRecEffK", "rec. efficiency (kaons)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(4.,4.); // protons
+  fEffSecHisto->GetAxis(3)->SetRange(5,5); // protons
   aFolderObj->Add(AddHistoEff(0, "etaRecEffP", "rec. efficiency (protons)", 0, 1));
 
   fEffSecHisto->GetAxis(3)->SetRangeUser(0.,4.); 
 
   // findable efficiency vs eta
 
-  fEffSecHisto->GetAxis(5)->SetRangeUser(1.,1.); // findable
+  fEffSecHisto->GetAxis(5)->SetRange(2,2); // findable
   aFolderObj->Add(AddHistoEff(0, "etaRecEffF", "rec. efficiency (findable)", 0, 1));
   aFolderObj->Add(AddHistoEff(0, "etaCloneF", "clone rate (findable)", 1, 1));
   aFolderObj->Add(AddHistoEff(0, "etaFakeF", "fake rate (findable)", 2, 1));
@@ -1259,23 +1239,23 @@ void AliPerformanceEff::Analyse()
   aFolderObj->Add(AddHistoEff(1, "phiFake", "fake rate", 2, 1));
 
   // rec efficiency vs pid vs phi
-  fEffSecHisto->GetAxis(3)->SetRangeUser(0.,0.);
+  fEffSecHisto->GetAxis(3)->SetRange(1,1);
   aFolderObj->Add(AddHistoEff(1, "phiRecEffEle", "rec. efficiency (electrons)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(2.,2.); // pions
+  fEffSecHisto->GetAxis(3)->SetRange(3,3); // pions
   aFolderObj->Add(AddHistoEff(1, "phiRecEffPi", "rec. efficiency (pions)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(3.,3.); // kaons
+  fEffSecHisto->GetAxis(3)->SetRange(4,4); // kaons
   aFolderObj->Add(AddHistoEff(1, "phiRecEffK", "rec. efficiency (kaons)", 0, 1));
 
-  fEffSecHisto->GetAxis(3)->SetRangeUser(4.,4.); // protons
+  fEffSecHisto->GetAxis(3)->SetRange(5,5); // protons
   aFolderObj->Add(AddHistoEff(1, "phiRecEffP", "rec. efficiency (protons)", 0, 1));
 
   fEffSecHisto->GetAxis(3)->SetRangeUser(0.,4.); 
 
   // findable efficiency vs phi
 
-  fEffSecHisto->GetAxis(5)->SetRangeUser(1.,1.); // findable
+  fEffSecHisto->GetAxis(5)->SetRange(2,2); // findable
   aFolderObj->Add(AddHistoEff(1, "phiRecEffF", "rec. efficiency (findable)", 0, 1));
   aFolderObj->Add(AddHistoEff(1, "phiCloneF", "clone rate (findable)", 1, 1));
   aFolderObj->Add(AddHistoEff(1, "phiFakeF", "fake rate (findable)", 2, 1));
@@ -1379,10 +1359,10 @@ TH1D* AliPerformanceEff::AddHistoEff(Int_t axis, const Char_t *name, const Char_
 
   if (type == 0) // Efficiency
   {
-      EffHisto->GetAxis(4)->SetRangeUser(0.,1.);    // all
+      EffHisto->GetAxis(4)->SetRange(1.,2.);    // all
       TH1D *all = EffHisto->Projection(axis);
 
-      EffHisto->GetAxis(4)->SetRangeUser(1.,1.);    // reconstructed 
+      EffHisto->GetAxis(4)->SetRange(2.,2.);    // reconstructed 
       TH1D *rec = EffHisto->Projection(axis);
       recc = (TH1D*)rec->Clone();
 
@@ -1394,10 +1374,10 @@ TH1D* AliPerformanceEff::AddHistoEff(Int_t axis, const Char_t *name, const Char_
   }
   else if (type == 1) // Clone Rate
   {
-      EffHisto->GetAxis(4)->SetRangeUser(1.,1.);    // reconstructed
+      EffHisto->GetAxis(4)->SetRange(2.,2.);    // reconstructed
       TH1D *all = WeightedProjection(EffHisto, axis, 3, axis_all);
 
-      EffHisto->GetAxis(4)->SetRangeUser(1.,1.);    // reconstructed
+      EffHisto->GetAxis(4)->SetRange(2.,2.);    // reconstructed
       TH1D *clone = WeightedProjection(EffHisto, axis, 1, &axis_clone);
       recc = (TH1D*) clone->Clone();
 
@@ -1409,10 +1389,10 @@ TH1D* AliPerformanceEff::AddHistoEff(Int_t axis, const Char_t *name, const Char_
   }
   else if (type == 2) // Fake Rate
   {
-      EffHisto->GetAxis(4)->SetRangeUser(1.,1.);    // reconstructed
+      EffHisto->GetAxis(4)->SetRange(2.,2.);    // reconstructed
       TH1D *all = WeightedProjection(EffHisto, axis, 3, axis_all);
 
-      EffHisto->GetAxis(4)->SetRangeUser(1.,1.);    // reconstructed 
+      EffHisto->GetAxis(4)->SetRange(2.,2.);    // reconstructed 
       TH1D *fake = WeightedProjection(EffHisto, axis, 1, &axis_fake);
       recc = (TH1D*) fake->Clone();