]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGHF/correlationHF/macros/makeTFileAssociatedTrackCuts.C
fix: parse the delimiter correctly
[u/mrichter/AliRoot.git] / PWGHF / correlationHF / macros / makeTFileAssociatedTrackCuts.C
index 2c551997044476a7b99330f0370e9d390536c566..e540bb9f558fba71b5ae657f8155eb34881d8283 100644 (file)
@@ -3,21 +3,22 @@
 #include "AliHFAssociatedTrackCuts.h"
 #include <TClonesArray.h>
 #include <TParameter.h>
-//#include "AliAODPidHF.h"
+#include "AliAODPidHF.h"
 
 /* $Id$ */
 
-void makeInputHFCorrelation(){
-       
+void makeInputHFCorrelation(TString suffix = ""){
        
        AliHFAssociatedTrackCuts* HFCorrelationCuts=new AliHFAssociatedTrackCuts();
        HFCorrelationCuts->SetName("AssociatedCuts");
        HFCorrelationCuts->SetTitle("Cuts for associated track");
        Float_t eta = 0.9;
-
        //______________________________ set ESD track cuts
        AliESDtrackCuts* esdTrackCuts=new AliESDtrackCuts();
 
+       esdTrackCuts->SetRequireSigmaToVertex(kFALSE);
+       esdTrackCuts->SetDCAToVertex2D(kFALSE);
+       
        esdTrackCuts->SetRequireTPCRefit(kTRUE);
        esdTrackCuts->SetRequireITSRefit(kTRUE);
        esdTrackCuts->SetMinNClustersTPC(80);
@@ -27,6 +28,31 @@ void makeInputHFCorrelation(){
        esdTrackCuts->SetPtRange(0.3,1.e10);
        esdTrackCuts->SetEtaRange(-eta,eta);
        HFCorrelationCuts->AddTrackCuts(esdTrackCuts);
+       //______________________________ set Pool for event mixing 
+       
+       
+       
+       HFCorrelationCuts->SetMaxNEventsInPool(200);
+       HFCorrelationCuts->SetMinNTracksInPool(1000);
+       HFCorrelationCuts->SetMinEventsToMix(8);
+       
+       HFCorrelationCuts->SetNofPoolBins(5,5);
+       
+       Double_t MBins[]={0,20,40,60,80,500};
+       Double_t * MultiplicityBins = MBins;
+       
+       Double_t ZBins[]={-10,-5,-2.5,2.5,5,10};
+       Double_t *ZVrtxBins = ZBins;
+       
+       HFCorrelationCuts->SetPoolBins(ZVrtxBins,MultiplicityBins);
+       
+       //______________________________ MC event type
+       
+       
+       HFCorrelationCuts->SetNofMCEventTypes(2);
+       Int_t MCEvType[]={53,68};
+       Int_t *MCEvTypeArray = MCEvType;
+       HFCorrelationCuts->SetMCEventTypes(MCEvTypeArray);
        
        //______________________________ set kinematics cuts for AOD track 
        const int nofcuts = 4;
@@ -34,16 +60,16 @@ void makeInputHFCorrelation(){
        trackcutsarray=new Float_t[nofcuts];
        trackcutsarray[0] = 0.3;//track min pt
        trackcutsarray[1] = 100.;//track max pt
-       trackcutsarray[2] = 0.;//track min impact parameter
+       trackcutsarray[2] = -1000000000.;//track min impact parameter
        trackcutsarray[3] = 100.;//track max impact parameter
-       
        HFCorrelationCuts->SetNVarsTrack(nofcuts);
        HFCorrelationCuts->SetAODTrackCuts(trackcutsarray);
        
+       HFCorrelationCuts->SetCharge(0); // -1/+1 to look for opposite/same charge, 0 no charge selection 
+       HFCorrelationCuts->SetFilterBit(0); // set 0 for analysis with AOD from 2010
        
        
        //______________________________ set kinematics cuts for AOD v0 
-       
        const int nofcuts2 = 7;
        
        Float_t* vzerocutsarray;
@@ -60,7 +86,7 @@ void makeInputHFCorrelation(){
        HFCorrelationCuts->SetAODvZeroCuts(vzerocutsarray);
        
        //______________________________ set PID
-        
+
        Int_t mode =1;
        AliAODPidHF* pidObj=new AliAODPidHF();
        pidObj->SetMatch(mode);
@@ -71,15 +97,30 @@ void makeInputHFCorrelation(){
        pidObj->SetCompat(kTRUE);
        
        HFCorrelationCuts->SetPidHF(pidObj);
+
+        //______________________________ Add additional info
        
+       TString description = "Cuts for hadron selection - low pt selection cut";
        
+       HFCorrelationCuts->AddDescription(description);
     //______________________________ save to *.root file
        HFCorrelationCuts->PrintAll();
        
-       TFile* fout=new TFile("AssocPartCuts.root","recreate");   //set this!! 
+       TString outputfilename = "AssocPartCuts";
+       outputfilename += suffix;
+       outputfilename += ".root";
+       
+       TString pathOutputFile = "~/CorrelationAnalysis/CutObjects/AssocTracks/";
+       
+       outputfilename.Prepend(pathOutputFile.Data());
+       
+       
+       TFile* fout=new TFile(outputfilename.Data(),"recreate");   //set this!! 
        fout->cd();
        HFCorrelationCuts->Write();
        fout->Close();
-
+       cout << "***************************************** " << endl;
+       cout << "File " << outputfilename << "  created " << endl;
+       cout << "***************************************** " << endl;
 
 }