3 AliAnalysisTaskSE *AddTaskEMCALTenderUsingDatasetDef(
4 const char *perstr = "LHC11h",
5 const char *pass = 0 /*should not be needed*/
8 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
11 Error("AddTaskEMCALTenderUsingDatasetDef","No analysis manager found.");
15 AliVEventHandler *evhand = mgr->GetInputEventHandler();
17 Error("AddTaskEMCALTenderUsingDatasetDef", "This task requires an input event handler");
21 gROOT->LoadMacro("$ALICE_ROOT/PWG/EMCAL/macros/AddTaskEMCALTender.C");
23 Bool_t distBC = kTRUE; //distance to bad channel
24 Bool_t recalibClus = kTRUE; //recalibrate cluster energy
25 Bool_t recalcClusPos = kTRUE; //recalculate cluster position
26 Bool_t nonLinearCorr = kTRUE; //apply non-linearity
27 Bool_t remExoticCell = kTRUE; //remove exotic cells
28 Bool_t remExoticClus = kTRUE; //remove exotic clusters
29 Bool_t fidRegion = kFALSE; //apply fiducial cuts
30 Bool_t calibEnergy = kTRUE; //calibrate energy
31 Bool_t calibTime = kTRUE; //calibrate timing
32 Bool_t remBC = kTRUE; //remove bad channels
33 UInt_t nonLinFunct = AliEMCALRecoUtils::kBeamTestCorrected;
34 Bool_t reclusterize = kFALSE; //reclusterize
35 Float_t seedthresh = 0.100; //seed threshold
36 Float_t cellthresh = 0.050; //cell threshold
37 UInt_t clusterizer = AliEMCALRecParam::kClusterizerv2;
38 Bool_t trackMatch = kTRUE; //track matching
39 Bool_t updateCellOnly = kFALSE; //only change if you run your own clusterizer task
40 Float_t timeMin = -50e6; //minimum time of physical signal in a cell/digit (s)
41 Float_t timeMax = 50e6; //maximum time of physical signal in a cell/digit (s)
42 Float_t timeCut = 1e6; //maximum time difference between the digits inside EMC cluster (s)
46 TString period(perstr);
48 Printf("Configuring tender for run period: %s",period.Data());
50 if (period == "lhc11h") {
56 else if (period == "lhc12a15e" || period == "lhc12a15e_fix" ||
57 period == "lhc12a17a_fix" || period == "lhc12a17b_fix" || period == "lhc12a17c_fix" || period == "lhc12a17d_fix" ||
58 period == "lhc12a17e_fix" || period == "lhc12a17f_fix" || period == "lhc12a17g_fix" || period == "lhc12a17h_fix" ||
59 period == "lhc12a17i_fix") {
60 nonLinFunct = AliEMCALRecoUtils::kPi0MCv3;
63 else if (period == "lhc12a15a") {
64 nonLinFunct = AliEMCALRecoUtils::kPi0MCv2;
67 else if(period == "lhc12a" || period == "lhc12b" || period == "lhc12c" || period == "lhc12d" || period == "lhc12e" || period == "lhc12f" || period == "lhc12g" || period == "lhc12h" || period == "lhc12i") {
75 else if(period == "lhc13b" || period == "lhc13c" || period == "lhc13d" || period == "lhc13e" || period == "lhc13f" || period == "lhc13g" ||
76 period == "lhc13b4" || period == "lhc13b4_fix" || period == "lhc13b4_plus") {
80 if(period == "lhc13b" || period == "lhc13c" || period == "lhc13d" || period == "lhc13e" || period == "lhc13f" || period == "lhc13g") {
85 else if(period == "lhc13b4" || period == "lhc13b4_fix" || period == "lhc13b4_plus") {
86 nonLinFunct = AliEMCALRecoUtils::kPi0MCv3;
91 if(isMC) { //no timing cuts when running on MC
99 if (!evhand->InheritsFrom("AliESDInputHandler"))
102 AliAnalysisTaskSE *task = AddTaskEMCALTender(
103 distBC, recalibClus, recalcClusPos, nonLinearCorr,
104 remExoticCell, remExoticClus, fidRegion, calibEnergy,
105 calibTime, remBC, nonLinFunct, reclusterize, seedthresh,
106 cellthresh, clusterizer, trackMatch, updateCellOnly,
107 timeMin, timeMax, timeCut, pass);