]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Add histograms to check goodness of split energy vs generated energy
authorgconesab <gconesab@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 17 Oct 2012 10:48:29 +0000 (10:48 +0000)
committergconesab <gconesab@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 17 Oct 2012 10:48:29 +0000 (10:48 +0000)
PWGGA/CaloTrackCorrelations/AliAnaInsideClusterInvariantMass.cxx
PWGGA/CaloTrackCorrelations/AliAnaInsideClusterInvariantMass.h

index 919c128f331693235098b7576dac9f1d44b5de13..ed3cda0d77bc4bef47aabc7dac086a1a279660c8 100755 (executable)
@@ -107,6 +107,10 @@ AliAnaInsideClusterInvariantMass::AliAnaInsideClusterInvariantMass() :
       fhMCGenFracNLocMax1[i][j]= 0;
       fhMCGenFracNLocMax2[i][j]= 0;
       fhMCGenFracNLocMaxN[i][j]= 0;
+      
+      fhMCGenSplitEFracNLocMax1[i][j]= 0;
+      fhMCGenSplitEFracNLocMax2[i][j]= 0;
+      fhMCGenSplitEFracNLocMaxN[i][j]= 0;      
     }
     
     for(Int_t jj = 0; jj < 4; jj++)
@@ -427,6 +431,28 @@ TList * AliAnaInsideClusterInvariantMass::GetCreateOutputObjects()
         fhMCGenFracNLocMaxN[i][j]   ->SetYTitle("E_{gen} / E_{reco}");
         fhMCGenFracNLocMaxN[i][j]   ->SetXTitle("E (GeV)");
         outputContainer->Add(fhMCGenFracNLocMaxN[i][j]) ; 
+      
+        fhMCGenSplitEFracNLocMax1[i][j]     = new TH2F(Form("hMCGenSplitEFracNLocMax1%s%s",pname[i].Data(),sMatched[j].Data()),
+                                                 Form("#lambda_{0}^{2} vs E for N max  = 1 %s %s",ptype[i].Data(),sMatched[j].Data()),
+                                                 nptbins,ptmin,ptmax,200,0,2); 
+        fhMCGenSplitEFracNLocMax1[i][j]   ->SetYTitle("E_{gen} / (E_{1 split}+E_{2 split})");
+        fhMCGenSplitEFracNLocMax1[i][j]   ->SetXTitle("E (GeV)");
+        outputContainer->Add(fhMCGenSplitEFracNLocMax1[i][j]) ; 
+        
+        fhMCGenSplitEFracNLocMax2[i][j]     = new TH2F(Form("hMCGenSplitEFracNLocMax2%s%s",pname[i].Data(),sMatched[j].Data()),
+                                                 Form("#lambda_{0}^{2} vs E for N max  = 2 %s %s",ptype[i].Data(),sMatched[j].Data()),
+                                                 nptbins,ptmin,ptmax,200,0,2); 
+        fhMCGenSplitEFracNLocMax2[i][j]   ->SetYTitle("E_{gen} / (E_{1 split}+E_{2 split})");
+        fhMCGenSplitEFracNLocMax2[i][j]   ->SetXTitle("E (GeV)");
+        outputContainer->Add(fhMCGenSplitEFracNLocMax2[i][j]) ; 
+        
+        
+        fhMCGenSplitEFracNLocMaxN[i][j]    = new TH2F(Form("hMCGenSplitEFracNLocMaxN%s%s",pname[i].Data(),sMatched[j].Data()),
+                                                Form("#lambda_{0}^{2} vs E for N max  > 2 %s %s",ptype[i].Data(),sMatched[j].Data()),
+                                                nptbins,ptmin,ptmax,200,0,2); 
+        fhMCGenSplitEFracNLocMaxN[i][j]   ->SetYTitle("E_{gen} / (E_{1 split}+E_{2 split})");
+        fhMCGenSplitEFracNLocMaxN[i][j]   ->SetXTitle("E (GeV)");
+        outputContainer->Add(fhMCGenSplitEFracNLocMaxN[i][j]) ; 
         
       }
       
@@ -1034,8 +1060,9 @@ void  AliAnaInsideClusterInvariantMass::MakeAnalysisFillHistograms()
       }
     } 
     
-    Float_t efrac = eprim/en;
-    
+    Float_t efrac      = eprim/en;
+    Float_t efracSplit = eprim/(e1+e2);
+
     Int_t ebin = -1;
     if(en > 8  && en <= 12) ebin = 0; 
     if(en > 12 && en <= 16) ebin = 1;
