]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Updates Leticia
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 13 May 2013 14:13:40 +0000 (14:13 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 13 May 2013 14:13:40 +0000 (14:13 +0000)
PWGJE/AliAnalysisTaskJetCore.cxx
PWGJE/AliAnalysisTaskJetCore.h

index 0f6e600589728993d56efd87f05f11dedcb78a4f..a0e0d5cf7e7891683344a58bb9a268733830e93a 100644 (file)
@@ -32,7 +32,7 @@
 #include "TH3F.h"
 #include "THnSparse.h"
 #include "TCanvas.h"
-
+#include "TRandom3.h"
 #include "AliLog.h"
 
 #include "AliAnalysisTask.h"
@@ -88,6 +88,9 @@ fDoEventMixing(0),
 fFlagPhiBkg(0),
 fFlagEtaBkg(0),
 fFlagJetHadron(0),
+fTTLow(11),
+fTTUp(13),
+fHardest(0),
 fFlagRandom(0),
 fFlagOnlyRecoil(0),
 fFlagOnlyHardest(1),
@@ -154,8 +157,8 @@ fh2RPTC10(0x0),
 fh2RPTC20(0x0), 
 fHJetSpec(0x0),
 fhTTPt(0x0),
-fHJetPhiCorr(0x0)
-
+fHJetPhiCorr(0x0),
+fRandom(0x0)
  
 {
    // default Constructor
@@ -209,6 +212,9 @@ fDoEventMixing(0),
 fFlagPhiBkg(0),
 fFlagEtaBkg(0),
 fFlagJetHadron(0),
+fTTLow(11),
+fTTUp(13),
+fHardest(0),
 fFlagRandom(0),
 fFlagOnlyRecoil(0),
 fFlagOnlyHardest(1),
@@ -275,7 +281,8 @@ fh2RPTC10(0x0),
 fh2RPTC20(0x0), 
 fHJetSpec(0x0),
 fhTTPt(0x0),
-fHJetPhiCorr(0x0)
+fHJetPhiCorr(0x0),
+fRandom(0x0)
 
  {
    // Constructor
@@ -332,6 +339,12 @@ void AliAnalysisTaskJetCore::UserCreateOutputObjects()
    TH1::AddDirectory(kFALSE);
 
 
+        // set seed
+   fRandom = new TRandom3(0);
+  
+
+
+
    fHistEvtSelection = new TH1I("fHistEvtSelection", "event selection", 6, -0.5, 5.5);
    fHistEvtSelection->GetXaxis()->SetBinLabel(1,"ACCEPTED");
    fHistEvtSelection->GetXaxis()->SetBinLabel(2,"events IN");
@@ -681,9 +694,10 @@ void AliAnalysisTaskJetCore::UserExec(Option_t *)
    //for(Int_t n=0;n<aodJets[0]->GetEntriesFast();n++){
    //  ptsub[n]=0;
    //  inord[n]=0;}   
-
+   Int_t nT=0;
    TList ParticleList;
-   Int_t nT = GetListOfTracks(&ParticleList);
+   if(fHardest==1) nT = GetListOfTracks(&ParticleList);
+   if(fHardest==0) nT=SelectTrigger(&ParticleList);
      for (Int_t iJetType = 0; iJetType < 2; iJetType++) {
       fListJets[iJetType]->Clear();
       if (!aodJets[iJetType]) continue;
@@ -712,6 +726,8 @@ void AliAnalysisTaskJetCore::UserExec(Option_t *)
    Int_t trigInTrack=-1;
    fRPAngle = aod->GetHeader()->GetEventplane();     
 
+
+
    AliVParticle *partback = (AliVParticle*)ParticleList.At(nT);     
    if(!partback){  
    PostData(1, fOutputList);
@@ -1144,6 +1160,65 @@ Int_t  AliAnalysisTaskJetCore::GetListOfTracks(TList *list){
  
 }
 
+
+
+     Int_t  AliAnalysisTaskJetCore::SelectTrigger(TList *list){
+     Int_t iCount = 0;
+     AliAODEvent *aod = 0;
+     if(!fESD)aod = fAODIn;
+     else aod = fAODOut;   
+     if(!aod)return 0;
+     Int_t index=-1;
+     Double_t triggers[100];
+     for(Int_t cr=0;cr<100;cr++){triggers[cr]=-1;}
+     Int_t im=0;
+     for(int it = 0;it < aod->GetNumberOfTracks();++it){
+      AliAODTrack *tr = aod->GetTrack(it);
+      Bool_t bGood = false;
+      if(fFilterType == 0)bGood = true;
+      else if(fFilterType == 1)bGood = tr->IsHybridTPCConstrainedGlobal();
+      else if(fFilterType == 2)bGood = 
+      tr->IsHybridGlobalConstrainedGlobal();    
+      if((fFilterMask>0)&&!(tr->TestFilterBit(fFilterMask)))continue;
+      if(bGood==false) continue;
+      if(TMath::Abs(tr->Eta())>0.9)continue;
+      if(tr->Pt()<0.15)continue;
+      list->Add(tr);
+      iCount++;
+      
+      if(tr->Pt()>=fTTLow && tr->Pt()<fTTUp){
+       triggers[im]=iCount-1;
+        im=im+1;}
+
+     }
+      Int_t rd=0;
+      if(im==0) rd=0;
+      if(im>0) rd=fRandom->Integer(im-1);
+      index=triggers[rd];
+
+     
+  
+   
+  
+      return index;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
    Int_t  AliAnalysisTaskJetCore::GetHardestTrackBackToJet(AliAODJet *jetbig){
  
     AliAODEvent *aod = 0;
index dbeb6b05475c96a007aeac762987aa0800bb4796..98fb57fab84eb6390170ddc77bd4ab4d283550c7 100644 (file)
@@ -17,6 +17,7 @@ class TH1I;
 class TH2F;
 class TH3F;
 class THnSparse;
+class TRandom3;
 class AliESDEvent;
 class AliAODExtension;
 class AliAODEvent;
@@ -83,6 +84,9 @@ public:
    virtual void     SetFlagPhiBkg(Int_t yesno){fFlagPhiBkg=yesno;}
    virtual void     SetFlagEtaBkg(Int_t yesno){fFlagEtaBkg=yesno;}
    virtual void     SetFlagJetHadron(Int_t yesno){fFlagJetHadron=yesno;}
+   virtual void     SetTTLow(Float_t ttlow){fTTLow=ttlow;}
+   virtual void     SetTTUp(Float_t ttup){fTTUp=ttup;}
+   virtual void     SetFlagHardest(Int_t yesno){fHardest=yesno;}
    virtual void     SetFlagRandom(Int_t yesno){fFlagRandom=yesno;}
    virtual void     SetFlagOnlyRecoil(Int_t yesno){fFlagOnlyRecoil=yesno;}
    virtual void     SetFlagOnlyHardest(Int_t yesno){fFlagOnlyHardest=yesno;} 
@@ -109,6 +113,7 @@ private:
     AliAODEvent *fAODOut;    //! AOD event 
     AliAODExtension  *fAODExtension; //! where we take the jets from can be input or output AOD
     Int_t   GetListOfTracks(TList *list);
+   Int_t   SelectTrigger(TList *list);
    Int_t   GetHardestTrackBackToJet(AliAODJet *jet);
    Int_t   GetListOfTracksCloseToJet(TList *list,AliAODJet *jet);
    // jets to compare
@@ -140,6 +145,9 @@ private:
    Int_t   fFlagPhiBkg;
    Int_t   fFlagEtaBkg;
    Int_t   fFlagJetHadron;
+   Float_t fTTLow;
+   Float_t fTTUp;
+   Int_t   fHardest;
    Int_t   fFlagRandom;
    Int_t   fFlagOnlyRecoil;
    Int_t   fFlagOnlyHardest;
@@ -215,6 +223,8 @@ private:
      Double_t            fTrigBuffer[10][7];      //!buffer for triggers   
      TH2F        *fhTTPt;                     //! Trigger track pt for normalization (Rongrong)
      THnSparse   *fHJetPhiCorr;               //! Azimuthal correlation between trigger track and recoil jets (Rongrong)
+       TRandom3*                   fRandom;          // TRandom3  
+
    AliAnalysisTaskJetCore(const AliAnalysisTaskJetCore&); // not implemented
    AliAnalysisTaskJetCore& operator=(const AliAnalysisTaskJetCore&); // not implemented