]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/GammaConv/ConvCorrelations/macros/ConfigGammaJet.C
comment
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / ConvCorrelations / macros / ConfigGammaJet.C
1
2
3 void ConfigGammaJet (TString inputfile = "files.txt" ) {
4
5   Int_t debugLevel = 0;
6   
7   gSystem->Load("libTree.so");
8   gSystem->Load("libPhysics.so");
9   gSystem->Load("libGeom.so");
10   gSystem->Load("libVMC.so");
11   gSystem->Load("libSTEERBase.so");
12   gSystem->Load("libESD.so");
13   gSystem->Load("libAOD.so"); 
14   gSystem->Load("libANALYSIS");
15   gSystem->Load("libANALYSISalice");
16   gSystem->Load("libJETAN.so");
17   gSystem->Load("libPWG4GammaConv.so");
18   gSystem->AddIncludePath("-I$ALICE_ROOT/include");
19
20
21   TChain * chain = createAODChain (inputfile);
22   if(!chain) {
23     cout << "Errror in chain cration"<<endl;
24     return -1;
25   }
26   
27   AliAODInputHandler * inpHandler = new AliAODInputHandler();
28   inpHandler->AddFriend("AliAODGammaConversion.root");
29   
30   AliAnalysisManager *mgr  = new AliAnalysisManager("GammaJet Manager", "GammaJet Manager");
31   mgr->SetInputEventHandler  (inpHandler);
32   mgr->SetDebugLevel(debugLevel);
33
34   AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
35   AliAnalysisDataContainer *coutput2 = mgr->CreateContainer("histos", TList::Class(), AliAnalysisManager::kOutputContainer, "histos.root");
36
37   // AliAnaConvIsolation * iso3 = new AliAnaConvIsolation(0.7, 0.5, 0.5, 0.5, 0.5);
38   // gammaJetAna->AddIsolationAna(dynamic_cast<TObject*>(iso3));
39
40
41   AliAnalysisTaskGammaJet * gammaJetAna = new AliAnalysisTaskGammaJet("gamma jet analysis");
42   gammaJetAna->SetDebugLevel(0);
43   //gammaJetAna->SetConversionCutId("90022670901120321036000000090");
44   gammaJetAna->SetGammaCutId("90035620801003321136000000090"); 
45   gammaJetAna->SetPionCutId("90036620801003321136000000090"); 
46
47   gammaJetAna->SetMinNTracks(0);
48   mgr->AddTask(gammaJetAna);
49
50   AliAnaConvIsolation * isolation = gammaJetAna->GetIsolation();
51   isolation->SetMaxPtThreshold(0.7);
52   isolation->SetSumPtThreshold(2.5);
53   isolation->SetSumPtFraction(0.1);
54   isolation->SetConeSize(0.4);
55  
56   AliAnaConvCorrPhoton * ghAna = new AliAnaConvCorrPhoton("photon_wDec");
57   ghAna->DoDecayParticles();
58   gammaJetAna->AddPhotonHadronAna(dynamic_cast<TObject*>(ghAna));
59
60   AliAnaConvCorrPhoton * ghAna2 = new AliAnaConvCorrPhoton("photon_noDec");
61   ghAna2->SkipDecayParticles();
62   gammaJetAna->AddPhotonHadronAna(dynamic_cast<TObject*>(ghAna2));
63
64   AliAnaConvCorrPhoton * ghAna3 = new AliAnaConvCorrPhoton("photon_DecOnly");
65   ghAna3->DoDecayOnly();
66   gammaJetAna->AddPhotonHadronAna(dynamic_cast<TObject*>(ghAna3));
67
68   AliAnaConvCorrPion * gPiAna = new AliAnaConvCorrPion("pionHadron");
69   gammaJetAna->AddPionHadronAna(dynamic_cast<TObject*>(gPiAna));
70
71   inpHandler->AddFriend("AliAODs.pwg4jets.root");
72   AliAnaConvCorrPhotonJet* gJetAna = new AliAnaConvCorrPhotonJet("photonJet");
73   gammaJetAna->AddPhotonJetAna(gJetAna);
74  
75   AliAnaConvCorrPionJet* pJetAna = new AliAnaConvCorrPionJet("pionJet");
76   gammaJetAna->AddPionJetAna(pJetAna);
77
78   mgr->ConnectInput  (gammaJetAna,  0, cinput1  );
79   mgr->ConnectOutput (gammaJetAna,  1, coutput2 );
80   
81   mgr->InitAnalysis();
82   mgr->PrintStatus();
83   //mgr->StartAnalysis("local",chain);
84   mgr->StartAnalysis("local",chain, 100000);
85   
86 }
87
88
89 ///_________________________________________________________________________________________
90 TChain * createAODChain (TString inputfile = "allfiles.txt") {
91
92   chain = new TChain("aodTree");
93
94   TString line;
95   ifstream in;
96   in.open(inputfile.Data());
97   while (in.good()) {
98     in >> line;
99     if (line.Length() == 0) continue;
100     chain->Add(line.Data());
101   }
102
103   return chain;
104   
105 }