AliPhysics  114179e (114179e)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliFMDEnergyFitter::RingHistos Struct Reference

#include <AliFMDEnergyFitter.h>

Inheritance diagram for AliFMDEnergyFitter::RingHistos:

Public Types

typedef
AliFMDCorrELossFit::ELossFit 
ELossFit_t
 

Public Member Functions

 RingHistos ()
 
 RingHistos (UShort_t d, Char_t r)
 
 RingHistos (const RingHistos &o)
 
RingHistosoperator= (const RingHistos &o)
 
 ~RingHistos ()
 
virtual TArrayD MakeIncreasingAxis (Int_t n, Double_t min, Double_t max) const
 
TH2Make (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 TObjArrayFit (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 TObjArrayFitSlices (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_tFitHist (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_tFindBestFit (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)
 
TH1MakePar (const char *name, const char *title, const TAxis &eta) const
 
TH1MakeTotal (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)
 
- Public Member Functions inherited from AliForwardUtil::RingHistos
 RingHistos ()
 
 RingHistos (UShort_t d, Char_t r)
 
 RingHistos (const RingHistos &o)
 
RingHistosoperator= (const RingHistos &o)
 
TListDefineOutputList (TList *d) const
 
TListGetOutputList (const TList *d) const
 
TH1GetOutputHist (const TList *d, const char *name) const
 
Color_t Color () const
 
const char * GetName () const
 
const UShort_tNSector () const
 
const UShort_tNStrip () const
 
 ClassDef (RingHistos, 1)
 

Public Attributes

TH1fEDist
 
TH1fEmpty
 
TH2fHist
 
TListfList
 
TObjArray fBest
 
TClonesArray fFits
 
Int_t fDebug
 
- Public Attributes inherited from AliForwardUtil::RingHistos
UShort_t fDet
 
Char_t fRing
 
TString fName
 
UShort_t fkNSector
 
UShort_t fkNStrip
 

Detailed Description

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.

Member Typedef Documentation

Constructor & Destructor Documentation

AliFMDEnergyFitter::RingHistos::RingHistos ( )

Default CTOR

Definition at line 597 of file AliFMDEnergyFitter.cxx.

AliFMDEnergyFitter::RingHistos::RingHistos ( UShort_t  d,
Char_t  r 
)

Constructor

Parameters
ddetector
rring

Definition at line 616 of file AliFMDEnergyFitter.cxx.

AliFMDEnergyFitter::RingHistos::RingHistos ( const RingHistos o)
inline

Copy constructor - not defined

Parameters
oObject to copy from

Definition at line 396 of file AliFMDEnergyFitter.h.

AliFMDEnergyFitter::RingHistos::~RingHistos ( )
virtual

Destructor

Reimplemented from AliForwardUtil::RingHistos.

Reimplemented in AliFMDMCHitEnergyFitter::RingHistos, and AliFMDMCTrackInspector::RingHistos.

Definition at line 639 of file AliFMDEnergyFitter.cxx.

Member Function Documentation

void AliFMDEnergyFitter::RingHistos::CalculateResiduals ( EResidualMethod  mode,
Double_t  lowCut,
TH1 dist,
ELossFit_t fit,
TCollection out 
) const
virtual

Calculate residuals of the fit

Parameters
modeHow to calculate
lowCutLower cut
distDistribution
fitFunction fitted to distribution
outOutput list to store residual histogram in

Definition at line 1412 of file AliFMDEnergyFitter.cxx.

AliFMDEnergyFitter::RingHistos::ClassDef ( RingHistos  ,
 
)
void AliFMDEnergyFitter::RingHistos::CreateOutputObjects ( TList dir)
virtual

Define outputs

Parameters
dir

Definition at line 749 of file AliFMDEnergyFitter.cxx.

Referenced by AliFMDEnergyFitter::CreateOutputObjects().

void AliFMDEnergyFitter::RingHistos::Fill ( Bool_t  empty,
Double_t  eta,
Int_t  icent,
Double_t  mult 
)
virtual

Fill histogram

Parameters
emptyTrue if event is empty
eta\( Eta\)
icentCentrality bin (1 based)
multSignal

Definition at line 812 of file AliFMDEnergyFitter.cxx.

Referenced by AliFMDEnergyFitter::Accumulate().

AliFMDEnergyFitter::RingHistos::ELossFit_t * AliFMDEnergyFitter::RingHistos::FindBestFit ( const TH1 dist,
Double_t  relErrorCut,
Double_t  chi2nuCut,
Double_t  minWeightCut 
) const
virtual

Find the best fit

Parameters
distHistogram
relErrorCutCut applied to relative error of parameter. Note, for multi-particle weights, the cut is loosend by a factor of 2
chi2nuCutCut on \( \chi^2/\nu\) - the reduced \(\chi^2\)
minWeightCutLeast valid \( a_i\)
Returns
Best fit

Definition at line 1348 of file AliFMDEnergyFitter.cxx.

void AliFMDEnergyFitter::RingHistos::FindBestFits ( const TList d,
AliFMDCorrELossFit obj,
const TAxis eta 
)
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.

Parameters
dParent list
objObject to add fits to
etaEta axis

Definition at line 1483 of file AliFMDEnergyFitter.cxx.

Referenced by AliFMDEnergyFitter::MakeCorrectionsObject().

TObjArray * AliFMDEnergyFitter::RingHistos::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

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.

Parameters
dirOutput list
lowCutLower cut
nParticlesMax number of convolved landaus to fit
minEntriesMinimum number of entries
minusBinsNumber of bins from peak to subtract to get the fit range
relErrorCutCut applied to relative error of parameter. Note, for multi-particle weights, the cut is loosend by a factor of 2
chi2nuCutCut on \( \chi^2/\nu\) - the reduced \(\chi^2\)
minWeightLeast weight ot consider
regCutRegularization cut-off
residualsMode for residual plots
Returns
List of fit parameters

Reimplemented in AliFMDMCTrackInspector::RingHistos, and AliFMDMCHitEnergyFitter::RingHistos.

Definition at line 928 of file AliFMDEnergyFitter.cxx.

Referenced by AliFMDEnergyFitter::Fit().

AliFMDEnergyFitter::RingHistos::ELossFit_t * AliFMDEnergyFitter::RingHistos::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

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\)

Parameters
distHistogram to fit
lowCutLower cut \( E_{min}\) on signal
minEntriesLeast number of entries required
nParticlesMax number \( N\) of convolved landaus to fit
minusBinsNumber of bins \( \Delta b\) from peak to subtract to get the fit range
relErrorCutCut applied to relative error of parameter. Note, for multi-particle weights, the cut is loosend by a factor of 2
chi2nuCutCut on \( \chi^2/\nu\) - the reduced \(\chi^2\)
minWeightLeast weight ot consider
regCutRegularization cut-off
scaleToPeakIf true, scale distribution to peak value
statusOn return, contain the status code (0: OK, 1: empty, 2: low statistics, 3: fit failed)
Returns
The best fit function

Definition at line 1220 of file AliFMDEnergyFitter.cxx.

TObjArray * AliFMDEnergyFitter::RingHistos::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

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.

Parameters
dirOutput list
nameName of 2D base histogram in list
lowCutLower cut
nParticlesMax number of convolved landaus to fit
minEntriesMinimum number of entries
minusBinsNumber of bins from peak to subtract to get the fit range
relErrorCutCut applied to relative error of parameter. Note, for multi-particle weights, the cut is loosend by a factor of 2
chi2nuCutCut on \( \chi^2/\nu\) - the reduced \(\chi^2\)
minWeightLeast weight ot consider
regCutRegularization cut-off
residualsMode for residual plots
scaleToPeakIf true, scale distribution to peak value
bestOptional array to store fits in
Returns
List of fit parameters

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

Parameters
nameName of histogram
titleTitle of histogram
eAxis\(\eta\) axis
deMaxMaximum energy loss
nDeBinsNumber energy loss bins
incrWhether to make bins of increasing size

Definition at line 681 of file AliFMDEnergyFitter.cxx.

TArrayD AliFMDEnergyFitter::RingHistos::MakeIncreasingAxis ( Int_t  n,
Double_t  min,
Double_t  max 
) const
virtual

Make an axis with increasing bins

Parameters
nNumber of bins
minMinimum
maxMaximum
Returns
An axis with quadratically increasing bin size

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

Parameters
nameName of histogram.
titleTitle of histogram.
etaEta axis
Returns

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

Parameters
nameName
titleTitle
etaEta axis
lowLeast bin
highLargest bin
valValue of parameter
errError on parameter
Returns
The newly allocated histogram

Definition at line 883 of file AliFMDEnergyFitter.cxx.

RingHistos& AliFMDEnergyFitter::RingHistos::operator= ( const RingHistos o)
inline

Assignment operator - not defined

Parameters
oObject to assign from
Returns
Reference to this

Definition at line 404 of file AliFMDEnergyFitter.h.

void AliFMDEnergyFitter::RingHistos::Scale ( TH1 dist) const
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.

Parameters
distHistogram to scale.

Reimplemented in AliFMDMCTrackInspector::RingHistos.

Definition at line 1211 of file AliFMDEnergyFitter.cxx.

Referenced by AliFMDMCTrackInspector::RingHistos::Scale().

void AliFMDEnergyFitter::RingHistos::SetupForData ( const TAxis eAxis,
const TAxis cAxis,
Double_t  maxDE = 10,
Int_t  nDEbins = 300,
Bool_t  useIncrBin = true 
)
virtual

Initialise object

Parameters
eAxisEta axis
cAxisCentrality axis
maxDEMax energy loss to consider
nDEbinsNumber of bins
useIncrBinWhether 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().

Member Data Documentation

TObjArray AliFMDEnergyFitter::RingHistos::fBest
mutable

Definition at line 679 of file AliFMDEnergyFitter.h.

Referenced by RingHistos().

Int_t AliFMDEnergyFitter::RingHistos::fDebug
TH1* AliFMDEnergyFitter::RingHistos::fEDist

Definition at line 674 of file AliFMDEnergyFitter.h.

TH1* AliFMDEnergyFitter::RingHistos::fEmpty

Definition at line 675 of file AliFMDEnergyFitter.h.

TClonesArray AliFMDEnergyFitter::RingHistos::fFits
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().


The documentation for this struct was generated from the following files: