]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Update from Rosi
authorloizides <loizides@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 8 Sep 2012 21:06:14 +0000 (21:06 +0000)
committerloizides <loizides@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 8 Sep 2012 21:06:14 +0000 (21:06 +0000)
PWGJE/EMCALJetTasks/AliAnalysisTaskScale.cxx
PWGJE/EMCALJetTasks/AliAnalysisTaskScale.h

index cea9bd7325eec7e224cf19990b7cb86d2d466515..efb8e15965b7343a117d1a9a338efb2899512883 100644 (file)
@@ -28,15 +28,26 @@ AliAnalysisTaskScale::AliAnalysisTaskScale() :
   fHistEtvsCent(0),  
   fHistScalevsCent(0),  
   fHistDeltaScalevsCent(0), 
+  fHistScaleEmcalvsCent(0),      
+  fHistScale2EmcalvsCent(0),     
+  fHistChScalevsCent(0),          
+  fHistChScale2EmcalvsCent(0),   
   fHistPtTPCvsNtrack(0), 
   fHistPtEMCALvsNtrack(0), 
   fHistEtvsNtrack(0),  
   fHistScalevsNtrack(0),  
   fHistDeltaScalevsNtrack(0),
+  fHistScaleEmcalvsNtrack(0),      
+  fHistScale2EmcalvsNtrack(0),     
+  fHistChScalevsNtrack(0),          
+  fHistChScale2EmcalvsNtrack(0),   
   fHistTrackPtvsCent(0), 
   fHistClusterPtvsCent(0),
   fHistTrackEtaPhi(0), 
