![]() |
AliPhysics
114179e (114179e)
|
#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 |
ClassDef (RingHistos, 4) | |
![]() | |
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 |
ClassDef (RingHistos, 1) | |
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 597 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 639 of file AliFMDEnergyFitter.cxx.
|
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 1412 of file AliFMDEnergyFitter.cxx.
AliFMDEnergyFitter::RingHistos::ClassDef | ( | RingHistos | , |
4 | |||
) |
|
virtual |
Define outputs
dir |
Definition at line 749 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::CreateOutputObjects().
|
virtual |
Fill histogram
empty | True if event is empty |
eta | \( Eta\) |
icent | Centrality bin (1 based) |
mult | Signal |
Definition at line 812 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::Accumulate().
|
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 1348 of file AliFMDEnergyFitter.cxx.
|
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 1483 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::MakeCorrectionsObject().
|
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 928 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::Fit().
|
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 1220 of file AliFMDEnergyFitter.cxx.
|
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 946 of file AliFMDEnergyFitter.cxx.
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 681 of file AliFMDEnergyFitter.cxx.
|
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 650 of file AliFMDEnergyFitter.cxx.
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 852 of file AliFMDEnergyFitter.cxx.
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 883 of file AliFMDEnergyFitter.cxx.
|
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 1211 of file AliFMDEnergyFitter.cxx.
Referenced by 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 768 of file AliFMDEnergyFitter.cxx.
Referenced by AliFMDEnergyFitter::SetupForData().
|
mutable |
Definition at line 679 of file AliFMDEnergyFitter.h.
Referenced by RingHistos().
Int_t AliFMDEnergyFitter::RingHistos::fDebug |
Definition at line 681 of file AliFMDEnergyFitter.h.
Referenced by AliFMDEnergyFitter::CreateOutputObjects(), AliFMDEnergyFitter::Init(), RingHistos(), and AliFMDEnergyFitter::SetDebug().
TH1* AliFMDEnergyFitter::RingHistos::fEDist |
Definition at line 674 of file AliFMDEnergyFitter.h.
TH1* AliFMDEnergyFitter::RingHistos::fEmpty |
Definition at line 675 of file AliFMDEnergyFitter.h.
|
mutable |
Definition at line 680 of file AliFMDEnergyFitter.h.
TH2* AliFMDEnergyFitter::RingHistos::fHist |
Definition at line 676 of file AliFMDEnergyFitter.h.
TList* AliFMDEnergyFitter::RingHistos::fList |
Definition at line 678 of file AliFMDEnergyFitter.h.
Referenced by AliFMDMCTrackInspector::CreateOutputObjects().