2 * @file ForwardAODConfig.C
3 * @author Christian Holm Christensen <cholm@dalsgaard.hehi.nbi.dk>
4 * @date Wed Mar 23 13:56:02 2011
8 * @ingroup pwg2_forward_scripts_tasks
12 * Configuration script for forward multiplicity task.
14 * You can copy this to your working directory or to some other
15 * directory up-front in your ROOT macro path, and edit it to suit your
18 * @ingroup pwg2_forward_aod
21 ForwardAODConfig(AliForwardMultiplicityBase* task)
25 Info("ForwardAODConfig", "Setting up task %s (%p)", task->GetName(), task);
27 // --- General parameters ------------------------------------------
28 // Whether to enable low flux specific code
29 task->SetEnableLowFlux(kFALSE);
31 // --- Event inspector ---------------------------------------------
32 // Set the number of SPD tracklets for which we consider the event a
34 task->GetEventInspector().SetLowFluxCut(1000);
35 // Set the maximum error on v_z [cm]
36 task->GetEventInspector().SetMaxVzErr(0.2);
38 // --- Energy Loss Fitter ------------------------------------------
39 // Set the eta axis to use - note, this overrides whatever is used
40 // by the rest of the algorithms - but only for the energy fitter
42 task->GetEnergyFitter().SetEtaAxis(200, -4, 6);
43 // Set maximum energy loss to consider
44 task->GetEnergyFitter().SetMaxE(10);
45 // Set number of energy loss bins
46 task->GetEnergyFitter().SetNEbins(300);
47 // Set whether to use increasing bin sizes
48 task->GetEnergyFitter().SetUseIncreasingBins(true);
49 // Set whether to do fit the energy distributions
50 task->GetEnergyFitter().SetDoFits(kFALSE);
51 // Set whether to make the correction object
52 task->GetEnergyFitter().SetDoMakeObject(kFALSE);
53 // Set the low cut used for energy
54 task->GetEnergyFitter().SetLowCut(0.4);
55 // Set the number of bins to subtract from maximum of distributions
56 // to get the lower bound of the fit range
57 task->GetEnergyFitter().SetFitRangeBinWidth(4);
58 // Set the maximum number of landaus to try to fit (max 5)
59 task->GetEnergyFitter().SetNParticles(5);
60 // Set the minimum number of entries in the distribution before
61 // trying to fit to the data
62 task->GetEnergyFitter().SetMinEntries(1000);
64 // --- Sharing filter ----------------------------------------------
65 // Set the low cut used for sharing - overrides settings in eloss fits
66 task->GetSharingFilter().SetLowCut(0.3);
67 // Set the number of xi's (width of landau peak) to stop at
68 task->GetSharingFilter().SetNXi(1);
70 // --- Density calculator
71 // Set the maximum number of particle to try to reconstruct
72 task->GetDensityCalculator().SetMaxParticles(3);
73 // Wet whether to use poisson statistics to estimate N_ch
74 task->GetDensityCalculator().SetUsePoisson(false);
75 // Set the lower multiplicity cut. Overrides setting in energy loss fits.
76 task->GetDensityCalculator().SetMultCut(0.3); //was 0.3
78 // --- Corrector ---------------------------------------------------
79 // Whether to use the secondary map correction
80 task->GetCorrections().SetUseSecondaryMap(true);
81 // Whether to use the vertex bias correction
82 task->GetCorrections().SetUseVertexBias(false);
83 // Whether to use the vertex bias correction
84 task->GetCorrections().SetUseAcceptance(true);
85 // Whether to use the merging efficiency correction
86 task->GetCorrections().SetUseMergingEfficiency(false);
88 // --- Histogram Collector -----------------------------------------
89 // Set the number of extra bins (beyond the secondary map border)
90 task->GetHistCollector().SetNCutBins(2);
91 // Set the correction cut, that is, when bins in the secondary map
92 // is smaller than this, they are considered empty
93 task->GetHistCollector().SetCorrectionCut(0.5);
94 // How to calculate the value of overlapping bins.
95 // Possible values are
97 // kStraightMeanNoZero
100 task->GetHistCollector().SetMergeMethod(AliFMDHistCollector::kStraightMean);
101 // How to find the fiducial area of the secondary maps
102 // Possible values are
103 // kByCut Only bins larger that cut are trusted
104 // kDistance Only bins that are more than half the size of it neighbors
105 task->GetHistCollector().SetFiducialMethod(AliFMDHistCollector::kByCut);
107 // --- Debug -------------------------------------------------------
108 // Set the overall debug level (1: some output, 3: a lot of output)
110 // Set the debug level of a single algorithm
111 // task->GetEventInspector().SetDebug(4);
113 // --- Set limits on fits the energy -------------------------------
114 // Maximum relative error on parameters
115 AliFMDCorrELossFit::ELossFit::fgMaxRelError = .12;
116 // Least weight to use
117 AliFMDCorrELossFit::ELossFit::fgLeastWeight = 1e-5;
118 // Maximum value of reduced chi^2
119 AliFMDCorrELossFit::ELossFit::fgMaxChi2nu = 20;