-  fHistClusterEtaPhi(0)
+  fHistClusterEtaPhi(0),
+  fHistScalevsScale2Emcal(0),      
+  fHistScalevsScaleEmcal(0),       
+  fHistScaleEmcalvsScale2Emcal(0)
 {
   // Default constructor.
 
@@ -52,15 +63,26 @@ AliAnalysisTaskScale::AliAnalysisTaskScale(const char *name) :
   fHistEtvsCent(0),  
   fHistScalevsCent(0),  
   fHistDeltaScalevsCent(0), 
+  fHistScaleEmcalvsCent(0),      
+  fHistScale2EmcalvsCent(0),     
+  fHistChScalevsCent(0),          
+  fHistChScale2EmcalvsCent(0),   
   fHistPtTPCvsNtrack(0), 
   fHistPtEMCALvsNtrack(0), 
   fHistEtvsNtrack(0),  
   fHistScalevsNtrack(0),  
   fHistDeltaScalevsNtrack(0),
+  fHistScaleEmcalvsNtrack(0),      
+  fHistScale2EmcalvsNtrack(0),     
+  fHistChScalevsNtrack(0),          
+  fHistChScale2EmcalvsNtrack(0),   
   fHistTrackPtvsCent(0), 
   fHistClusterPtvsCent(0),
   fHistTrackEtaPhi(0), 
-  fHistClusterEtaPhi(0)
+  fHistClusterEtaPhi(0),
+  fHistScalevsScale2Emcal(0),      
+  fHistScalevsScaleEmcal(0),       
+  fHistScaleEmcalvsScale2Emcal(0)
 {
   // Constructor.
 
@@ -74,36 +96,57 @@ void AliAnalysisTaskScale::UserCreateOutputObjects()
 
   AliAnalysisTaskEmcal::UserCreateOutputObjects();
 
-  fHistPtTPCvsCent        = new TH2F("PtTPCvsCent","rho vs cent",            101, -1, 100, 500,   0, 1000);
-  fHistPtEMCALvsCent      = new TH2F("PtEMCALvsCent","rho vs cent",          101, -1, 100, 500,   0, 1000);
-  fHistEtvsCent           = new TH2F("EtvsCent","rho vs cent",               101, -1, 100, 500,   0, 1000);
-  fHistScalevsCent        = new TH2F("ScalevsCent","rho vs cent",            101, -1, 100, 400,   0, 4);
-  fHistDeltaScalevsCent   = new TH2F("DeltaScalevsCent","rho vs cent",       101, -1, 100, 400,  -2, 2);
-  fHistPtTPCvsNtrack      = new TH2F("PtTPCvsNtrack","rho vs cent",          500,  0, 2500, 500,  0, 1000);
-  fHistPtEMCALvsNtrack    = new TH2F("PtEMCALvsNtrack","rho vs cent",        500,  0, 2500, 500,  0, 1000);
-  fHistEtvsNtrack         = new TH2F("EtvsNtrack","rho vs cent",             500,  0, 2500, 500,  0, 1000);
-  fHistScalevsNtrack      = new TH2F("ScalevsNtrack","rho vs cent",          500,  0, 2500, 400,  0, 4);
-  fHistDeltaScalevsNtrack = new TH2F("DeltaScalevsNtrack","rho vs cent",     500,  0, 2500, 400, -2, 2);
-  fHistTrackPtvsCent      = new TH2F("TrackPtvsCent","Track pt vs cent",     101, -1, 100,  500,  0, 100);
-  fHistClusterPtvsCent    = new TH2F("ClusterPtvsCent","Cluster pt vs cent", 101, -1, 100,  500,  0, 100);
-  fHistTrackEtaPhi        = new TH2F("TrackEtaPhi","Track eta phi",          100, -1.0, 1.0, 101, 0, 2.02*TMath::Pi());
-  fHistClusterEtaPhi      = new TH2F("ClusterEtaPhi","Cluster eta phi",      100, -1.0, 1.0, 101, 0, 2.02*TMath::Pi());
-
-  fOutput->Add(fHistCentrality);
+  fHistPtTPCvsCent             = new TH2F("PtTPCvsCent","rho vs cent",            101, -1, 100,   500,   0, 1000);
+  fHistPtEMCALvsCent           = new TH2F("PtEMCALvsCent","rho vs cent",          101, -1, 100,   500,   0, 1000);
+  fHistEtvsCent                = new TH2F("EtvsCent","rho vs cent",               101, -1, 100,   500,   0, 1000);
+  fHistScalevsCent             = new TH2F("ScalevsCent","rho vs cent",            101, -1, 100,   500,   0, 5);
+  fHistDeltaScalevsCent        = new TH2F("DeltaScalevsCent","rho vs cent",       101, -1, 100,   500,  -2.5, 2.5);
+  fHistScaleEmcalvsCent        = new TH2F("ScaleEmcalvsCent","",                  101, -1, 100,   500,   0, 5);
+  fHistScale2EmcalvsCent       = new TH2F("Scale2EmcalvsCent","",                 101, -1, 100,   500,   0, 5);
+  fHistChScalevsCent           = new TH2F("ChScalevsCent","",                     101, -1, 100,   500,   0, 5);
+  fHistChScale2EmcalvsCent     = new TH2F("ChScale2EmcalvsCent","",               101, -1, 100,   500,   0, 5);
+  fHistPtTPCvsNtrack           = new TH2F("PtTPCvsNtrack","rho vs cent",          500,  0, 2500,  500,   0, 1000);
+  fHistPtEMCALvsNtrack         = new TH2F("PtEMCALvsNtrack","rho vs cent",        500,  0, 2500,  500,   0, 1000);
+  fHistEtvsNtrack              = new TH2F("EtvsNtrack","rho vs cent",             500,  0, 2500,  500,   0, 1000);
+  fHistScalevsNtrack           = new TH2F("ScalevsNtrack","rho vs cent",          500,  0, 2500,  500,   0, 5);
+  fHistDeltaScalevsNtrack      = new TH2F("DeltaScalevsNtrack","rho vs cent",     500,  0, 2500,  500,  -2.5, 2.5);
+  fHistScaleEmcalvsNtrack      = new TH2F("ScaleEmcalvsNtrack","",                500,  0, 2500,  500,   0, 5);
+  fHistScale2EmcalvsNtrack     = new TH2F("Scale2EmcalvsNtrack","",               500,  0, 2500,  500,   0, 5);
+  fHistChScalevsNtrack         = new TH2F("ChScalevsNtrack","",                   500,  0, 2500,  500,   0, 5);
+  fHistChScale2EmcalvsNtrack   = new TH2F("ChScale2EmcalvsNtrack","",             500,  0, 2500,  500,   0, 5);
+  fHistTrackPtvsCent           = new TH2F("TrackPtvsCent","Track pt vs cent",     101, -1, 100,   500,   0, 100);
+  fHistClusterPtvsCent         = new TH2F("ClusterPtvsCent","Cluster pt vs cent", 101, -1, 100,   500,   0, 100);
+  fHistTrackEtaPhi             = new TH2F("TrackEtaPhi","Track eta phi",          100, -1.0, 1.0, 101,   0, 2.02*TMath::Pi());
+  fHistClusterEtaPhi           = new TH2F("ClusterEtaPhi","Cluster eta phi",      100, -1.0, 1.0, 101,   0, 2.02*TMath::Pi());
+  fHistScalevsScale2Emcal      = new TH2F("ScalevsScale2Emcal","",                500,  0, 5,     500,   0, 5);
+  fHistScalevsScaleEmcal       = new TH2F("ScalevsScaleEmcal","",                 500,  0, 5,     500,   0, 5);
+  fHistScaleEmcalvsScale2Emcal = new TH2F("ScaleEmcalvsScale2Emcal","",           500,  0, 5,     500,   0, 5);
+
   fOutput->Add(fHistPtTPCvsCent);
   fOutput->Add(fHistPtEMCALvsCent);
   fOutput->Add(fHistEtvsCent);
   fOutput->Add(fHistScalevsCent);
   fOutput->Add(fHistDeltaScalevsCent);
+  fOutput->Add(fHistScaleEmcalvsCent);      
+  fOutput->Add(fHistScale2EmcalvsCent);     
+  fOutput->Add(fHistChScalevsCent);    
+  fOutput->Add(fHistChScale2EmcalvsCent);   
   fOutput->Add(fHistPtTPCvsNtrack);
   fOutput->Add(fHistPtEMCALvsNtrack);
   fOutput->Add(fHistEtvsNtrack);
   fOutput->Add(fHistScalevsNtrack);
   fOutput->Add(fHistDeltaScalevsNtrack);
+  fOutput->Add(fHistScaleEmcalvsNtrack);      
+  fOutput->Add(fHistScale2EmcalvsNtrack);     
+  fOutput->Add(fHistChScalevsNtrack);    
+  fOutput->Add(fHistChScale2EmcalvsNtrack);   
   fOutput->Add(fHistTrackPtvsCent);
   fOutput->Add(fHistClusterPtvsCent);
   fOutput->Add(fHistTrackEtaPhi);
   fOutput->Add(fHistClusterEtaPhi);
+  fOutput->Add(fHistScalevsScale2Emcal);      
+  fOutput->Add(fHistScalevsScaleEmcal);       
+  fOutput->Add(fHistScaleEmcalvsScale2Emcal);
 
   PostData(1, fOutput);
 }
@@ -123,20 +166,26 @@ Double_t AliAnalysisTaskScale::GetScaleFactor(Double_t cent)
 Bool_t AliAnalysisTaskScale::FillHistograms() 
 {
   // Execute on each event.
-
   const Double_t EmcalMinEta = fGeom->GetArm1EtaMin();
   const Double_t EmcalMaxEta = fGeom->GetArm1EtaMax();
   const Double_t EmcalMinPhi = fGeom->GetArm1PhiMin() * TMath::DegToRad();
   const Double_t EmcalMaxPhi = fGeom->GetArm1PhiMax() * TMath::DegToRad();
+  const Double_t EmcalWidth = (EmcalMaxPhi-EmcalMinPhi)/2.0;
 
-  const Double_t TpcMinPhi   = 0;
-  const Double_t TpcMaxPhi   = 2 * TMath::Pi();
+  Double_t TpcMinPhi   = fTrackMinPhi;
+  Double_t TpcMaxPhi   = fTrackMaxPhi;
+  if (TpcMaxPhi > TMath::Pi()*2)
+    TpcMaxPhi = TMath::Pi()*2;
+  
+  if (TpcMinPhi < 0)
+    TpcMinPhi = 0;
 
   const Double_t TpcArea     = (TpcMaxPhi - TpcMinPhi) * (EmcalMinEta - EmcalMaxEta);
   const Double_t EmcalArea   = (EmcalMaxPhi - EmcalMinPhi) * (EmcalMinEta - EmcalMaxEta);
 
   Double_t ptTPC   = 0;
   Double_t ptEMCAL = 0;
+  Double_t ptEMCAL2 = 0;
 
   const Int_t Ntracks = fTracks->GetEntries();
   for (Int_t iTracks = 0; iTracks < Ntracks; ++iTracks) {
@@ -153,11 +202,12 @@ Bool_t AliAnalysisTaskScale::FillHistograms()
 
     fHistTrackPtvsCent->Fill(fCent,track->Pt());
     fHistTrackEtaPhi->Fill(track->Eta(),track->Phi());
-
     ptTPC += track->Pt();
+    if ((track->Phi() > (EmcalMaxPhi+EmcalWidth)) || (track->Phi() < (EmcalMinPhi-EmcalWidth)))
+      continue;
+    ptEMCAL2 += track->Pt();
     if ((track->Phi() > EmcalMaxPhi) || (track->Phi() < EmcalMinPhi))
       continue;
-
     ptEMCAL += track->Pt();
   }
 
@@ -183,9 +233,27 @@ Bool_t AliAnalysisTaskScale::FillHistograms()
     Et += nPart.Pt();
   }
 
-  const Double_t scalecalc = ((Et + ptEMCAL) / EmcalArea) * (TpcArea / ptTPC);
-  const Double_t scale     = GetScaleFactor(fCent);
-
+  const Double_t scalecalc         = ((Et + ptEMCAL) / EmcalArea) * (TpcArea / ptTPC);
+  const Double_t scale             = GetScaleFactor(fCent);
+  Double_t scalecalcemcal          = -1;
+  if (ptEMCAL > 0)
+    scalecalcemcal                 = (Et+ptEMCAL)/ptEMCAL;
+  Double_t scalecalcemcal2         = -1;
+  Double_t Chscalecalcemcal2       = -1;
+  if (ptEMCAL2 > 0){
+    scalecalcemcal2                = 2*(Et+ptEMCAL)/ptEMCAL2;
+    Chscalecalcemcal2              = 2*ptEMCAL/ptEMCAL2;}
+  const Double_t Chscalecalcemcal  = ((ptEMCAL) / EmcalArea) * (TpcArea / ptTPC);
+
+  fHistScaleEmcalvsCent->Fill(fCent,scalecalcemcal);      
+  fHistScale2EmcalvsCent->Fill(fCent,scalecalcemcal2);     
+  fHistChScalevsCent->Fill(fCent,Chscalecalcemcal);    
+  fHistChScale2EmcalvsCent->Fill(fCent,Chscalecalcemcal2);   
+  fHistScaleEmcalvsNtrack->Fill(Ntracks,scalecalcemcal);      
+  fHistScale2EmcalvsNtrack->Fill(Ntracks,scalecalcemcal2);     
+  fHistChScalevsNtrack->Fill(Ntracks,Chscalecalcemcal);    
+  fHistChScale2EmcalvsNtrack->Fill(Ntracks,Chscalecalcemcal2);   
   fHistPtTPCvsCent->Fill(fCent, ptTPC);
   fHistPtEMCALvsCent->Fill(fCent, ptEMCAL);
   fHistEtvsCent->Fill(fCent, Et);
@@ -196,6 +264,9 @@ Bool_t AliAnalysisTaskScale::FillHistograms()
   fHistEtvsNtrack->Fill(Ntracks, Et);
   fHistScalevsNtrack->Fill(Ntracks, scalecalc);
   fHistDeltaScalevsNtrack->Fill(Ntracks, scalecalc - scale);
+  fHistScalevsScale2Emcal->Fill(scalecalc,scalecalcemcal2);      
+  fHistScalevsScaleEmcal->Fill(scalecalc,scalecalcemcal); 
+  fHistScaleEmcalvsScale2Emcal->Fill(scalecalcemcal,scalecalcemcal2);
 
   return kTRUE;
 }