@@ -1064,6 +1091,8 @@ void  AliAnaInsideClusterInvariantMass::MakeAnalysisFillHistograms()
         {
           fhMassM02NLocMax1          [mcindex][matched]->Fill(l0     ,  mass  ); 
           fhMCGenFracNLocMax1        [mcindex][matched]->Fill(en     ,  efrac ); 
+          fhMCGenSplitEFracNLocMax1  [mcindex][matched]->Fill(en     ,  efracSplit ); 
+
           if(!matched && ebin >= 0)
           {
             fhM02MCGenFracNLocMax1Ebin [mcindex][ebin]->Fill(efrac  ,  l0    ); 
@@ -1108,8 +1137,10 @@ void  AliAnaInsideClusterInvariantMass::MakeAnalysisFillHistograms()
         
         if(IsDataMC()) 
         {
-          fhMassM02NLocMax2    [mcindex][matched]->Fill(l0     ,  mass ); 
-          fhMCGenFracNLocMax2  [mcindex][matched]->Fill(en     ,  efrac ); 
+          fhMassM02NLocMax2        [mcindex][matched]->Fill(l0     ,  mass ); 
+          fhMCGenFracNLocMax2      [mcindex][matched]->Fill(en     ,  efrac ); 
+          fhMCGenSplitEFracNLocMax2[mcindex][matched]->Fill(en     ,  efracSplit ); 
+
           if(!matched && ebin >= 0)
           {
             fhM02MCGenFracNLocMax2Ebin [mcindex][ebin]->Fill(efrac  ,  l0    ); 
@@ -1154,8 +1185,10 @@ void  AliAnaInsideClusterInvariantMass::MakeAnalysisFillHistograms()
         
         if(IsDataMC()) 
         {
-          fhMassM02NLocMaxN    [mcindex][matched]->Fill(l0     ,  mass ); 
-          fhMCGenFracNLocMaxN  [mcindex][matched]->Fill(en     ,  efrac ); 
+          fhMassM02NLocMaxN        [mcindex][matched]->Fill(l0     ,  mass ); 
+          fhMCGenFracNLocMaxN      [mcindex][matched]->Fill(en     ,  efrac ); 
+          fhMCGenSplitEFracNLocMaxN[mcindex][matched]->Fill(en     ,  efracSplit ); 
+
           if(!matched && ebin >= 0)
           {
             fhM02MCGenFracNLocMaxNEbin [mcindex][ebin]->Fill(efrac  ,  l0     ); 
index bccf1514c7c58b8d0db14ae088dd748ac6fb9f82..eced1f87197b641339f08daf5aad8b163f90e87d 100755 (executable)
@@ -128,6 +128,10 @@ class AliAnaInsideClusterInvariantMass : public AliAnaCaloTrackCorrBaseClass {
   TH2F       * fhMCGenFracNLocMax2[7][2] ; //! E generated particle / E reconstructed vs E reconstructed for N max in cluster = 2, 1-6 for different MC particle types
   TH2F       * fhMCGenFracNLocMaxN[7][2] ; //! E generated particle / E reconstructed vs E reconstructed for N max in cluster > 2, 1-6 for different MC particle types  
   
+  TH2F       * fhMCGenSplitEFracNLocMax1[7][2] ; //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster = 1, 1-6 for different MC particle types
+  TH2F       * fhMCGenSplitEFracNLocMax2[7][2] ; //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster = 2, 1-6 for different MC particle types
+  TH2F       * fhMCGenSplitEFracNLocMaxN[7][2] ; //! E generated particle / E1+E2 reconstructed vs E reconstructed for N max in cluster > 2, 1-6 for different MC particle types  
+    
   TH2F       * fhMCGenFracNLocMaxEbin[7][4] ;    //! NLM vs E generated particle / E reconstructed vs E reconstructed 1-6 for different MC particle types, not matched to track
   TH2F       * fhMCGenFracNLocMaxEbinMatched[7][4] ; //! NLM vs E generated particle / E reconstructed vs E reconstructed 1-6 for different MC particle types, matched to track
   
@@ -162,7 +166,7 @@ class AliAnaInsideClusterInvariantMass : public AliAnaCaloTrackCorrBaseClass {
   TH2F       * fhMassSplitEFractionNLocMax1Ebin[7][4] ; //! Mass vs sum of splitted cluster energy / cluster energy for N max in cluster = 1, 1-6 for different MC particle types, not track matched
   TH2F       * fhMassSplitEFractionNLocMax2Ebin[7][4] ; //! Mass vs sum of splitted cluster energy / cluster energy for N max in cluster = 2, 1-6 for different MC particle types, not track matched
   TH2F       * fhMassSplitEFractionNLocMaxNEbin[7][4] ; //! Mass vs sum of splitted cluster energy / cluster energy for N max in cluster > 2, 1-6 for different MC particle types, not track matched  
-  
+    
   TH2F       * fhAnglePairLocMax1[2] ; //! pair opening angle vs E
   TH2F       * fhAnglePairLocMax2[2] ; //! pair opening angle vs E
   TH2F       * fhAnglePairLocMaxN[2] ; //! pair opening angle vs E