]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
changes from mconnors
authormcosenti <mcosenti@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 23 Jul 2012 11:48:23 +0000 (11:48 +0000)
committermcosenti <mcosenti@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 23 Jul 2012 11:48:23 +0000 (11:48 +0000)
PWGGA/EMCALJetTasks/UserTasks/AliAnalysisTaskEmcalJetHMEC.cxx
PWGGA/EMCALJetTasks/UserTasks/AliAnalysisTaskEmcalJetHMEC.h
PWGGA/EMCALJetTasks/macros/AddTaskEmcalJetHMEC.C

index 123b198255b100c0cdc572848250511ed755b5a8..e0da486b7069522fe38eacaaec967ddf729c2923 100644 (file)
@@ -50,6 +50,7 @@ AliAnalysisTaskEmcalJetHMEC::AliAnalysisTaskEmcalJetHMEC() :
   fAreacut(0.0),
   fTrkBias(5),
   fClusBias(5),
+  fTrkEta(0.9),
   fDoEventMixing(0),
   fMixingTracks(50000),
   fESD(0), 
@@ -58,12 +59,17 @@ AliAnalysisTaskEmcalJetHMEC::AliAnalysisTaskEmcalJetHMEC() :
   fHistTrackPt(0),
   fHistCentrality(0), 
   fHistJetEtaPhi(0), 
-  fHistTrackEtaPhi(0), 
   fHistJetHEtaPhi(0), 
