/**
* @file AddTaskCentraldNdeta.C
* @author Christian Holm Christensen <cholm@nbi.dk>
* @date Fri Jan 28 10:22:26 2011
*
* @brief Script to add a multiplicity task for the central
* @f$\eta@f$ region
*
*
* @ingroup pwglf_forward_scripts_tasks
*/
/**
* Create the central @f$ dN/d\eta@f$ analysis task
*
* @param trig Trigger to use
* @param vzMin Smallest @f$ v_z@f$
* @param vzMax Biggest @f$ v_z@f$
* @param useCent Whether to use the centrality or not
* @param scheme Normalisation scheme
* @param cutEdges Whether to cut edges when rebinning
* @param mcanalysisfilename Take final MC corrections from this - if present
* @param trigEff Trigger efficiency
* @param trigEff0 Trigger efficiency for 0-bin
* @param corrEmpty Correct for empty bins
*
* @return Newly created and configured task
*
* @ingroup pwglf_forward_dndeta
*/
AliAnalysisTask*
AddTaskCentraldNdeta(const char* config = "dNdetaConfig.C",
const char* trig = "INEL",
Double_t vzMin = -10,
Double_t vzMax = +10,
const char* cent = "",
const char* scheme = 0,
Double_t trigEff = 1,
Double_t trigEff0 = 1,
Bool_t satVtx = false)
{
// --- Load libraries ----------------------------------------------
gROOT->LoadClass("AliAODForwardMult", "libPWGLFforward2");
// --- Analysis manager --------------------------------------------
AliAnalysisManager* mgr = AliAnalysisManager::GetAnalysisManager();
// --- Check that we have an AOD input handler ---------------------
UShort_t aodInput = 0;
if (!(aodInput = AliForwardUtil::CheckForAOD()))
Fatal("","Cannot proceed without and AOD handler");
if (aodInput == 2 &&
!AliForwardUtil::CheckForTask("AliCentralMultiplicityTask"))
Fatal("","The relevant task wasn't added to the train");
// --- Make our object ---------------------------------------------
AliCentraldNdetaTask* task = new AliCentraldNdetaTask("Central");
// Set the vertex range to use
task->SetIpZRange(vzMin, vzMax);
// Set the trigger mask to use (INEL,INEL>0,NSD)
task->SetTriggerMask(trig);
task->SetTriggerEff(trigEff); // 0.997535);
task->SetTriggerEff0(trigEff0);
// Bit mask of
//
// kNone Normalise to accepted events
// kEventLevel Normalise to all events in selected range
// kBackground Also correct for background triggers
// kTriggerEfficiency Correct for trigger efficiency
//
// kNone and kEventLevel are mutually exclusive. If kEventLevel is
// not specified, then kNone is assumed. kBackground only makes
// sense with kEventLevel. Furthermore, there
// are some constants that encode the common cases
//
// kFull = kEventLevel | kBackground | kTriggerEfficiency
//
// Default is kFull
task->SetNormalizationScheme(AliBasedNdetaTask::kFull);
if (scheme) task->SetNormalizationScheme(scheme);
// Set the centrality bins to use. These are mutually exclusive.
// Note, that a bin specified as a-b, covers the interval from a,
// inclusive to b exclusive. An upper bound of 100 is treated
// especially, and the upper bound is inclusive in that case .
if (cent) {
if (task->SetCentralityMethod(cent)) {
Short_t bins[] = { 0, 5, 10, 20, 30, 40, 50, 60, 70, 80, 100 };
task->SetCentralityAxis(10, bins);
}
}
// Set-up task using a script
task->Configure(config);
// Connect to manager
task->Connect(0,0);
return task;
}
//________________________________________________________________________
//
// EOF
//
AddTaskCentraldNdeta.C:10 AddTaskCentraldNdeta.C:11 AddTaskCentraldNdeta.C:12 AddTaskCentraldNdeta.C:13 AddTaskCentraldNdeta.C:14 AddTaskCentraldNdeta.C:15 AddTaskCentraldNdeta.C:16 AddTaskCentraldNdeta.C:17 AddTaskCentraldNdeta.C:18 AddTaskCentraldNdeta.C:19 AddTaskCentraldNdeta.C:20 AddTaskCentraldNdeta.C:21 AddTaskCentraldNdeta.C:22 AddTaskCentraldNdeta.C:23 AddTaskCentraldNdeta.C:24 AddTaskCentraldNdeta.C:25 AddTaskCentraldNdeta.C:26 AddTaskCentraldNdeta.C:27 AddTaskCentraldNdeta.C:28 AddTaskCentraldNdeta.C:29 AddTaskCentraldNdeta.C:30 AddTaskCentraldNdeta.C:31 AddTaskCentraldNdeta.C:32 AddTaskCentraldNdeta.C:33 AddTaskCentraldNdeta.C:34 AddTaskCentraldNdeta.C:35 AddTaskCentraldNdeta.C:36 AddTaskCentraldNdeta.C:37 AddTaskCentraldNdeta.C:38 AddTaskCentraldNdeta.C:39 AddTaskCentraldNdeta.C:40 AddTaskCentraldNdeta.C:41 AddTaskCentraldNdeta.C:42 AddTaskCentraldNdeta.C:43 AddTaskCentraldNdeta.C:44 AddTaskCentraldNdeta.C:45 AddTaskCentraldNdeta.C:46 AddTaskCentraldNdeta.C:47 AddTaskCentraldNdeta.C:48 AddTaskCentraldNdeta.C:49 AddTaskCentraldNdeta.C:50 AddTaskCentraldNdeta.C:51 AddTaskCentraldNdeta.C:52 AddTaskCentraldNdeta.C:53 AddTaskCentraldNdeta.C:54 AddTaskCentraldNdeta.C:55 AddTaskCentraldNdeta.C:56 AddTaskCentraldNdeta.C:57 AddTaskCentraldNdeta.C:58 AddTaskCentraldNdeta.C:59 AddTaskCentraldNdeta.C:60 AddTaskCentraldNdeta.C:61 AddTaskCentraldNdeta.C:62 AddTaskCentraldNdeta.C:63 AddTaskCentraldNdeta.C:64 AddTaskCentraldNdeta.C:65 AddTaskCentraldNdeta.C:66 AddTaskCentraldNdeta.C:67 AddTaskCentraldNdeta.C:68 AddTaskCentraldNdeta.C:69 AddTaskCentraldNdeta.C:70 AddTaskCentraldNdeta.C:71 AddTaskCentraldNdeta.C:72 AddTaskCentraldNdeta.C:73 AddTaskCentraldNdeta.C:74 AddTaskCentraldNdeta.C:75 AddTaskCentraldNdeta.C:76 AddTaskCentraldNdeta.C:77 AddTaskCentraldNdeta.C:78 AddTaskCentraldNdeta.C:79 AddTaskCentraldNdeta.C:80 AddTaskCentraldNdeta.C:81 AddTaskCentraldNdeta.C:82 AddTaskCentraldNdeta.C:83 AddTaskCentraldNdeta.C:84 AddTaskCentraldNdeta.C:85 AddTaskCentraldNdeta.C:86 AddTaskCentraldNdeta.C:87 AddTaskCentraldNdeta.C:88 AddTaskCentraldNdeta.C:89 AddTaskCentraldNdeta.C:90 AddTaskCentraldNdeta.C:91 AddTaskCentraldNdeta.C:92 AddTaskCentraldNdeta.C:93 AddTaskCentraldNdeta.C:94 AddTaskCentraldNdeta.C:95 AddTaskCentraldNdeta.C:96 AddTaskCentraldNdeta.C:97 AddTaskCentraldNdeta.C:98 AddTaskCentraldNdeta.C:99 AddTaskCentraldNdeta.C:100 AddTaskCentraldNdeta.C:101 AddTaskCentraldNdeta.C:102 AddTaskCentraldNdeta.C:103 AddTaskCentraldNdeta.C:104 AddTaskCentraldNdeta.C:105 AddTaskCentraldNdeta.C:106 AddTaskCentraldNdeta.C:107