![]() |
AliPhysics
96866e8 (96866e8)
|
#include <AliFMDEnergyFitter.h>
Public Types | |
typedef AliFMDCorrELossFit::ELossFit | ELossFit_t |
Public Member Functions | |
RingHistos () | |
RingHistos (UShort_t d, Char_t r) | |
RingHistos (const RingHistos &o) | |
RingHistos & | operator= (const RingHistos &o) |
~RingHistos () | |
virtual TArrayD | MakeIncreasingAxis (Int_t n, Double_t min, Double_t max) const |
TH2 * | Make (const char *name, const char *title, const TAxis &eAxis, Double_t deMax=12, Int_t nDeBins=300, Bool_t incr=true) |
virtual void | CreateOutputObjects (TList *dir) |
virtual void | SetupForData (const TAxis &eAxis, const TAxis &cAxis, Double_t maxDE=10, Int_t nDEbins=300, Bool_t useIncrBin=true) |
virtual void | Fill (Bool_t empty, Double_t eta, Int_t icent, Double_t mult) |
virtual TObjArray * | Fit (TList *dir, Double_t lowCut, UShort_t nParticles, UShort_t minEntries, UShort_t minusBins, Double_t relErrorCut, Double_t chi2nuCut, Double_t minWeight, Double_t regCut, EResidualMethod residuals) const |
virtual TObjArray * | FitSlices (TList *dir, const char *name, Double_t lowCut, UShort_t nParticles, UShort_t minEntries, UShort_t minusBins, Double_t relErrorCut, Double_t chi2nuCut, Double_t minWeight, Double_t regCut, EResidualMethod residuals, Bool_t scaleToPeak=true, TObjArray *best=0) const |
virtual void | Scale (TH1 *dist) const |
virtual ELossFit_t * | FitHist (TH1 *dist, Double_t lowCut, UShort_t nParticles, UShort_t minEntries, UShort_t minusBins, Double_t relErrorCut, Double_t chi2nuCut, Double_t minWeight, Double_t regCut, Bool_t scaleToPeak, UShort_t &status) const |
virtual ELossFit_t * | FindBestFit (const TH1 *dist, Double_t relErrorCut, Double_t chi2nuCut, Double_t minWeightCut) const |
virtual void | CalculateResiduals (EResidualMethod mode, Double_t lowCut, TH1 *dist, ELossFit_t *fit, TCollection *out) const |
virtual void | FindBestFits (const TList *d, AliFMDCorrELossFit &obj, const TAxis &eta) |
TH1 * | MakePar (const char *name, const char *title, const TAxis &eta) const |
TH1 * | MakeTotal (const char *name, const char *title, const TAxis &eta, Int_t low, Int_t high, Double_t val, Double_t err) const |
![]() | |
RingHistos () | |
RingHistos (UShort_t d, Char_t r) | |
RingHistos (const RingHistos &o) | |
RingHistos & | operator= (const RingHistos &o) |
TList * | DefineOutputList (TList *d) const |
TList * | GetOutputList (const TList *d) const |
TH1 * | GetOutputHist (const TList *d, const char *name) const |
Color_t | Color () const |
const char * | GetName () const |
const UShort_t & | NSector () const |
const UShort_t & | NStrip () const |
Public Attributes | |
TH1 * | fEDist |
TH1 * | fEmpty |
TH2 * | fHist |
TList * | fList |
TObjArray | fBest |
TClonesArray | fFits |
Int_t | fDebug |
![]() | |
UShort_t | fDet |
Char_t | fRing |
TString | fName |
UShort_t | fkNSector |
UShort_t | fkNStrip |
Internal data structure to keep track of the histograms. Objects of this class are streamed, as we create the objects at task initialization time. We must therefore create a dictionary for this class. This does not mean that one should actually use this class outside of this (or a derived) class.
Definition at line 377 of file AliFMDEnergyFitter.h.
Definition at line 379 of file AliFMDEnergyFitter.h.
AliFMDEnergyFitter::RingHistos::RingHistos | ( | ) |
Default CTOR
Definition at line 598 of file AliFMDEnergyFitter.cxx.
|
inline |
Copy constructor - not defined
o | Object to copy from |
Definition at line 396 of file AliFMDEnergyFitter.h.
|
virtual |
Destructor
Reimplemented from AliForwardUtil::RingHistos.
Reimplemented in AliFMDMCHitEnergyFitter::RingHistos, and AliFMDMCTrackInspector::RingHistos.
Definition at line 640 of file AliFMDEnergyFitter.cxx.
Referenced by operator=().
|
virtual |
Calculate residuals of the fit
mode | How to calculate |
lowCut | Lower cut |
dist | Distribution |
fit | Function fitted to distribution |
out | Output list to store residual histogram in |
Definition at line 1413 of file AliFMDEnergyFitter.cxx.
Referenced by FitSlices(), and operator=().
|
virtual |
Define outputs
dir |
Definition at line 750 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::CreateOutputObjects(), and operator=().
|
virtual |
Fill histogram
empty | True if event is empty |
eta | \( Eta\) |
icent | Centrality bin (1 based) |
mult | Signal |
Definition at line 813 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::Accumulate(), and operator=().
|
virtual |
Find the best fit
dist | Histogram |
relErrorCut | Cut applied to relative error of parameter. Note, for multi-particle weights, the cut is loosend by a factor of 2 |
chi2nuCut | Cut on \( \chi^2/\nu\) - the reduced \(\chi^2\) |
minWeightCut | Least valid \( a_i\) |
Definition at line 1349 of file AliFMDEnergyFitter.cxx.
Referenced by FitHist(), and operator=().
|
virtual |
Find the best fits. This assumes that the array fBest has been filled with the best possible fits for each eta bin, and that the fits are placed according to the bin number of the eta bin.
This is called by the parent class when generating the corretion object.
d | Parent list |
obj | Object to add fits to |
eta | Eta axis |
Definition at line 1484 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::MakeCorrectionsObject(), and operator=().
|
virtual |
Get the the 2D histogram eloss name from our sub-list of dir and call the Fit function described below (with &fBest) as last argument.
dir | Output list |
lowCut | Lower cut |
nParticles | Max number of convolved landaus to fit |
minEntries | Minimum number of entries |
minusBins | Number of bins from peak to subtract to get the fit range |
relErrorCut | Cut applied to relative error of parameter. Note, for multi-particle weights, the cut is loosend by a factor of 2 |
chi2nuCut | Cut on \( \chi^2/\nu\) - the reduced \(\chi^2\) |
minWeight | Least weight ot consider |
regCut | Regularization cut-off |
residuals | Mode for residual plots |
Reimplemented in AliFMDMCTrackInspector::RingHistos, and AliFMDMCHitEnergyFitter::RingHistos.
Definition at line 929 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::Fit(), and operator=().
|
virtual |
Fit a signal histogram. First, the bin \( b_{min}\) with maximum bin content in the range \( [E_{min},\infty]\) is found. Then the fit range is set to the bin range \( [b_{min}-\Delta b,b_{min}+2\Delta b]\), and a 1 particle signal is fitted to that. The parameters of that fit is then used as seeds for a fit of the \( N\) particle response to the data in the range \( [b_{min}-\Delta b,N(\Delta_1+\xi_1\log(N))+2N\xi\)
dist | Histogram to fit |
lowCut | Lower cut \( E_{min}\) on signal |
minEntries | Least number of entries required |
nParticles | Max number \( N\) of convolved landaus to fit |
minusBins | Number of bins \( \Delta b\) from peak to subtract to get the fit range |
relErrorCut | Cut applied to relative error of parameter. Note, for multi-particle weights, the cut is loosend by a factor of 2 |
chi2nuCut | Cut on \( \chi^2/\nu\) - the reduced \(\chi^2\) |
minWeight | Least weight ot consider |
regCut | Regularization cut-off |
scaleToPeak | If true, scale distribution to peak value |
status | On return, contain the status code (0: OK, 1: empty, 2: low statistics, 3: fit failed) |
Definition at line 1221 of file AliFMDEnergyFitter.cxx.
Referenced by FitSlices(), and operator=().
|
virtual |
Get the the 2D histogram name from our sub-list of dir. Then for each eta slice, try to fit the energu loss distribution up to nParticles particle responses.
The fitted distributions (along with the functions fitted) are stored in a newly created sublist (nameDists).
The fit parameters are also recorded in the newly created sub-list nameResults.
If residuals is not equal to kNoResiduals, then the residuals of the fits will be stored in the newly created sub-list nameResiduals.
A histogram named nameStatus is also generated and stored in the output list.
dir | Output list |
name | Name of 2D base histogram in list |
lowCut | Lower cut |
nParticles | Max number of convolved landaus to fit |
minEntries | Minimum number of entries |
minusBins | Number of bins from peak to subtract to get the fit range |
relErrorCut | Cut applied to relative error of parameter. Note, for multi-particle weights, the cut is loosend by a factor of 2 |
chi2nuCut | Cut on \( \chi^2/\nu\) - the reduced \(\chi^2\) |
minWeight | Least weight ot consider |
regCut | Regularization cut-off |
residuals | Mode for residual plots |
scaleToPeak | If true, scale distribution to peak value |
best | Optional array to store fits in |
Definition at line 947 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDMCHitEnergyFitter::RingHistos::Fit(), AliFMDMCTrackInspector::RingHistos::Fit(), Fit(), and operator=().
TH2 * AliFMDEnergyFitter::RingHistos::Make | ( | const char * | name, |
const char * | title, | ||
const TAxis & | eAxis, | ||
Double_t | deMax = 12 , |
||
Int_t | nDeBins = 300 , |
||
Bool_t | incr = true |
||
) |
Make E/E_mip histogram
name | Name of histogram |
title | Title of histogram |
eAxis | \(\eta\) axis |
deMax | Maximum energy loss |
nDeBins | Number energy loss bins |
incr | Whether to make bins of increasing size |
Definition at line 682 of file AliFMDEnergyFitter.cxx.
Referenced by operator=(), AliFMDMCTrackInspector::RingHistos::SetupForData(), AliFMDMCHitEnergyFitter::RingHistos::SetupForData(), and SetupForData().
|
virtual |
Make an axis with increasing bins
n | Number of bins |
min | Minimum |
max | Maximum |
Reimplemented in AliFMDMCHitEnergyFitter::RingHistos, and AliFMDMCTrackInspector::RingHistos.
Definition at line 651 of file AliFMDEnergyFitter.cxx.
Referenced by Make(), and operator=().
TH1 * AliFMDEnergyFitter::RingHistos::MakePar | ( | const char * | name, |
const char * | title, | ||
const TAxis & | eta | ||
) | const |
Make a parameter histogram
name | Name of histogram. |
title | Title of histogram. |
eta | Eta axis |
Definition at line 853 of file AliFMDEnergyFitter.cxx.
Referenced by FitSlices(), and operator=().
TH1 * AliFMDEnergyFitter::RingHistos::MakeTotal | ( | const char * | name, |
const char * | title, | ||
const TAxis & | eta, | ||
Int_t | low, | ||
Int_t | high, | ||
Double_t | val, | ||
Double_t | err | ||
) | const |
Make a histogram that contains the results of the fit over the full ring
name | Name |
title | Title |
eta | Eta axis |
low | Least bin |
high | Largest bin |
val | Value of parameter |
err | Error on parameter |
Definition at line 884 of file AliFMDEnergyFitter.cxx.
Referenced by FitSlices(), and operator=().
|
inline |
Assignment operator - not defined
o | Object to assign from |
Definition at line 404 of file AliFMDEnergyFitter.h.
|
virtual |
Do scaling of histogram before fitting. This can be overwritten to do some smoothing or the like. By default, this simply scales to the bin width.
dist | Histogram to scale. |
Reimplemented in AliFMDMCTrackInspector::RingHistos.
Definition at line 1212 of file AliFMDEnergyFitter.cxx.
Referenced by FitHist(), operator=(), and AliFMDMCTrackInspector::RingHistos::Scale().
|
virtual |
Initialise object
eAxis | Eta axis |
cAxis | Centrality axis |
maxDE | Max energy loss to consider |
nDEbins | Number of bins |
useIncrBin | Whether to use an increasing bin size |
Reimplemented in AliFMDMCHitEnergyFitter::RingHistos, and AliFMDMCTrackInspector::RingHistos.
Definition at line 769 of file AliFMDEnergyFitter.cxx.
Referenced by operator=(), and AliFMDEnergyFitter::SetupForData().
|
mutable |
Definition at line 679 of file AliFMDEnergyFitter.h.
Referenced by FindBestFits(), Fit(), and RingHistos().
Int_t AliFMDEnergyFitter::RingHistos::fDebug |
Definition at line 681 of file AliFMDEnergyFitter.h.
Referenced by AliFMDEnergyFitter::CreateOutputObjects(), CreateOutputObjects(), Fill(), FindBestFit(), FindBestFits(), FitHist(), FitSlices(), AliFMDEnergyFitter::Init(), RingHistos(), AliFMDEnergyFitter::SetDebug(), SetupForData(), and ~RingHistos().
TH1* AliFMDEnergyFitter::RingHistos::fEDist |
Definition at line 674 of file AliFMDEnergyFitter.h.
Referenced by Fill(), and SetupForData().
TH1* AliFMDEnergyFitter::RingHistos::fEmpty |
Definition at line 675 of file AliFMDEnergyFitter.h.
Referenced by Fill(), and SetupForData().
|
mutable |
Definition at line 680 of file AliFMDEnergyFitter.h.
Referenced by FindBestFit().
TH2* AliFMDEnergyFitter::RingHistos::fHist |
Definition at line 676 of file AliFMDEnergyFitter.h.
Referenced by Fill(), AliFMDMCTrackInspector::RingHistos::FillMC(), AliFMDMCHitEnergyFitter::RingHistos::FillMC(), AliFMDMCTrackInspector::RingHistos::SetupForData(), AliFMDMCHitEnergyFitter::RingHistos::SetupForData(), and SetupForData().
TList* AliFMDEnergyFitter::RingHistos::fList |
Definition at line 678 of file AliFMDEnergyFitter.h.
Referenced by AliFMDMCTrackInspector::CreateOutputObjects(), CreateOutputObjects(), AliFMDMCTrackInspector::RingHistos::SetupForData(), AliFMDMCHitEnergyFitter::RingHistos::SetupForData(), and SetupForData().