-  fhnMixedEvents(0x0)
+  fhnMixedEvents(0x0),
+  fhnJH(0x0)
 {
   // Default Constructor
 
+  for(Int_t ipta=0; ipta<7; ipta++){
+    fHistTrackEtaPhi[ipta]=0;
+  }
+
+
   for(Int_t icent = 0; icent<6; ++icent){
     fHistJetPt[icent]=0;
     fHistJetPtBias[icent]=0;
@@ -91,6 +97,7 @@ AliAnalysisTaskEmcalJetHMEC::AliAnalysisTaskEmcalJetHMEC(const char *name) :
   fAreacut(0.0),
   fTrkBias(5),
   fClusBias(5),
+  fTrkEta(0.9),
   fDoEventMixing(0),
   fMixingTracks(50000),
   fESD(0), 
@@ -99,11 +106,14 @@ AliAnalysisTaskEmcalJetHMEC::AliAnalysisTaskEmcalJetHMEC(const char *name) :
   fHistTrackPt(0),
   fHistCentrality(0), 
   fHistJetEtaPhi(0), 
-  fHistTrackEtaPhi(0), 
   fHistJetHEtaPhi(0),
-  fhnMixedEvents(0x0)
+  fhnMixedEvents(0x0),
+  fhnJH(0x0)
 {
   // Constructor
+  for(Int_t ipta=0; ipta<7; ipta++){
+    fHistTrackEtaPhi[ipta]=0;
+  }
   for(Int_t icent = 0; icent<6; ++icent){
     fHistJetPt[icent]=0;
     fHistJetPtBias[icent]=0;
@@ -149,11 +159,16 @@ void AliAnalysisTaskEmcalJetHMEC::UserCreateOutputObjects()
   fHistCentrality = new TH1F("fHistCentrality","centrality",100,0,100);
 
   fHistJetEtaPhi = new TH2F("fHistJetEtaPhi","Jet eta-phi",900,-1.8,1.8,640,-3.2,3.2);
-  fHistTrackEtaPhi = new TH2F("fHistTrackEtaPhi","Track eta-phi",900,-1.8,1.8,640,-3.2,3.2);
   fHistJetHEtaPhi = new TH2F("fHistJetHEtaPhi","Jet-Hadron deta-dphi",900,-1.8,1.8,640,-1.6,4.8);
 
   char name[200];
 
+  for(Int_t ipta=0; ipta<7; ++ipta){
+    sprintf(name, "fHistTrackEtaPhi_%i", ipta);
+    fHistTrackEtaPhi[ipta] = new TH2F(name,name,400,-1,1,640,0.0,2*TMath::Pi());
+    fOutputList->Add(fHistTrackEtaPhi[ipta]);
+
+  }
  
   for(Int_t icent = 0; icent<6; ++icent){
     sprintf(name,"fHistJetPt_%i",icent);   
@@ -186,21 +201,32 @@ void AliAnalysisTaskEmcalJetHMEC::UserCreateOutputObjects()
     }
   }
 
+
+
+  UInt_t cifras = 0; // bit coded, see GetDimParams() below 
+  cifras = 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<7; 
+  fhnJH = NewTHnSparseF("fhnJH", cifras);
+  
+  fhnJH->Sumw2();
+
+  fOutputList->Add(fhnJH);
+
+
   if(fDoEventMixing){    
-     UInt_t cifras = 0; // bit coded, see GetDimParams() below 
      cifras = 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<7; 
      fhnMixedEvents = NewTHnSparseF("fhnMixedEvents", cifras);
 
      fhnMixedEvents->Sumw2();
+     
+     fOutputList->Add(fhnMixedEvents);
+
   }
   
 
   fOutputList->Add(fHistTrackPt);
   fOutputList->Add(fHistCentrality);
   fOutputList->Add(fHistJetEtaPhi);
-  fOutputList->Add(fHistTrackEtaPhi);
   fOutputList->Add(fHistJetHEtaPhi);
-  fOutputList->Add(fhnMixedEvents);
 
 
   PostData(1, fOutputList);
@@ -462,7 +488,7 @@ void AliAnalysisTaskEmcalJetHMEC::UserExec(Option_t *)
          continue;
        }
        
-         if(TMath::Abs(track->Eta())>0.9) continue;
+         if(TMath::Abs(track->Eta())>fTrkEta) continue;
 
          fHistTrackPt->Fill(track->Pt());
                  
@@ -474,26 +500,34 @@ void AliAnalysisTaskEmcalJetHMEC::UserExec(Option_t *)
            trackphi = trackphi-2*TMath::Pi();
 
          Double_t tracketa=track->Eta();
-      
+         Double_t trackpt=track->Pt();
          Double_t deta=tracketa-jeteta;
          Int_t ieta=GetEtaBin(deta);
 
          //Jet pt, track pt, dPhi,deta,fcent
          Double_t dphijh = RelativePhi(jetphi,trackphi);
          if (dphijh < -0.5*TMath::Pi())
-           dphijh= dphijh+ 2*TMath::Pi();
+           dphijh+= 2*TMath::Pi();
+         if (dphijh > 1.5*TMath::Pi()) dphijh-=2.*TMath::Pi();
+
 
          Int_t iptjet=-1;
          iptjet=GetpTjetBin(jetPt);
 
          fHistJetH[centbin][iptjet][ieta]->Fill(dphijh,track->Pt());
          fHistJetHEtaPhi->Fill(deta,dphijh);
-         fHistTrackEtaPhi->Fill(tracketa,trackphi);
-         if ((jet->MaxTrackPt()>6) || (jet->MaxClusterPt()>6))
-           fHistJetHBias[centbin][iptjet][ieta]->Fill(dphijh,track->Pt());
-         
+
+         Double_t dR=sqrt(deta*deta+dphijh*dphijh);
+
+         if ((jet->MaxTrackPt()>fTrkBias) || (jet->MaxClusterPt()>fClusBias)){
+           fHistJetHBias[centbin][iptjet][ieta]->Fill(dphijh,trackpt);
+
+           Double_t triggerEntries[7] = {fcent,jetPt,track->Pt(),dR,deta,dphijh,0.0};                      
+           fhnJH->Fill(triggerEntries);
+         }
+
          if(passedTTcut)
-         fHistJetHTT[centbin][iptjet][ieta]->Fill(dphijh,track->Pt());
+           fHistJetHTT[centbin][iptjet][ieta]->Fill(dphijh,trackpt);
 
 
        } //track loop
@@ -591,8 +625,7 @@ void AliAnalysisTaskEmcalJetHMEC::UserExec(Option_t *)
 
   
   
-  
-  
+   
   PostData(1, fOutputList);
 }      
 
