AliPhysics  5eaf189 (5eaf189)
elossFitConfig.C
Go to the documentation of this file.
1 
18 void
20 {
21  if (!task) return;
22 
23  Info("elossFitConfig", "Setting up task %s (%p)", task->GetName(), task);
24 
25  // --- Event inspector ---------------------------------------------
26  // Set the number of SPD tracklets for which we consider the event a
27  // low flux event
28  task->GetEventInspector().SetLowFluxCut(1000);
29  // Set the maximum error on v_z [cm]
30  task->GetEventInspector().SetMaxVzErr(0.2);
31  // How to tag events as pile-up. Bit pattern of
32  //
33  // - 0x1: SPD multi-vertex
34  // - 0x2: Track multi-vertex
35  // - 0x4: Out-of-bunch
36  //
37  task->GetEventInspector().SetPileupFlags(0x7);
38 
39  // --- ESD Fixer ---------------------------------------------------
40  // IF the noise correction is bigger than this, flag strip as dead
41  task->GetESDFixer().SetMaxNoiseCorrection(0.04);
42  // Dead region in FMD2i
43  task->GetESDFixer().AddDeadRegion(2, 'I', 16, 17, 256, 511);
44 
45  // --- Energy loss fitter ------------------------------------------
46  // Set the eta axis to use - note, this overrides whatever is used
47  // by the rest of the algorithms - but only for the energy fitter
48  // algorithm.
49  task->GetEnergyFitter().SetEtaAxis(200, -4, 6);
50  // Set maximum energy loss to consider
51  task->GetEnergyFitter().SetMaxE(15);
52  // Set number of energy loss bins
53  task->GetEnergyFitter().SetNEbins(500);
54  // Set whether to use increasing bin sizes
56  // Set whether to do fit the energy distributions
57  task->GetEnergyFitter().SetDoFits(kTRUE);
58  // Set whether to make the correction object
59  task->GetEnergyFitter().SetDoMakeObject(kTRUE);
60  // Set the low cut used for energy
61  task->GetEnergyFitter().SetLowCut(0.45);
62  // Set the number of bins to subtract from maximum of distributions
63  // to get the lower bound of the fit range
65  // Set the maximum number of landaus to try to fit (max 5)
66  task->GetEnergyFitter().SetNParticles(5);
67  // Set the minimum number of entries in the distribution before
68  // trying to fit to the data - 10K seems the absolute minimum
69  task->GetEnergyFitter().SetMinEntries(10000);
70  // Set reqularization cut
72  // Check if we're to store the residuals. This can be one of
73  // AliFMDEnergyFitter::EResidualMethod:
74  //
75  // - AliFMDEnergyFitter::kNoResiduals - no residuals calculated
76  // - AliFMDEnergyFitter::kResidualSquareDifference
77  // - AliFMDEnergyFitter::kResidualScaledDifference
78  // - AliFMDEnergyFitter::kResidualDifference
79  //
82 
83  // --- Set limits on fits the energy -------------------------------
84  // DO NOT CHANGE THESE UNLESS YOU KNOW WHAT YOU ARE DOING
85  // Maximum relative error on parameters
86  // AliFMDCorrELossFit::ELossFit::fgMaxRelError = .12;
87  // Least weight to use
88  // AliFMDCorrELossFit::ELossFit::fgLeastWeight = 1e-5;
89  // Maximum value of reduced chi^2
90  // AliFMDCorrELossFit::ELossFit::fgMaxChi2nu = 20;
91 }
92 //
93 // EOF
94 //
void elossFitConfig(AliFMDEnergyFitterTask *task)
void SetDoFits(Bool_t doFit=kTRUE)
void SetLowCut(Double_t lowCut=0.3)
void SetFitRangeBinWidth(UShort_t n=4)
void SetStoreResiduals(EResidualMethod x=kResidualDifference)
void SetMaxE(Double_t x)
void SetMaxVzErr(Double_t c=0.1)
void SetNParticles(UShort_t n)
AliFMDEventInspector & GetEventInspector()
void SetDoMakeObject(Bool_t doMake=kTRUE)
void SetPileupFlags(UShort_t flags=0x5)
void SetRegularizationCut(Double_t cut=3e6)
void SetMaxNoiseCorrection(Double_t x)
void SetUseIncreasingBins(Bool_t x)
void AddDeadRegion(UShort_t d, Char_t r, UShort_t s1, UShort_t s2, UShort_t t1, UShort_t t2)
void SetMinEntries(UShort_t n)
AliFMDESDFixer & GetESDFixer()
void SetEtaAxis(Int_t nBins, Double_t etaMin, Double_t etaMax)
AliFMDEnergyFitter & GetEnergyFitter()