]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGHF/correlationHF/macros/makeTFileAssociatedTrackCuts.C
New class for steering D-hadron correlation analysis (Sandro)
[u/mrichter/AliRoot.git] / PWGHF / correlationHF / macros / makeTFileAssociatedTrackCuts.C
index 7e194618de9645a228d48263b3d6d8d67fda6ae4..f9c946faf4b007786c59f99de92f68797a4c59ea 100644 (file)
-#include <Riostream.h>
-#include <TFile.h>
-#include "AliHFAssociatedTrackCuts.h"
-#include <TClonesArray.h>
-#include <TParameter.h>
-//#include "AliAODPidHF.h"
-
-/* $Id$ */
-
-void makeInputHFCorrelation(){
-       
-       
-       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 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] = 0.;//track min impact parameter
-       trackcutsarray[3] = 100.;//track max impact parameter
-       
-       HFCorrelationCuts->SetNVarsTrack(nofcuts);
-       HFCorrelationCuts->SetAODTrackCuts(trackcutsarray);
-       
-       
-       
-       //______________________________ 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);
-       
-       
-    //______________________________ save to *.root file
-       HFCorrelationCuts->PrintAll();
-       
-       TFile* fout=new TFile("AssocPartCuts.root","recreate");   //set this!! 
-       fout->cd();
-       HFCorrelationCuts->Write();
-       fout->Close();
-
-
-}
+#include <Riostream.h>\r
+#include <TFile.h>\r
+#include "AliHFAssociatedTrackCuts.h"\r
+#include <TClonesArray.h>\r
+#include <TParameter.h>\r
+#include "AliAODPidHF.h"\r
+\r
+/* $Id$ */\r
+\r
+void makeInputHFCorrelation(){\r
+       \r
+       AliHFAssociatedTrackCuts* HFCorrelationCuts=new AliHFAssociatedTrackCuts();\r
+       HFCorrelationCuts->SetName("AssociatedCuts");\r
+       HFCorrelationCuts->SetTitle("Cuts for associated track");\r
+       Float_t eta = 0.9;\r
+       //______________________________ set ESD track cuts\r
+       AliESDtrackCuts* esdTrackCuts=new AliESDtrackCuts();\r
+\r
+       esdTrackCuts->SetRequireSigmaToVertex(kFALSE);\r
+       esdTrackCuts->SetDCAToVertex2D(kFALSE);\r
+       \r
+       esdTrackCuts->SetRequireTPCRefit(kTRUE);\r
+       esdTrackCuts->SetRequireITSRefit(kTRUE);\r
+       esdTrackCuts->SetMinNClustersTPC(80);\r
+       esdTrackCuts->SetMinNClustersITS(2); \r
+       //esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kSPD,AliESDtrackCuts::kAny); // set requirement on Pixels\r
+       // default is kBoth, otherwise kAny\r
+       esdTrackCuts->SetPtRange(0.3,1.e10);\r
+       esdTrackCuts->SetEtaRange(-eta,eta);\r
+       HFCorrelationCuts->AddTrackCuts(esdTrackCuts);\r
+       //______________________________ set Pool for event mixing \r
+       \r
+       \r
+       \r
+       HFCorrelationCuts->SetMaxNEventsInPool(200);\r
+       HFCorrelationCuts->SetMinNTracksInPool(1000);\r
+       HFCorrelationCuts->SetMinEventsToMix(8);\r
+       \r
+       HFCorrelationCuts->SetNofPoolBins(3,5);\r
+       \r
+       //Double_t MBins[]={0,20,40,60,80,500};\r
+       Double_t MBins[]={0,1,2,3,4,500};\r
+       Double_t * MultiplicityBins = MBins;\r
+       \r
+       //Double_t ZBins[]={-10,-5,-2.5,2.5,5,10};\r
+       Double_t ZBins[]={-10,-2.5,2.5,10};\r
+       Double_t *ZVrtxBins = ZBins;\r
+       \r
+       HFCorrelationCuts->SetPoolBins(ZVrtxBins,MultiplicityBins);\r
+       cout << "Crash 1 " << endl;\r
+       //______________________________ set kinematics cuts for AOD track \r
+       const int nofcuts = 4;\r
+       Float_t* trackcutsarray;\r
+       trackcutsarray=new Float_t[nofcuts];\r
+       cout << "Crash 1.1 " << endl;\r
+       trackcutsarray[0] = 0.3;//track min pt\r
+       trackcutsarray[1] = 100.;//track max pt\r
+       trackcutsarray[2] = 0.;//track min impact parameter\r
+       trackcutsarray[3] = 100.;//track max impact parameter\r
+       cout << "Crash 1.2 " << endl;\r
+       HFCorrelationCuts->SetNVarsTrack(nofcuts);\r
+       cout << "Crash 1.3 " << endl;\r
+       HFCorrelationCuts->SetAODTrackCuts(trackcutsarray);\r
+       \r
+       cout << "Crash 2 " << endl;\r
+       //______________________________ set kinematics cuts for AOD v0 \r
+       \r
+       const int nofcuts2 = 7;\r
+       \r
+       Float_t* vzerocutsarray;\r
+       vzerocutsarray=new Float_t[nofcuts2];\r
+       vzerocutsarray[0] = 0.2; // max dca between two daugters (cm)\r
+       vzerocutsarray[1] = 2; //  max chi square\r
+       vzerocutsarray[2] = 2.; // min decay length (cm) \r
+       vzerocutsarray[3] = 15; // max decay length (cm)\r
+       vzerocutsarray[4] = 0.2; // min opening angle between two daugters\r
+       vzerocutsarray[5] = 0; // min pt of k0 (GeV/c)\r
+       vzerocutsarray[6] = 0.9; // set eta acceptance\r
+\r
+       HFCorrelationCuts->SetNVarsVzero(nofcuts2);\r
+       HFCorrelationCuts->SetAODvZeroCuts(vzerocutsarray);\r
+       //______________________________ set PID\r
+       cout << "Crash 3 " << endl;\r
+\r
+       Int_t mode =1;\r
+       AliAODPidHF* pidObj=new AliAODPidHF();\r
+       pidObj->SetMatch(mode);\r
+       pidObj->SetSigma(0,2); // TPC\r
+       pidObj->SetSigma(3,3); // TOF\r
+       pidObj->SetTPC(kTRUE);\r
+       pidObj->SetTOF(kTRUE);\r
+       pidObj->SetCompat(kTRUE);\r
+       \r
+       HFCorrelationCuts->SetPidHF(pidObj);\r
+       cout << "Crash 4 " << endl;\r
+\r
+    //______________________________ save to *.root file\r
+       HFCorrelationCuts->PrintAll();\r
+       \r
+       TFile* fout=new TFile("AssocPartCuts.root","recreate");   //set this!! \r
+       fout->cd();\r
+       HFCorrelationCuts->Write();\r
+       fout->Close();\r
+       cout << "Crash 5 " << endl;\r
+\r
+}\r