@@ -683,9 +716,9 @@ void AliAnalysisTaskEmcalJetHMEC::GetDimParams(Int_t iEntry, TString &label, Int
 
    case 4:
       label = "deltaEta";
-      nbins = 8;
-      xmin = -1.6;
-      xmax = 1.6;
+      nbins = 24;
+      xmin = -1.2;
+      xmax = 1.2;
       break;
 
 
@@ -725,7 +758,7 @@ void AliAnalysisTaskEmcalJetHMEC::GetDimParams(Int_t iEntry, TString &label, Int
 // From CF event mixing code PhiCorrelations
 TObjArray* AliAnalysisTaskEmcalJetHMEC::CloneAndReduceTrackList(TObjArray* tracks)
 {
-  // clones a track list by using AliDPhiBasicParticle which uses much less memory (used for event mixing)
+  // clones a track list by using AliPicoTrack which uses much less memory (used for event mixing)
   
   TObjArray* tracksClone = new TObjArray;
   tracksClone->SetOwner(kTRUE);
@@ -733,9 +766,23 @@ TObjArray* AliAnalysisTaskEmcalJetHMEC::CloneAndReduceTrackList(TObjArray* track
   for (Int_t i=0; i<tracks->GetEntriesFast(); i++)
   {
     AliVParticle* particle = (AliVParticle*) tracks->At(i);
-    if(TMath::Abs(particle->Eta())>0.9) continue;
+    if(TMath::Abs(particle->Eta())>fTrkEta) continue;
     if(particle->Pt()<0.15)continue;
 
+    Double_t trackpt=particle->Pt();
+
+    Int_t hadbin=-1;
+    if(trackpt<0.5) hadbin=0;
+    else if(trackpt<1) hadbin=1;
+    else if(trackpt<2) hadbin=2;
+    else if(trackpt<3) hadbin=3;
+    else if(trackpt<5) hadbin=4;
+    else if(trackpt<8) hadbin=5;
+    else if(trackpt<20) hadbin=6;
+
+    if(hadbin>-1) fHistTrackEtaPhi[hadbin]->Fill(particle->Eta(),particle->Phi());
+
+
     tracksClone->Add(new AliPicoTrack(particle->Pt(), particle->Eta(), particle->Phi(), particle->Charge(), 0, 0, 0, 0));
   }
   
index aed5d67d72aed1310f63aa0d0c9420de74acea52..28445a77548b6779524a1425179f18a24765655d 100644 (file)
@@ -32,6 +32,8 @@ class AliAnalysisTaskEmcalJetHMEC : public AliAnalysisTaskSE {
   virtual void            SetTrkBias(Double_t b)                   { fTrkBias    = b; }  //require a track with pt > b in jet
   virtual void            SetClusBias(Double_t b)                  { fClusBias   = b; }  //require a cluster with pt > b in jet
 
+  virtual void            SetTrkEta(Double_t e)                    { fTrkEta   = e; }  //eta range of the associated tracks
+
   virtual void            SetJetEta(Double_t emin, Double_t emax)  { fEtamin = emin; fEtamax = emax; }
   virtual void            SetJetPhi(Double_t pmin, Double_t pmax)  { fPhimin = pmin; fPhimax = pmax; }
   virtual void            SetEventMixing(Int_t yesno)              { fDoEventMixing=yesno;}
@@ -48,15 +50,16 @@ class AliAnalysisTaskEmcalJetHMEC : public AliAnalysisTaskSE {
 
   TString                fTracksName;              //name of tracks collection
   TString                fJetsName;                //name of Jet collection
-  Double_t               fPhimin;                  // phi min
-  Double_t               fPhimax;                  // phi max
-  Double_t               fEtamin;                  // eta min
-  Double_t               fEtamax;                  // eta max
-  Double_t               fAreacut;                 // area cut
+  Double_t               fPhimin;                  // phi min of jet
+  Double_t               fPhimax;                  // phi max of jet
+  Double_t               fEtamin;                  // eta min of jet
+  Double_t               fEtamax;                  // eta max of jet
+  Double_t               fAreacut;                 // area cut of jet
   Double_t               fTrkBias;
   Double_t               fClusBias;
-  Int_t                  fDoEventMixing;
-  Int_t                 fMixingTracks;         // size of track buffer for event mixing
+  Double_t               fTrkEta;                  // eta min/max of tracks
+  Int_t                  fDoEventMixing;           // flag to do evt mixing
+  Int_t                 fMixingTracks;            // size of track buffer for event mixing
   TObjArray*             CloneAndReduceTrackList(TObjArray* tracks);
 
   AliESDEvent           *fESD;    //! ESD object
@@ -65,7 +68,7 @@ class AliAnalysisTaskEmcalJetHMEC : public AliAnalysisTaskSE {
   TH1                   *fHistTrackPt; //! Pt spectrum
   TH1                   *fHistCentrality;
   TH2                   *fHistJetEtaPhi;
-  TH2                   *fHistTrackEtaPhi;
+  TH2                   *fHistTrackEtaPhi[7];
   TH2                   *fHistJetHEtaPhi;
 
   TH1                   *fHistJetPt[6];
@@ -75,12 +78,13 @@ class AliAnalysisTaskEmcalJetHMEC : public AliAnalysisTaskSE {
   TH2                   *fHistJetHBias[6][5][3];
   TH2                   *fHistJetHTT[6][5][3];
   THnSparse             *fhnMixedEvents;      //!mixed events matrix
+  THnSparse             *fhnJH;      //Fg events matrix
 
  private:
    
   AliAnalysisTaskEmcalJetHMEC(const AliAnalysisTaskEmcalJetHMEC&); // not implemented
   AliAnalysisTaskEmcalJetHMEC& operator=(const AliAnalysisTaskEmcalJetHMEC&); // not implemented
   
-  ClassDef(AliAnalysisTaskEmcalJetHMEC, 6); 
+  ClassDef(AliAnalysisTaskEmcalJetHMEC, 8); 
 };
 #endif
index 4b443366dcfb8308e3b1b0e0834d1c1002b3acb6..e3a86f4c439b9556759741f7742d6006c1eae0a4 100644 (file)
@@ -1,4 +1,4 @@
-// $Id: AddTaskEmcalJetHMECadron.C 57095 2012-06-27 18:50:07Z mconnors $
+// $Id: AddTaskEmcalJetHMECadron.C 57095 2012-07-23 3:50:07Z mconnors $
 
 AliAnalysisTaskEmcalJetHMEC* AddTaskEmcalJetHMEC(
    const char *outfilename    = "AnalysisOutput.root",
@@ -9,9 +9,11 @@ AliAnalysisTaskEmcalJetHMEC* AddTaskEmcalJetHMEC(
    const Double_t minEta      = -0.3,
    const Double_t maxEta      = 0.3,
    const Double_t minArea     = 0.4,
-   const Int_t EvtMix         = 0,
+   const Int_t EvtMix         = 0, 
    const Double_t TrkBias     = 5,
-   const Double_t ClusBias    = 5                                                 
+   const Double_t ClusBias    = 5,
+   const Double_t TrkEta     = 0.9
+                                                 
 )
 {  
   // Get the pointer to the existing analysis manager via the static access method.
@@ -45,6 +47,7 @@ AliAnalysisTaskEmcalJetHMEC* AddTaskEmcalJetHMEC(
   correlationtask->SetEventMixing(EvtMix);
   correlationtask->SetTrkBias(TrkBias);
   correlationtask->SetClusBias(ClusBias);
+  correlationtask->SetTrkEta(TrkEta);
 
  
   //-------------------------------------------------------