-AliAnalysisTask *AddTask_GammaConvV1(TString collisionSystem = "pp"){
-
- //get the current analysis manager
- AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
- if (!mgr) {
- Error("AddTask_GammaConvV1", "No analysis manager found.");
- return 0;
- }
-
- Bool_t IsHeavyIon=collisionSystem.Contains("PbPb");
-
- TString cutnumber = "";
- TString cutnumberMeson = "";
- if(IsHeavyIon){
- cutnumber = "1080000002084001001500000";cutnumberMeson = "01021035000";
- } else{
- cutnumber = "0000000002084001001500000";cutnumberMeson = "01631035000";
- }
-
- //========= Add PID Reponse to ANALYSIS manager ====
- if(!(AliPIDResponse*)mgr->GetTask("PIDResponseTask")){
- gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C");
- AddTaskPIDResponse();
- }
-
- //========= Add V0 Reader to ANALYSIS manager =====
- AliV0ReaderV1 *fV0ReaderV1=new AliV0ReaderV1("V0ReaderV1");
- ConfigV0ReaderV1(fV0ReaderV1,cutnumber,IsHeavyIon);
- mgr->AddTask(fV0ReaderV1);
-
- AliLog::SetGlobalLogLevel(AliLog::kInfo);
- //================================================
- // data containers
- //================================================
- // find input container
- //below the trunk version
- AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
- //connect input V0Reader
- mgr->ConnectInput (fV0ReaderV1,0,cinput);
-
- //================================================
- //========= Add task to the ANALYSIS manager =====
- //================================================
- // data containers
- //================================================
- // find input container
- AliAnalysisTaskGammaConvV1 *task=NULL;
- task= new AliAnalysisTaskGammaConvV1("GammaConvV1");
- task->SetIsHeavyIon(IsHeavyIon);
- // Cut Numbers to use in Analysis
+void AddTask_GammaConvV1(TString mode){
+
+ gSystem->Load("libCore");
+ gSystem->Load("libTree");
+ gSystem->Load("libGeom");
+ gSystem->Load("libVMC");
+ gSystem->Load("libPhysics");
+ gSystem->Load("libMinuit");
+ gSystem->Load("libSTEERBase");
+ gSystem->Load("libESD");
+ gSystem->Load("libAOD");
+ gSystem->Load("libANALYSIS");
+ gSystem->Load("libANALYSISalice");
+ gSystem->Load("libPWGGAGammaConv");
+ gSystem->Load("libEve");
+ gSystem->Load("libCDB");
+ gSystem->Load("libProof");
+ gSystem->Load("libRAWDatabase");
+ gSystem->Load("libSTEER");
+ gSystem->Load("libSTEERBase");
+ gSystem->Load("libTender");
+ gSystem->Load("libTRDbase");
+ gSystem->Load("libVZERObase");
+ gSystem->Load("libVZEROrec");
+ gSystem->Load("libTenderSupplies");
- Int_t numberOfCuts = 1;
- if(trainConfig.Contains("PbPb")) numberOfCuts = 21;
- else if(trainConfig.Contains("pPb")) numberOfCuts = 1;
- else numberOfCuts = 9;
-
- TString *cutarray = new TString[numberOfCuts];
- TString *mesonCutArray = new TString[numberOfCuts];
- if(trainConfig.Contains("PbPb")){
- // Standard Cuts
-// cutarray[0] = "1000000042092970023220000"; mesonCutArray[0] = "01022045000"; //standard cut Pi0 PbPb 00-100
-// cutarray[0] = "1000001042092970023220000"; mesonCutArray[0] = "01022045000"; //standard cut Pi0 PbPb 00-100
-// cutarray[2] = "1000002042092970023220000"; mesonCutArray[2] = "01022045000"; //standard cut Pi0 PbPb 00-100
-// cutarray[0] = "3010001042092970023220000"; mesonCutArray[0] = "01022045000"; //standard cut Pi0 PbPb 00-05
-// cutarray[1] = "3120001042092970023220000"; mesonCutArray[1] = "01022045000"; //standard cut Pi0 PbPb 05-10
-// cutarray[2] = "1010001042092970023220000"; mesonCutArray[2] = "01022045000"; //standard cut Pi0 PbPb 00-10
-// cutarray[3] = "1120001042092970023220000"; mesonCutArray[3] = "01022045000"; //standard cut Pi0 PbPb 10-20
-// // cutarray[4] = "1020001042092970023220000"; mesonCutArray[4] = "01022045000"; //standard cut Pi0 PbPb 00-20
-// cutarray[4] = "1240001042092970023220000"; mesonCutArray[4] = "01022045000"; //standard cut Pi0 PbPb 20-40
-// cutarray[5] = "1460001042092970023220000"; mesonCutArray[5] = "01022065000"; //standard cut Pi0 PbPb 40-60
-// cutarray[6] = "1680001042092970023220000"; mesonCutArray[6] = "01022065000"; //standard cut Pi0 PbPb 60-80
-//
-// // CutStudies more BG events 20 events
-// cutarray[7] = "3010001042092970023220000"; mesonCutArray[7] = "01322045000";
-// cutarray[8] = "3120001042092970023220000"; mesonCutArray[8] = "01322045000";
-// cutarray[9] = "1010001042092970023220000"; mesonCutArray[9] = "01322045000";
-// cutarray[10] = "1120001042092970023220000"; mesonCutArray[10] = "01322045000";
-// // cutarray[12] = "1020001042092970023220000"; mesonCutArray[12] = "01322045000";
-// cutarray[11] = "1240001042092970023220000"; mesonCutArray[11] = "01322045000";
-// cutarray[12] = "1460001042092970023220000"; mesonCutArray[12] = "01322065000";
-// cutarray[13] = "1680001042092970023220000"; mesonCutArray[13] = "01322065000";
-
- // CutStudies more BG events 50 events
-// cutarray[0] = "3010001042092970023220000"; mesonCutArray[0] = "01522045000";
-// cutarray[1] = "3120001042092970023220000"; mesonCutArray[1] = "01522045000";
-// cutarray[2] = "1010001042092970023220000"; mesonCutArray[2] = "01522045000";
-// cutarray[3] = "1120001042092970023220000"; mesonCutArray[3] = "01522045000";
-// // cutarray[4] = "1020001042092970023220000"; mesonCutArray[4] = "01522045000";
-// cutarray[4] = "1240001042092970023220000"; mesonCutArray[4] = "01522045000";
-// cutarray[5] = "1460001042092970023220000"; mesonCutArray[5] = "01522065000";
-// cutarray[6] = "1680001042092970023220000"; mesonCutArray[6] = "01522065000";
-
- // Cutstudies 0-5% dEdx
- // cutarray[7] = "3010001042093970023220000"; mesonCutArray[7] = "01022045000";
- // cutarray[8] = "3010001042096970023220000"; mesonCutArray[8] = "01022045000";
- // cutarray[9] = "3010001042092470023220000"; mesonCutArray[9] = "01022045000";
- // cutarray[10] = "3010001042092770023220000"; mesonCutArray[10] = "01022045000";
- // cutarray[11] = "3010001042092950023220000"; mesonCutArray[11] = "01022045000";
- // // Cutstudies 5-10% dEdx
- // cutarray[12] = "3120001042093970023220000"; mesonCutArray[12] = "01022045000";
- // cutarray[13] = "3120001042096970023220000"; mesonCutArray[13] = "01022045000";
-// cutarray[7] = "3120001042092470023220000"; mesonCutArray[7] = "01022045000";
-// cutarray[8] = "3120001042092770023220000"; mesonCutArray[8] = "01022045000";
-// cutarray[9] = "3120001042092950023220000"; mesonCutArray[9] = "01022045000";
-// // Cutstudies 0-10% dEdx
-// cutarray[10] = "1010001042093970023220000"; mesonCutArray[10] = "01022045000";
-// cutarray[11] = "1010001042096970023220000"; mesonCutArray[11] = "01022045000";
-// cutarray[12] = "1010001042092470023220000"; mesonCutArray[12] = "01022045000";
-// cutarray[13] = "1010001042092770023220000"; mesonCutArray[13] = "01022045000";
- cutarray[0] = "1010001042092950023220000"; mesonCutArray[0] = "01022045000";
- // Cutstudies 10-20% dEdx
- cutarray[1] = "1120001042093970023220000"; mesonCutArray[1] = "01022045000";
- cutarray[2] = "1120001042096970023220000"; mesonCutArray[2] = "01022045000";
- cutarray[3] = "1120001042092470023220000"; mesonCutArray[3] = "01022045000";
- cutarray[4] = "1120001042092770023220000"; mesonCutArray[4] = "01022045000";
- cutarray[5] = "1120001042092950023220000"; mesonCutArray[5] = "01022045000";
-// Cutstudies 40-60% dEdx
- cutarray[6] = "1460001042093970023220000"; mesonCutArray[6] = "01022065000";
- cutarray[7] = "1460001042096970023220000"; mesonCutArray[7] = "01022065000";
- cutarray[8] = "1460001042092470023220000"; mesonCutArray[8] = "01022065000";
- cutarray[9] = "1460001042092770023220000"; mesonCutArray[9] = "01022065000";
- cutarray[10] = "1460001042092950023220000"; mesonCutArray[10] = "01022065000";
- // Cutstudies 60-80% dEdx
- cutarray[11] = "1680001042093970023220000"; mesonCutArray[11] = "01022065000";
- cutarray[12] = "1680001042096970023220000"; mesonCutArray[12] = "01022065000";
- cutarray[13] = "1680001042092470023220000"; mesonCutArray[13] = "01022065000";
- cutarray[14] = "1680001042092770023220000"; mesonCutArray[14] = "01022065000";
- cutarray[15] = "1680001042092950023220000"; mesonCutArray[15] = "01022065000";
- // Cutstudies 20-40% dEdx
- cutarray[16] = "1240001042093970023220000"; mesonCutArray[16] = "01022045000";
- cutarray[17] = "1240001042096970023220000"; mesonCutArray[17] = "01022045000";
- cutarray[18] = "1240001042092470023220000"; mesonCutArray[18] = "01022045000";
- cutarray[19] = "1240001042092770023220000"; mesonCutArray[19] = "01022045000";
- cutarray[20] = "1240001042092950023220000"; mesonCutArray[20] = "01022045000";
-
- // Cutstudies 0-5% TOF
-// cutarray[5] = "3010001042092970033220000"; mesonCutArray[5] = "01022045000";
-// cutarray[6] = "3010001042092970043220000"; mesonCutArray[6] = "01022045000";
- // Cutstudies 5-10% TOF
-// cutarray[7] = "3120001042092970033220000"; mesonCutArray[7] = "01022045000";
-// cutarray[8] = "3120001042092970043220000"; mesonCutArray[8] = "01022045000";
- // Cutstudies 0-10% TOF
-// cutarray[9] = "1010001042092970033220000"; mesonCutArray[9] = "01022045000";
-// cutarray[10] = "1010001042092970043220000"; mesonCutArray[10] = "01022045000";
- // Cutstudies 10-20% TOF
-// cutarray[11] = "1120001042092970033220000"; mesonCutArray[11] = "01022045000";
-// cutarray[12] = "1120001042092970043220000"; mesonCutArray[12] = "01022045000";
- // Cutstudies 20-40% TOF
-// cutarray[13] = "1240001042092970033220000"; mesonCutArray[13] = "01022045000";
-// cutarray[14] = "1240001042092970043220000"; mesonCutArray[14] = "01022045000";
- // Cutstudies 40-60% TOF
-// cutarray[15] = "1460001042092970033220000"; mesonCutArray[15] = "01022065000";
-// cutarray[16] = "1460001042092970043220000"; mesonCutArray[16] = "01022065000";
- // Cutstudies 60-80% TOF
-// cutarray[17] = "1680001042092970033220000"; mesonCutArray[17] = "01022065000";
-// cutarray[18] = "1680001042092970043220000"; mesonCutArray[18] = "01022065000";
+ Bool_t isMC = kTRUE;
+ Bool_t readTR = kTRUE;
- // Cutstudies 0-5% Alpha
-// cutarray[0] = "3010001042092970023220000"; mesonCutArray[0] = "01022085000";
-// cutarray[1] = "3010001042092970023220000"; mesonCutArray[1] = "01022005000";
- // Cutstudies 5-10% Alpha
-// cutarray[2] = "3120001042092970023220000"; mesonCutArray[2] = "01022085000";
-// cutarray[3] = "3120001042092970023220000"; mesonCutArray[3] = "01022005000";
- // Cutstudies 0-10% Alpha
-// cutarray[4] = "1010001042092970023220000"; mesonCutArray[4] = "01022085000";
-// cutarray[5] = "1010001042092970023220000"; mesonCutArray[5] = "01022005000";
- // Cutstudies 10-20% Alpha
-// cutarray[6] = "1120001042092970023220000"; mesonCutArray[6] = "01022085000";
-// cutarray[7] = "1120001042092970023220000"; mesonCutArray[7] = "01022005000";
- // Cutstudies 20-40% Alpha
-// cutarray[8] = "1240001042092970023220000"; mesonCutArray[8] = "01022085000";
-// cutarray[9] = "1240001042092970023220000"; mesonCutArray[9] = "01022005000";
- // Cutstudies 60-80% Alpha
-// cutarray[10] = "1680001042092970023220000"; mesonCutArray[10] = "01022075000";
-// cutarray[11] = "1680001042092970023220000"; mesonCutArray[11] = "01022055000";
- // Cutstudies 40-60% Alpha
-// cutarray[12] = "1460001042092970023220000"; mesonCutArray[12] = "01022075000";
-// cutarray[13] = "1460001042092970023220000"; mesonCutArray[13] = "01022055000";
+ TString Pattern="*/AliESDs.root";
+ //TString Pattern="*/AliAOD.root";
+ TString Prefix ="";
- // Cutstudies 0-5% Qt
-// cutarray[14] = "3010001042092970024220000"; mesonCutArray[14] = "01022045000";
-// cutarray[15] = "3010001042092970022220000"; mesonCutArray[15] = "01022045000";
- // Cutstudies 5-10% Qt
-// cutarray[16] = "3120001042092970024220000"; mesonCutArray[16] = "01022045000";
-// cutarray[17] = "3120001042092970022220000"; mesonCutArray[17] = "01022045000";
- // Cutstudies 0-10% Qt
-// cutarray[0] = "1010001042092970024220000"; mesonCutArray[0] = "01022045000";
-// cutarray[1] = "1010001042092970022220000"; mesonCutArray[1] = "01022045000";
- // Cutstudies 10-20% Qt
-// cutarray[2] = "1120001042092970024220000"; mesonCutArray[2] = "01022045000";
-// cutarray[3] = "1120001042092970022220000"; mesonCutArray[3] = "01022045000";
- // Cutstudies 20-40% Qt
-// cutarray[4] = "1240001042092970024220000"; mesonCutArray[4] = "01022045000";
-// cutarray[5] = "1240001042092970022220000"; mesonCutArray[5] = "01022045000";
- // Cutstudies 40-60% Qt
-// cutarray[6] = "1460001042092970024220000"; mesonCutArray[6] = "01022065000";
-// cutarray[7] = "1460001042092970022220000"; mesonCutArray[7] = "01022065000";
- // Cutstudies 60-80% Qt
-// cutarray[8] = "1680001042092970024220000"; mesonCutArray[8] = "01022065000";
-// cutarray[9] = "1680001042092970022220000"; mesonCutArray[9] = "01022065000";
- // Cutstudies 0-5% Single Pt
-// cutarray[10] = "3010001042492970023220000"; mesonCutArray[10] = "01022045000";
-// cutarray[11] = "3010001042192970023220000"; mesonCutArray[11] = "01022045000";
- // Cutstudies 5-10% Single Pt
-// cutarray[12] = "3120001042492970023220000"; mesonCutArray[12] = "01022045000";
-// cutarray[13] = "3120001042192970023220000"; mesonCutArray[13] = "01022045000";
- // Cutstudies 0-10% Single Pt
-// cutarray[14] = "1010001042492970023220000"; mesonCutArray[14] = "01022045000";
-// cutarray[15] = "1010001042192970023220000"; mesonCutArray[15] = "01022045000";
- // Cutstudies 10-20% Single Pt
-// cutarray[16] = "1120001042492970023220000"; mesonCutArray[16] = "01022045000";
-// cutarray[17] = "1120001042192970023220000"; mesonCutArray[17] = "01022045000";
- // Cutstudies 20-40% Single Pt
-// cutarray[0] = "1240001042492970023220000"; mesonCutArray[0] = "01022045000";
-// cutarray[1] = "1240001042192970023220000"; mesonCutArray[1] = "01022045000";
- // Cutstudies 40-60% Single Pt
-// cutarray[2] = "1460001042492970023220000"; mesonCutArray[2] = "01022065000";
-// cutarray[3] = "1460001042192970023220000"; mesonCutArray[3] = "01022065000";
- // Cutstudies 60-80% Single Pt
-// cutarray[4] = "1680001042492970023220000"; mesonCutArray[4] = "01022065000";
-// cutarray[5] = "1680001042192970023220000"; mesonCutArray[5] = "01022065000";
- // Cutstudies 0-5% Chi2 Gamma
-// cutarray[6] = "3010001042092970023120000"; mesonCutArray[6] = "01022045000";
-// cutarray[7] = "3010001042092970023820000"; mesonCutArray[7] = "01022045000";
- // Cutstudies 5-10% Chi2 Gamma
-// cutarray[8] = "3120001042092970023120000"; mesonCutArray[8] = "01022045000";
-// cutarray[9] = "3120001042092970023820000"; mesonCutArray[9] = "01022045000";
- // Cutstudies 0-10% Chi2 Gamma
-// cutarray[10] = "1010001042092970023120000"; mesonCutArray[10] = "01022045000";
-// cutarray[11] = "1010001042092970023820000"; mesonCutArray[11] = "01022045000";
- // Cutstudies 10-20% Chi2 Gamma
-// cutarray[12] = "1120001042092970023120000"; mesonCutArray[12] = "01022045000";
-// cutarray[13] = "1120001042092970023820000"; mesonCutArray[13] = "01022045000";
- // Cutstudies 20-40% Chi2 Gamma
-// cutarray[14] = "1240001042092970023120000"; mesonCutArray[14] = "01022045000";
-// cutarray[15] = "1240001042092970023820000"; mesonCutArray[15] = "01022045000";
- // Cutstudies 40-60% Chi2 Gamma
-// cutarray[16] = "1460001042092970023120000"; mesonCutArray[16] = "01022065000";
-// cutarray[17] = "1460001042092970023820000"; mesonCutArray[17] = "01022065000";
- // Cutstudies 60-80% Chi2 Gamma
-// cutarray[18] = "1680001042092970023120000"; mesonCutArray[18] = "01022065000";
-// cutarray[19] = "1680001042092970023820000"; mesonCutArray[19] = "01022065000";
-
- // Cutstudies 0-5% TPC Cluster
-// cutarray[0] = "3010001042062970023220000"; mesonCutArray[0] = "01022045000";
-// cutarray[1] = "3010001042082970023220000"; mesonCutArray[1] = "01022045000";
- // Cutstudies 5-10% TPC Cluster
-// cutarray[2] = "3120001042062970023220000"; mesonCutArray[2] = "01022045000";
-// cutarray[3] = "3120001042082970023220000"; mesonCutArray[3] = "01022045000";
- // Cutstudies 0-10% TPC Cluster
-// cutarray[4] = "1010001042062970023220000"; mesonCutArray[4] = "01022045000";
-// cutarray[5] = "1010001042082970023220000"; mesonCutArray[5] = "01022045000";
- // Cutstudies 10-20% TPC Cluster
-// cutarray[6] = "1120001042062970023220000"; mesonCutArray[6] = "01022045000";
-// cutarray[7] = "1120001042082970023220000"; mesonCutArray[7] = "01022045000";
- // Cutstudies 20-40% TPC Cluster
-// cutarray[8] = "1240001042062970023220000"; mesonCutArray[8] = "01022045000";
-// cutarray[9] = "1240001042082970023220000"; mesonCutArray[9] = "01022045000";
- // Cutstudies 40-60% TPC Cluster
-// cutarray[10] = "1460001042062970023220000"; mesonCutArray[10] = "01022065000";
-// cutarray[11] = "1460001042082970023220000"; mesonCutArray[11] = "01022065000";
- // Cutstudies 60-80% TPC Cluster
-// cutarray[12] = "1680001042062970023220000"; mesonCutArray[12] = "01022065000";
-// cutarray[13] = "1680001042082970023220000"; mesonCutArray[13] = "01022065000";
-
- // Cutstudies 0-5% Psi Pair
-// cutarray[14] = "3010001042092970023210000"; mesonCutArray[14] = "01022045000";
-// cutarray[15] = "3010001042092970023230000"; mesonCutArray[15] = "01022045000";
- // Cutstudies 5-10% Psi Pair
-// cutarray[16] = "3120001042092970023210000"; mesonCutArray[16] = "01022045000";
-// cutarray[17] = "3120001042092970023230000"; mesonCutArray[17] = "01022045000";
- // Cutstudies 0-10% Psi Pair
-// cutarray[0] = "1010001042092970023210000"; mesonCutArray[0] = "01022045000";
-// cutarray[1] = "1010001042092970023230000"; mesonCutArray[1] = "01022045000";
- // Cutstudies 10-20% Psi Pair
-// cutarray[2] = "1120001042092970023210000"; mesonCutArray[2] = "01022045000";
-// cutarray[3] = "1120001042092970023230000"; mesonCutArray[3] = "01022045000";
- // Cutstudies 20-40% Psi Pair
-// cutarray[4] = "1240001042092970023210000"; mesonCutArray[4] = "01022045000";
-// cutarray[5] = "1240001042092970023230000"; mesonCutArray[5] = "01022045000";
- // Cutstudies 40-60% Psi Pair
-// cutarray[6] = "1460001042092970023210000"; mesonCutArray[6] = "01022065000";
-// cutarray[7] = "1460001042092970023230000"; mesonCutArray[7] = "01022065000";
- // Cutstudies 60-80% Psi Pair
-// cutarray[8] = "1680001042092970023210000"; mesonCutArray[8] = "01022065000";
-// cutarray[9] = "1680001042092970023230000"; mesonCutArray[9] = "01022065000";
-
- // Cutstudies 0-5% R Cut
-// cutarray[10] = "3010001041092970023220000"; mesonCutArray[10] = "01022045000";
-// cutarray[11] = "3010001044092970023220000"; mesonCutArray[11] = "01022045000";
- // Cutstudies 5-10% R Cut
-// cutarray[12] = "3120001041092970023220000"; mesonCutArray[12] = "01022045000";
-// cutarray[13] = "3120001044092970023220000"; mesonCutArray[13] = "01022045000";
- // Cutstudies 0-10% R Cut
-// cutarray[14] = "1010001041092970023220000"; mesonCutArray[14] = "01022045000";
-// cutarray[15] = "1010001044092970023220000"; mesonCutArray[15] = "01022045000";
- // Cutstudies 10-20% R Cut
-// cutarray[16] = "1120001041092970023220000"; mesonCutArray[16] = "01022045000";
-// cutarray[17] = "1120001044092970023220000"; mesonCutArray[17] = "01022045000";
- // Cutstudies 20-40% R Cut
-// cutarray[0] = "1240001041092970023220000"; mesonCutArray[0] = "01022045000";
-// cutarray[1] = "1240001044092970023220000"; mesonCutArray[1] = "01022045000";
- // Cutstudies 40-60% R Cut
-// cutarray[2] = "1460001041092970023220000"; mesonCutArray[2] = "01022065000";
-// cutarray[3] = "1460001044092970023220000"; mesonCutArray[3] = "01022065000";
- // Cutstudies 60-80% R Cut
-// cutarray[4] = "1680001041092970023220000"; mesonCutArray[4] = "01022065000";
-// cutarray[5] = "1680001044092970023220000"; mesonCutArray[5] = "01022065000";
- } else if(trainConfig.Contains("pPb")){ //pA needs thighter rapidity cut y < 0.5
- cutarray[0] = "1000000042092172023220000"; mesonCutArray[0] = "01024045000"; //standard cut Pi0 PbPb 00-100
- } else {
-// cutarray[0] = "0000010002093663003800000"; mesonCutArray[0] = "01631031009"; //Standard Cut Pi0 with PileUp Rejection
-// // V0 finder
-// // cutarray[1] = "0000010102093663003800000"; mesonCutArray[1] = "01631031009"; //Standard Cut Pi0 with PileUp Rejection
-// cutarray[1] = "0000011002093663003800000"; mesonCutArray[1] = "01631031009"; //Standard Cut only MinBias in MC
-// cutarray[2] = "0000012002093663003800000"; mesonCutArray[2] = "01631031009"; //Standard Cut only added Signals in MC
-// // cutarray[1] = "0000010002093260043800000"; mesonCutArray[0] = "01631031009"; //Standard Cut Gamma with PileUp Rejection
-//
-// // dEdx e-line
-// cutarray[3] = "0000011002091663003800000"; mesonCutArray[3] = "01631031009";
-// cutarray[4] = "0000011002092663003800000"; mesonCutArray[4] = "01631031009";
-// // dEdx pi-line
-// cutarray[5] = "0000011002093863003800000"; mesonCutArray[5] = "01631031009";
-// cutarray[6] = "0000011002093553003800000"; mesonCutArray[6] = "01631031009";
-// cutarray[7] = "0000011002093100003800000"; mesonCutArray[7] = "01631031009";
-// cutarray[8] = "0000011002093674003800000"; mesonCutArray[8] = "01631031009";
-// // Alpha
-// cutarray[9] = "0000011002093663003800000"; mesonCutArray[9] = "01631001009";
-// // chi2 gamma
-// cutarray[10] = "0000011002093663003900000"; mesonCutArray[10] = "01631031009";
-// cutarray[11] = "0000011002093663003200000"; mesonCutArray[11] = "01631031009";
-// // pt single e+/e-
-// cutarray[12] = "0000011002493663003800000"; mesonCutArray[12] = "01631031009";
-// cutarray[13] = "0000011002193663003800000"; mesonCutArray[13] = "01631031009";
- // findable cluster TPC
- cutarray[0] = "0000010002003663003800000"; mesonCutArray[0] = "01631031009";
- cutarray[1] = "0000010002083663003800000"; mesonCutArray[1] = "01631031009";
- // qt variation
- cutarray[2] = "0000010002093663004800000"; mesonCutArray[2] = "01631031009";
- cutarray[3] = "0000010002093663002800000"; mesonCutArray[3] = "01631031009";
- // TOF
- cutarray[4] = "0000010002093663023800000"; mesonCutArray[4] = "01631031009";
- cutarray[5] = "0000010002093663033800000"; mesonCutArray[5] = "01631031009";
- cutarray[6] = "0000010002093663043800000"; mesonCutArray[6] = "01631031009";
- // track sharing
- cutarray[7] = "0000010002093663003800013"; mesonCutArray[7] = "01631031009";
- cutarray[8] = "0000010002093663003800012"; mesonCutArray[8] = "01631031009";
- }
-
- TList *ConvCutList = new TList();
- TList *MesonCutList = new TList();
-
- TList *HeaderList = new TList();
- TObjString *Header1 = new TObjString("PARAM");
- HeaderList->Add(Header1);
- TObjString *Header2 = new TObjString("BOX");
- HeaderList->Add(Header2);
- TObjString *Header3 = new TObjString("Pythia");
- HeaderList->Add(Header3);
- ConvCutList->SetOwner(kTRUE);
- AliConversionCuts **analysisCuts = new AliConversionCuts*[numberOfCuts];
- MesonCutList->SetOwner(kTRUE);
- AliConversionMesonCuts **analysisMesonCuts = new AliConversionMesonCuts*[numberOfCuts];
-
- for(Int_t i = 0; i<numberOfCuts; i++){
- analysisCuts[i] = new AliConversionCuts();
- analysisCuts[i]->InitializeCutsFromCutString(cutarray[i].Data());
- if (trainConfig.Contains("pPb")) analysisCuts[i]->SelectCollisionCandidates(AliVEvent::kCINT5);
- ConvCutList->Add(analysisCuts[i]);
-
- analysisCuts[i]->SetFillCutHistograms("",kFALSE);
-// if(i == 2 ){
- // analysisCuts[i]->SetAcceptedHeader(HeaderList);
-// }
- analysisMesonCuts[i] = new AliConversionMesonCuts();
- analysisMesonCuts[i]->InitializeCutsFromCutString(mesonCutArray[i].Data());
- MesonCutList->Add(analysisMesonCuts[i]);
- analysisMesonCuts[i]->SetFillCutHistograms("",kFALSE);
- if (i < 7 && trainConfig.Contains("PbPb")){
- AddQATaskV1(analysisCuts[i],IsHeavyIon);
- TString addoutput=gSystem->Getenv("ADD_OUTPUT_FILES");
- if (addoutput.Length()) addoutput+=",";
- addoutput+=Form("GammaConvV1_QA_%s.root",((analysisCuts[i])->GetCutNumber()).Data());
- gSystem->Setenv("ADD_OUTPUT_FILES",addoutput.Data());
- }
+// Int_t run_numbers[100] = {137161, 137162, 137165, 137230, 137231, 137232, 137235, 137236, 137243, 137366, 137430, 137431, 137432, 137434, 137439, 137440, 137441, 137443, 137530, 137531, 137539, 137541, 137544, 137546, 137549, 137595, 137608, 137638, 137639, 137685, 137686, 137691, 137692, 137693, 137704, 137718, 137722, 137724, 137751, 137752, 137844, 137848, 138190, 138192, 138197, 138201, 138225, 138275, 138364, 138396, 138438, 138439, 138442, 138469, 138534, 138578, 138579, 138582, 138583, 138621, 138624, 138638, 138652, 138653, 138662, 138666, 138730, 138732, 138837, 138870, 138871, 138872, 139028, 139029, 139036, 139037, 139038, 139104, 139105, 139107, 139173, 139308, 139309, 139310, 139311, 139314, 139328, 139329, 139360, 139437, 139438, 139439, 139465, 139503, 139504, 139505, 139507, 139510};
+
+ Int_t run_numbers[10] = {137161, 137162, 137165, 137230, 137231, 137232, 137235, 137236, 137243, 137366};
+ //Int_t run_numbers[10] = {137430, 137431, 137432, 137434, 137439, 137440, 137441, 137443, 137530, 137531};
+ //Int_t run_numbers[10] = {137539, 137541, 137544, 137546, 137549, 137595, 137608, 137638, 137639, 137685};
+ //Int_t run_numbers[10] = {137686, 137691, 137692, 137693, 137704, 137718, 137722, 137724, 137751, 137752};
+ //Int_t run_numbers[10] = {137844, 137848, 138190, 138192, 138197, 138201, 138225, 138275, 138364, 138396};
+ //Int_t run_numbers[10] = {138438, 138439, 138442, 138469, 138534, 138578, 138579, 138582, 138583, 138621};
+ //Int_t run_numbers[10] = {138624, 138638, 138652, 138653, 138662, 138666, 138730, 138732, 138837, 138870};
+ //Int_t run_numbers[10] = {138871, 138872, 139028, 139029, 139036, 139037, 139038, 139104, 139105, 139107};
+ //Int_t run_numbers[10] = {139173, 139308, 139309, 139310, 139311, 139314, 139328, 139329, 139360, 139437};
+ //Int_t run_numbers[10] = {139438, 139439, 139465, 139503, 139504, 139505, 139507, 139510};
+ gSystem->Setenv("alien_CLOSE_SE","ALICE::Grenoble::SE");
+
+ AliAnalysisManager *mgr = new AliAnalysisManager("Analysis");
+ if (!mgr) {
+ Error("AddTask_GammaConvV1", "No analysis manager found.");
+ return 0;
}
- task->SetConversionCutList(numberOfCuts,ConvCutList);
- task->SetMesonCutList(numberOfCuts,MesonCutList);
- task->SetMoveParticleAccordingToVertex(kTRUE);
- task->SetDoMesonAnalysis(kTRUE);
- mgr->AddTask(task);
-
- //connect containers
- AliAnalysisDataContainer *coutput1 =
- mgr->CreateContainer("GammaConvV1", TList::Class(),
- AliAnalysisManager::kOutputContainer,"GammaConvV1.root");
- AliAnalysisDataContainer *coutput0 =
- mgr->CreateContainer("kkoch_tree",
- TTree::Class(),
- AliAnalysisManager::kExchangeContainer,
- "kkoch_default");
- mgr->ConnectInput (task, 0, cinput );
- mgr->ConnectOutput (task, 0, coutput0);
- mgr->ConnectOutput (task, 1, coutput1);
- return task;
-
-}
-
-void ConfigV0ReaderV1(AliV0ReaderV1 *fV0ReaderV1,TString analysiscut="",Bool_t IsHeavyIon=kFALSE){
- fV0ReaderV1->SetUseOwnXYZCalculation(kTRUE);
- fV0ReaderV1->SetCreateAODs(kFALSE);// AOD Output
- fV0ReaderV1->SetUseAODConversionPhoton(kTRUE);
+ gROOT->LoadMacro("CreateAlienHandlerNonPT.C");
+ AliAnalysisAlien *alienHandler = CreateAlienHandler(mode);
+ if (!alienHandler) return;
- AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
- if (!mgr) {
- Error("AddTask_V0ReaderV1", "No analysis manager found.");
- return;
- }
- AliVEventHandler *inputHandler=mgr->GetInputEventHandler();
+ TString WorkingDir = "MCPbPb_LHC13d2_v3";
+ TString data = "/alice/sim/2013/LHC13d2/";
- if(inputHandler->IsA()==AliESDInputHandler::Class()){
- // ESD mode
+ mgr->SetGridHandler(alienHandler);
+ alienHandler->SetGridWorkingDir(WorkingDir.Data());
+ alienHandler->SetGridOutputDir(Form("OUTPUT_%s",WorkingDir.Data()));
+
+ alienHandler->SetGridDataDir(data);
+ alienHandler->SetDataPattern(Pattern.Data());
+ alienHandler->SetRunPrefix(Prefix.Data());
+ //alienHandler->SetRunRange(137161,139510);
+ for (Int_t i=0; i<10; i++) {
+ if (run_numbers[i]==0) break;
+ alienHandler->AddRunNumber(run_numbers[i]);
}
-
- if(inputHandler->IsA()==AliAODInputHandler::Class()){
- // AOD mode
- // task->SetUseSatelliteAODs(kTRUE);
+
+ AliESDInputHandler * handler;
+ handler = new AliESDInputHandler(); mgr->SetInputEventHandler((AliESDInputHandler*)handler);
+
+ AliMCEventHandler* mcHandler;
+ if(isMC){
+ mcHandler = new AliMCEventHandler();
+ mgr->SetMCtruthEventHandler(mcHandler);
+ mcHandler->SetReadTR(readTR);
}
- // Set AnalysisCut Number
- AliConversionCuts *fCuts=NULL;
- if(analysiscut!=""){
- fCuts= new AliConversionCuts(analysiscut.Data(),analysiscut.Data());
- if(fCuts->InitializeCutsFromCutString(analysiscut.Data())){
- fV0ReaderV1->SetConversionCuts(fCuts);
- fCuts->SetFillCutHistograms("",kTRUE);
- }
+ //========= Add PID Reponse to ANALYSIS manager ====
+ if(!(AliPIDResponse*)mgr->GetTask("PIDResponseTask")){
+ gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C");
+ AddTaskPIDResponse(isMC);
+ }//========= Add PID Reponse to ANALYSIS manager ====
+
+ gROOT->LoadMacro("$ALICE_ROOT/OADB/macros/AddTaskPhysicsSelection.C");
+ AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection(isMC);
+
+ AliCentralitySelectionTask *taskCentrality;
+ gROOT->LoadMacro("$ALICE_ROOT/OADB/macros/AddTaskCentrality.C");
+ taskCentrality = AddTaskCentrality();
+ if (isMC){
+ taskCentrality->SetMCInput();
+ Info("AddTask_tender_CentralitySelection", "This task has MC.");
}
- fV0ReaderV1->Init();
-}
-
-void AddQATaskV1(AliConversionCuts *ConversionCuts, Bool_t IsHeavyIon){
+ gROOT->LoadMacro("$ALICE_ROOT/PWGGA/GammaConv/macros/AddTask_GammaConvV1_PbPb.C");
+
+ cout<<"Connecting to Alien..."<<endl;
+ TGrid::Connect("alien://");
+ cout<<"==============================="<<endl;
+ cout<<"Successfully connected to Alien"<<endl;
+ cout<<"==============================="<<endl;
+
+ AliAnalysisTask *taskA = AddTask_GammaConvV1_PbPb(1, //change different set of cuts
+ isMC, //run MC
+ kFALSE, //enable QA in AliAnalysisTaskGammaConvV1
+ kTRUE, // enable additional Photon QA task
+ "alien:///alice/cern.ch/user/f/fbock/MCSpectraInput.root", // path to file for weigting input
+ kTRUE, //enable Weighting
+ "1000000060084000001500000");
+
+ AliAnalysisTask *taskB = AddTask_GammaConvV1_PbPb(2, //change different set of cuts
+ isMC, //run MC
+ kFALSE, //enable QA in AliAnalysisTaskGammaConvV1
+ kTRUE, // enable additional Photon QA task
+ "alien:///alice/cern.ch/user/f/fbock/MCSpectraInput.root", // path to file for weigting input
+ kTRUE, //enable Weighting
+ "1000000060084000001500000");
+
+ AliAnalysisTask *taskC = AddTask_GammaConvV1_PbPb(5, //change different set of cuts
+ isMC, //run MC
+ kFALSE, //enable QA in AliAnalysisTaskGammaConvV1
+ kTRUE, // enable additional Photon QA task
+ "alien:///alice/cern.ch/user/f/fbock/MCSpectraInput.root", // path to file for weigting input
+ kTRUE, //enable Weighting
+ "1000000060084000001500000");
+
+ AliAnalysisTask *taskD = AddTask_GammaConvV1_PbPb(6, //change different set of cuts
+ isMC, //run MC
+ kFALSE, //enable QA in AliAnalysisTaskGammaConvV1
+ kTRUE, // enable additional Photon QA task
+ "alien:///alice/cern.ch/user/f/fbock/MCSpectraInput.root", // path to file for weigting input
+ kTRUE, //enable Weighting
+ "1000000060084000001500000");
- //get the current analysis manager
- AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
- if (!mgr) {
- Error("AddTask_V0ReaderV1QA", "No analysis manager found.");
- return 0;
- }
- AliAnalysisTaskConversionQA *fQA = new AliAnalysisTaskConversionQA(Form("%s_QA",(ConversionCuts->GetCutNumber()).Data()));
- fQA->SetConversionCuts(ConversionCuts,IsHeavyIon);
- mgr->AddTask(fQA);
-
- AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
- mgr->ConnectInput (fQA,0,cinput);
+
+ if (!mgr->InitAnalysis())return;
+ mgr->StartAnalysis("grid");
+}
+Int_t CheckLoadLibrary(const char* library)
+{
+ // checks if a library is already loaded, if not loads the library
+
+ if (strlen(gSystem->GetLibraries(library, "", kFALSE)) > 0)
+ return 1;
+
+ return gSystem->Load(library);
}