#include <Riostream.h>
#include <TFile.h>
#include "AliHFAssociatedTrackCuts.h"
#include <TClonesArray.h>
#include <TParameter.h>
#include "AliAODPidHF.h"
/* $Id$ */
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);
esdTrackCuts->SetMinNClustersITS(2);
//esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,AliESDtrackCuts::kAny); // set requirement on Pixels
// default is kBoth, otherwise kAny
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;
Float_t* trackcutsarray;
trackcutsarray=new Float_t[nofcuts];
trackcutsarray[0] = 0.3;//track min pt
trackcutsarray[1] = 100.;//track max pt
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;
vzerocutsarray=new Float_t[nofcuts2];
vzerocutsarray[0] = 0.2; // max dca between two daugters (cm)
vzerocutsarray[1] = 2; // max chi square
vzerocutsarray[2] = 2.; // min decay length (cm)
vzerocutsarray[3] = 15; // max decay length (cm)
vzerocutsarray[4] = 0.2; // min opening angle between two daugters
vzerocutsarray[5] = 0; // min pt of k0 (GeV/c)
vzerocutsarray[6] = 0.9; // set eta acceptance
HFCorrelationCuts->SetNVarsVzero(nofcuts2);
HFCorrelationCuts->SetAODvZeroCuts(vzerocutsarray);
//______________________________ set PID
Int_t mode =1;
AliAODPidHF* pidObj=new AliAODPidHF();
pidObj->SetMatch(mode);
pidObj->SetSigma(0,2); // TPC
pidObj->SetSigma(3,3); // TOF
pidObj->SetTPC(kTRUE);
pidObj->SetTOF(kTRUE);
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();
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;
}
makeTFileAssociatedTrackCuts.C:1 makeTFileAssociatedTrackCuts.C:2 makeTFileAssociatedTrackCuts.C:3 makeTFileAssociatedTrackCuts.C:4 makeTFileAssociatedTrackCuts.C:5 makeTFileAssociatedTrackCuts.C:6 makeTFileAssociatedTrackCuts.C:7 makeTFileAssociatedTrackCuts.C:8 makeTFileAssociatedTrackCuts.C:9 makeTFileAssociatedTrackCuts.C:10 makeTFileAssociatedTrackCuts.C:11 makeTFileAssociatedTrackCuts.C:12 makeTFileAssociatedTrackCuts.C:13 makeTFileAssociatedTrackCuts.C:14 makeTFileAssociatedTrackCuts.C:15 makeTFileAssociatedTrackCuts.C:16 makeTFileAssociatedTrackCuts.C:17 makeTFileAssociatedTrackCuts.C:18 makeTFileAssociatedTrackCuts.C:19 makeTFileAssociatedTrackCuts.C:20 makeTFileAssociatedTrackCuts.C:21 makeTFileAssociatedTrackCuts.C:22 makeTFileAssociatedTrackCuts.C:23 makeTFileAssociatedTrackCuts.C:24 makeTFileAssociatedTrackCuts.C:25 makeTFileAssociatedTrackCuts.C:26 makeTFileAssociatedTrackCuts.C:27 makeTFileAssociatedTrackCuts.C:28 makeTFileAssociatedTrackCuts.C:29 makeTFileAssociatedTrackCuts.C:30 makeTFileAssociatedTrackCuts.C:31 makeTFileAssociatedTrackCuts.C:32 makeTFileAssociatedTrackCuts.C:33 makeTFileAssociatedTrackCuts.C:34 makeTFileAssociatedTrackCuts.C:35 makeTFileAssociatedTrackCuts.C:36 makeTFileAssociatedTrackCuts.C:37 makeTFileAssociatedTrackCuts.C:38 makeTFileAssociatedTrackCuts.C:39 makeTFileAssociatedTrackCuts.C:40 makeTFileAssociatedTrackCuts.C:41 makeTFileAssociatedTrackCuts.C:42 makeTFileAssociatedTrackCuts.C:43 makeTFileAssociatedTrackCuts.C:44 makeTFileAssociatedTrackCuts.C:45 makeTFileAssociatedTrackCuts.C:46 makeTFileAssociatedTrackCuts.C:47 makeTFileAssociatedTrackCuts.C:48 makeTFileAssociatedTrackCuts.C:49 makeTFileAssociatedTrackCuts.C:50 makeTFileAssociatedTrackCuts.C:51 makeTFileAssociatedTrackCuts.C:52 makeTFileAssociatedTrackCuts.C:53 makeTFileAssociatedTrackCuts.C:54 makeTFileAssociatedTrackCuts.C:55 makeTFileAssociatedTrackCuts.C:56 makeTFileAssociatedTrackCuts.C:57 makeTFileAssociatedTrackCuts.C:58 makeTFileAssociatedTrackCuts.C:59 makeTFileAssociatedTrackCuts.C:60 makeTFileAssociatedTrackCuts.C:61 makeTFileAssociatedTrackCuts.C:62 makeTFileAssociatedTrackCuts.C:63 makeTFileAssociatedTrackCuts.C:64 makeTFileAssociatedTrackCuts.C:65 makeTFileAssociatedTrackCuts.C:66 makeTFileAssociatedTrackCuts.C:67 makeTFileAssociatedTrackCuts.C:68 makeTFileAssociatedTrackCuts.C:69 makeTFileAssociatedTrackCuts.C:70 makeTFileAssociatedTrackCuts.C:71 makeTFileAssociatedTrackCuts.C:72 makeTFileAssociatedTrackCuts.C:73 makeTFileAssociatedTrackCuts.C:74 makeTFileAssociatedTrackCuts.C:75 makeTFileAssociatedTrackCuts.C:76 makeTFileAssociatedTrackCuts.C:77 makeTFileAssociatedTrackCuts.C:78 makeTFileAssociatedTrackCuts.C:79 makeTFileAssociatedTrackCuts.C:80 makeTFileAssociatedTrackCuts.C:81 makeTFileAssociatedTrackCuts.C:82 makeTFileAssociatedTrackCuts.C:83 makeTFileAssociatedTrackCuts.C:84 makeTFileAssociatedTrackCuts.C:85 makeTFileAssociatedTrackCuts.C:86 makeTFileAssociatedTrackCuts.C:87 makeTFileAssociatedTrackCuts.C:88 makeTFileAssociatedTrackCuts.C:89 makeTFileAssociatedTrackCuts.C:90 makeTFileAssociatedTrackCuts.C:91 makeTFileAssociatedTrackCuts.C:92 makeTFileAssociatedTrackCuts.C:93 makeTFileAssociatedTrackCuts.C:94 makeTFileAssociatedTrackCuts.C:95 makeTFileAssociatedTrackCuts.C:96 makeTFileAssociatedTrackCuts.C:97 makeTFileAssociatedTrackCuts.C:98 makeTFileAssociatedTrackCuts.C:99 makeTFileAssociatedTrackCuts.C:100 makeTFileAssociatedTrackCuts.C:101 makeTFileAssociatedTrackCuts.C:102 makeTFileAssociatedTrackCuts.C:103 makeTFileAssociatedTrackCuts.C:104 makeTFileAssociatedTrackCuts.C:105 makeTFileAssociatedTrackCuts.C:106 makeTFileAssociatedTrackCuts.C:107 makeTFileAssociatedTrackCuts.C:108 makeTFileAssociatedTrackCuts.C:109 makeTFileAssociatedTrackCuts.C:110 makeTFileAssociatedTrackCuts.C:111 makeTFileAssociatedTrackCuts.C:112 makeTFileAssociatedTrackCuts.C:113 makeTFileAssociatedTrackCuts.C:114 makeTFileAssociatedTrackCuts.C:115 makeTFileAssociatedTrackCuts.C:116 makeTFileAssociatedTrackCuts.C:117 makeTFileAssociatedTrackCuts.C:118 makeTFileAssociatedTrackCuts.C:119 makeTFileAssociatedTrackCuts.C:120 makeTFileAssociatedTrackCuts.C:121 makeTFileAssociatedTrackCuts.C:122 makeTFileAssociatedTrackCuts.C:123 makeTFileAssociatedTrackCuts.C:124 makeTFileAssociatedTrackCuts.C:125 makeTFileAssociatedTrackCuts.C:126 makeTFileAssociatedTrackCuts.C:127