index 1c6334ff0cd8ba33c9db8e600141e4617d3f63de..d6c2db8cb1859a101a9b8a3c7a363010439752e7 100644 (file)
@@ -25,24 +25,35 @@ class AliAnalysisTaskScale : public AliAnalysisTaskEmcal {
  private:
   TF1                   *fScaleFunction;          // scale factor as a function of centrality
 
-  TH2F                  *fHistPtTPCvsCent;        //!output histogram
-  TH2F                  *fHistPtEMCALvsCent;      //!output histogram
-  TH2F                  *fHistEtvsCent;           //!output histogram
-  TH2F                  *fHistScalevsCent;        //!output histogram
-  TH2F                  *fHistDeltaScalevsCent;   //!output histogram
-  TH2F                  *fHistPtTPCvsNtrack;      //!output histogram
-  TH2F                  *fHistPtEMCALvsNtrack;    //!output histogram
-  TH2F                  *fHistEtvsNtrack;         //!output histogram
-  TH2F                  *fHistScalevsNtrack;      //!output histogram
-  TH2F                  *fHistDeltaScalevsNtrack; //!output histogram
-  TH2F                  *fHistTrackPtvsCent;      //!output histogram
-  TH2F                  *fHistClusterPtvsCent;    //!output histogram
-  TH2F                  *fHistTrackEtaPhi;        //!output histogram
-  TH2F                  *fHistClusterEtaPhi;      //!output histogram
+  TH2F                  *fHistPtTPCvsCent;             //!output histogram
+  TH2F                  *fHistPtEMCALvsCent;           //!output histogram
+  TH2F                  *fHistEtvsCent;                //!output histogram
+  TH2F                  *fHistScalevsCent;             //!output histogram
+  TH2F                  *fHistDeltaScalevsCent;        //!output histogram
+  TH2F                  *fHistScaleEmcalvsCent;        //!output histogram
+  TH2F                  *fHistScale2EmcalvsCent;       //!output histogram
+  TH2F                  *fHistChScalevsCent;           //!output histogram
+  TH2F                  *fHistChScale2EmcalvsCent;     //!output histogram
+  TH2F                  *fHistPtTPCvsNtrack;           //!output histogram
+  TH2F                  *fHistPtEMCALvsNtrack;         //!output histogram
+  TH2F                  *fHistEtvsNtrack;              //!output histogram
+  TH2F                  *fHistScalevsNtrack;           //!output histogram
+  TH2F                  *fHistDeltaScalevsNtrack;      //!output histogram
+  TH2F                  *fHistScaleEmcalvsNtrack;      //!output histogram
+  TH2F                  *fHistScale2EmcalvsNtrack;     //!output histogram
+  TH2F                  *fHistChScalevsNtrack;         //!output histogram
+  TH2F                  *fHistChScale2EmcalvsNtrack;   //!output histogram
+  TH2F                  *fHistTrackPtvsCent;           //!output histogram
+  TH2F                  *fHistClusterPtvsCent;         //!output histogram
+  TH2F                  *fHistTrackEtaPhi;             //!output histogram
+  TH2F                  *fHistClusterEtaPhi;           //!output histogram
+  TH2F                  *fHistScalevsScale2Emcal;      //!output histogram
+  TH2F                  *fHistScalevsScaleEmcal;       //!output histogram
+  TH2F                  *fHistScaleEmcalvsScale2Emcal; //!output histogram
 
   AliAnalysisTaskScale(const AliAnalysisTaskScale&); // not implemented
   AliAnalysisTaskScale& operator=(const AliAnalysisTaskScale&); // not implemented
   
-  ClassDef(AliAnalysisTaskScale, 8); // Scale task
+  ClassDef(AliAnalysisTaskScale, 9); // Scale task
 };
 #endif