Heavy ion Analysis Libriares
|
Public Member Functions | |
CorrFitFunc (Int_t nparams=1, Int_t dim=1) | |
void | SetTolerance (Double_t tol) |
void | SetMaxIteration (Int_t max) |
void | SetRange (Double_t min, Double_t max) |
void | TraceFitting () |
virtual void | SetFittingMask (const CorrFitMask &map)=0 |
void | SetMinimizerConf (const MinimizerStepConf &conf) |
void | SetMinimizerConf (TString xmlFile) |
void | MakeDummyXMLConfig (TString xmlFile) |
Int_t | GetFreeParamsNo () const |
Double_t | GetChiSquare (Option_t *opt="fitted") const |
Double_t | GetChiNDF (Option_t *opt="fitted") const |
Double_t | GetRangeMin (Int_t flag=0) const |
Double_t | GetRangeMax (Int_t flag=0) const |
ChiSqMap2D * | GetChiSquareMap (Int_t par1, Int_t par1_steps, Int_t par2, Int_t par2_steps, Bool_t scale=kTRUE, EMinFunc=kChi2) const |
ChiSqMap2D * | GetChiSquareMap (Int_t par1, Int_t par1_steps, Double_t par1_min, Double_t par1_max, Int_t par2, Int_t par2_steps, Double_t par2_min, Double_t par2_max, Bool_t scale=kTRUE, EMinFunc=kChi2) const |
TF1 * | GetFittedFunction () const |
CorrFitHDFunc * | GetHD () const |
virtual void | PreFit (TObject *histo, Double_t bins=1) |
Double_t | GetNorm () const |
Int_t | NormID () const |
Double_t | GetNormError () const |
void | SetNormLimits (Double_t min, Double_t max) |
virtual void | Draw (Option_t *option="") |
virtual void | Repaint () |
Hal::CorrFitGUI * | StartGui (Int_t prec=-1) |
CorrFitPainter * | GetPainter () const |
Public Member Functions inherited from Hal::CorrFit | |
CorrFit (Int_t parameters_no=2) | |
void | SetParLimits (Int_t par, Double_t min, Double_t max) |
void | FixParameter (Int_t par, Double_t val) |
void | SetParameterName (Int_t par, TString name) |
void | SetLineColor (Color_t color) |
void | SetLineStyle (Style_t style) |
void | SetLineWidth (Width_t width) |
void | SetThreshold (Double_t thres) |
void | PrintFitResults () const |
Bool_t | IsParFixed (Int_t par) const |
Bool_t | IsParDiscrete (Int_t par) const |
Double_t | GetParMin (Int_t par) const |
Double_t | GetParMax (Int_t par) const |
Double_t | GetParError (Int_t par) const |
Double_t | GetParameter (Int_t par) const |
const FitParam & | GetParamConf (Int_t par) const |
Double_t | GetNDF () const |
Int_t | GetParametersNo () const |
Int_t | GetParameterIndex (TString name) const |
TString | GetParameterName (Int_t no) const |
virtual void | SetMinimizer (EMinAlgo alg) |
void | SetMinimizedFunc (EMinFunc f) |
void | SetCalculationOption (ECalcOption f) |
CorrFitPainter * | GetPainter () const |
Protected Member Functions | |
virtual void | RecalculateFunction () const |
virtual void | RecalculateSmoothFunction () const =0 |
virtual void | PrepareHalMinimizer () const |
virtual void | PrepareRootMinimizer (ROOT::Math::Minimizer *minizer) const |
virtual void | EstimateActiveBins ()=0 |
void | SetupFunction (TF1 *f) const |
void | NumericalMinimization () |
void | NumericalPreMinimization (Double_t bins) |
void | DummyNumericalFunction () |
void | ParametersChanged () const |
virtual void | Fit (TObject *histo) |
virtual void | FitDummy (TObject *histo) |
virtual void | Check () |
virtual void | Prepare () |
virtual void | PrepareRaw ()=0 |
virtual void | MakePainter (TString options)=0 |
void | FitStep (Int_t) |
double | FunctorChiTFD (const double *params) |
double | FunctorChiTF (const double *params) |
double | FunctorLogTFD (const double *params) |
virtual double | GetChiTFD (const double *params) const =0 |
virtual double | GetLogTFD (const double *params) const =0 |
virtual double | GetChiTF (const double *params) const =0 |
virtual void | SetErrors (TH1 *num, const TH1 *den) const =0 |
void | CalcError (const Double_t Num, const Double_t NumErr, const Double_t Den, const Double_t DenErr, Double_t &cf, Double_t &cfe) const |
Protected Member Functions inherited from Hal::CorrFit | |
std::vector< TString > | AlgoToOptions (EMinAlgo algo) const |
void | CheckOrder () |
void | ChangeParametersNo () |
Color_t | GetLineColor () const |
Style_t | GetLineStyle () const |
Width_t | GetLineWidth () const |
TF1 * | GetTF1 (Int_t no) const |
std::vector< std::pair< TF1 *, TVirtualPad * > > | GetDrawFunctions () const |
void | OverwriteParam (Int_t par, Double_t val) |
void | CopyParamsToTF1 (TF1 *f, Bool_t copyNumPar=kTRUE, Bool_t copyGrapPar=kTRUE) const |
void | SetErrorsNegative () |
void | SetFitOrder (std::initializer_list< Int_t > order) |
Protected Attributes | |
Femto::EKinematics | fKinematics |
const Int_t | fDim |
Double_t | fChi [2] |
Int_t | fMaxIterations |
Int_t | fNormParIndex = {0} |
Double_t | fTolerance |
Double_t | fActiveBins |
Array_1< Double_t > | fRange |
Bool_t | fTrace |
Bool_t | fOwnRangeMap |
TObject * | fCF |
TH1 * | fDenominatorHistogram |
TH1 * | fNumeratorHistogram |
TH1 * | fCorrelationFunctionHistogram |
CorrFitMask * | fMask |
CorrFitPainter * | fPainter = {nullptr} |
MinimizerStepConf | fDiscretteMinimzerConf |
CorrFitHDFunc * | fHDMaps |
Protected Attributes inherited from Hal::CorrFit | |
ECalcOption | fBinCalc |
EMinFunc | fMinFunc |
EMinAlgo | fMinAlgo |
CorrFitPainter * | fPainter = {nullptr} |
Int_t | fNDF |
Double_t | fThreshold |
std::vector< FitParam > | fParameters |
std::vector< Int_t > | fFitOrder |
std::vector< std::pair< TF1 *, TVirtualPad * > > | fDrawFunc |
Double_t * | fTempParamsEval |
Friends | |
class | Femto1DCF |
class | Femto3DCF |
class | FemtoSHCF |
class | CorrFitPainter |
Additional Inherited Members | |
Public Types inherited from Hal::CorrFit | |
enum | EMinFunc { kChi , kLog , kChi2 } |
enum | EMinAlgo { kMinuitMigrad , kMinuitSimplex , kMinuitCombined , kMinuitScan , kMinuitFumili , kGLSMultiMinConjungateFR , kGLSMultiMinConjugatePR , kGLSMultiMinBFGS , kGLSMultiMinBFGS2 , kGLSMultiMinSteppestDescent , kGLSMultiFit , kGLSSimAn , kDefaultAlgo , kHalScan , kHalAnt , kHalScanMigrad , kHalScanScan } |
enum | ECalcOption { kSimple , kExtrapolated } |
Definition at line 44 of file CorrFitFunc.h.
Hal::CorrFitFunc::CorrFitFunc | ( | Int_t | nparams = 1, |
Int_t | dim = 1 ) |
default constructor
nparams | number of parameters |
dim | dimension of fitted function |
Definition at line 47 of file CorrFitFunc.cxx.
|
virtual |
Definition at line 293 of file CorrFitFunc.cxx.
|
protected |
calculate error of correlation function
Num | numerator value |
NumErr | numeratora error |
Den | denominator |
DenErr | denominator error |
cf | calculated correlaction function |
cfe | calculated error of CF |
Definition at line 134 of file CorrFitFunc.cxx.
|
protectedvirtual |
check ranges set by user and other stuff
Reimplemented in Hal::CorrFit3DCFMultiDim, Hal::CorrFitKisiel, Hal::CorrFitMath1DCF, and Hal::CorrFitWielanek.
Definition at line 113 of file CorrFitFunc.cxx.
|
virtual |
Definition at line 552 of file CorrFitFunc.cxx.
|
protected |
main function that performs some estitamtions for numerical calculations but doesn't perform minimalization itself
Definition at line 352 of file CorrFitFunc.cxx.
|
protectedpure virtual |
estimate number of active bins, NDF, also calculate mask in needed
Implemented in Hal::CorrFit1DCF, and Hal::CorrFit3DCF.
|
protectedvirtual |
fit this function to given CF
histo | - object that will be fitted |
Reimplemented in Hal::CorrFit1DCF, and Hal::CorrFit3DCFBowlerSinyukov.
Definition at line 399 of file CorrFitFunc.cxx.
|
protectedvirtual |
make dummy fit - allows to draw this function but doesn't try to fit it
Reimplemented in Hal::CorrFit3DCFBowlerSinyukov.
Definition at line 418 of file CorrFitFunc.cxx.
|
inlineprotected |
fit funcion by steps, usefull only for 1D fits
step | - step of fitting |
Definition at line 213 of file CorrFitFunc.h.
|
protected |
|
protected |
|
protected |
Double_t Hal::CorrFitFunc::GetChiNDF | ( | Option_t * | opt = "fitted" | ) | const |
opt | "fitted" or "fitting" to return value for fitted function or fitting function |
Definition at line 82 of file CorrFitFunc.cxx.
Double_t Hal::CorrFitFunc::GetChiSquare | ( | Option_t * | opt = "fitted" | ) | const |
opt | "fitted" return chi square of fitted function if "fitting" return chi square of function used for fittig |
Definition at line 72 of file CorrFitFunc.cxx.
ChiSqMap2D * Hal::CorrFitFunc::GetChiSquareMap | ( | Int_t | par1, |
Int_t | par1_steps, | ||
Double_t | par1_min, | ||
Double_t | par1_max, | ||
Int_t | par2, | ||
Int_t | par2_steps, | ||
Double_t | par2_min, | ||
Double_t | par2_max, | ||
Bool_t | scale = kTRUE, | ||
EMinFunc | algo = kChi2 ) const |
draw chi square map where user can define range of such map
par1 | - first parameters no |
par1_steps | - number of bins on first axis in returend map |
par1_min | lowest value of first parameter used for calculation map |
par1_max | highest value of first parameter used for calculation map |
par2 | second parameter no |
par2_steps | number of bins on second axis of the map |
par2_min | lowest value of second parameter used for calculation map |
par2_max | highest value of second parameter used for calculation map |
scale | if true then all bin contents are divided by NDF |
Definition at line 212 of file CorrFitFunc.cxx.
ChiSqMap2D * Hal::CorrFitFunc::GetChiSquareMap | ( | Int_t | par1, |
Int_t | par1_steps, | ||
Int_t | par2, | ||
Int_t | par2_steps, | ||
Bool_t | scale = kTRUE, | ||
EMinFunc | algo = kChi2 ) const |
return chi square map for two parameters, other parameters are from fit, this function draw map acros range of parameters
par1 | first parameter no |
par1_steps | number of bins in first axis in map |
par2 | second parameter no |
par2_steps | /number of bins on second axis map |
scale | if true then all bin contents are divided by NDF |
Definition at line 199 of file CorrFitFunc.cxx.
Int_t Hal::CorrFitFunc::GetFreeParamsNo | ( | ) | const |
Definition at line 302 of file CorrFitFunc.cxx.
|
inline |
Definition at line 377 of file CorrFitFunc.h.
|
protectedpure virtual |
Implemented in Hal::CorrFit1DCF.
|
inline |
Definition at line 389 of file CorrFitFunc.h.
|
inline |
Definition at line 399 of file CorrFitFunc.h.
|
inline |
Definition at line 414 of file CorrFitFunc.h.
Double_t Hal::CorrFitFunc::GetRangeMax | ( | Int_t | flag = 0 | ) | const |
Double_t Hal::CorrFitFunc::GetRangeMin | ( | Int_t | flag = 0 | ) | const |
get lower fit range
flag | - axis ID |
Definition at line 364 of file CorrFitFunc.cxx.
void Hal::CorrFitFunc::MakeDummyXMLConfig | ( | TString | xmlFile | ) |
makes dummy config for Hal::Minimizer configuration
name | of xml file |
Definition at line 541 of file CorrFitFunc.cxx.
|
protectedpure virtual |
makes parent for this objec
Implemented in Hal::CorrFit1DCF, and Hal::CorrFit3DCF.
|
inline |
Definition at line 394 of file CorrFitFunc.h.
|
protected |
main function that performs numerical minimization of given function
Definition at line 145 of file CorrFitFunc.cxx.
|
protected |
function that estimates parameters by using simple scan minimizer, the scan is performed by Hal::Minimizer
bins | if bin = 0 - just display minimas if bin > 0 - set par limits as value +/- bin_width*bin if bin < 0 - set par limits as value +/- bin_widht also configure Hal::Minimizer to value +/- bin width with step bin_width/bin |
Definition at line 472 of file CorrFitFunc.cxx.
|
inlineprotectedvirtual |
uset do full recalcuate function and smoth function
histo |
Reimplemented from Hal::CorrFit.
Reimplemented in Hal::CorrFitMath3DCF.
Definition at line 178 of file CorrFitFunc.h.
|
virtual |
make an estimation of fited parameters by using full scan
histo | |
bins | - the new parameters range if one fit inside the minimal bin, if 2 fit inside two neighbours bins in <1 do not change fit parameters - just print estimated values |
Definition at line 453 of file CorrFitFunc.cxx.
|
protectedvirtual |
clear fit, and functions when old cf is used (cleaning histograms is not required)
Definition at line 107 of file CorrFitFunc.cxx.
|
protectedvirtual |
prepares hal minimizer (numer of steps etc. should be ovewriten if fit base on discreate map, for other functions the configuration of minimizer should be done manualy before each fit, by default the calculation matrix check 10 points for each non-fixed parameter from min to max
Reimplemented in Hal::CorrFit3DCFMultiDim.
Definition at line 374 of file CorrFitFunc.cxx.
|
protectedpure virtual |
prepare histograms when new fit is called
Implemented in Hal::CorrFit1DCF, and Hal::CorrFit3DCF.
|
protectedvirtual |
prepares root minimizer
Definition at line 437 of file CorrFitFunc.cxx.
|
inlineprotectedvirtual |
called for each calculation of chi2 or loglikehood minimalization - used for recalculation CF is parameters are changed
Reimplemented in Hal::CorrFit3DCF, Hal::CorrFit3DCFBowlerSinyukov, and Hal::CorrFit3DCFMultiDim.
Definition at line 61 of file CorrFitFunc.h.
|
protectedpure virtual |
recalculate CF's with taking into acount limited bin resolution
Implemented in Hal::CorrFit1DCF, and Hal::CorrFit3DCF.
|
virtual |
Definition at line 574 of file CorrFitFunc.cxx.
|
protectedpure virtual |
"recompute errors in numerator by adding influence of errors in denominator used when fitting with TFD is called
num | numerator |
den | denominator |
Implemented in Hal::CorrFit1DCF, and Hal::CorrFit3DCF.
|
pure virtual |
provide user fitting mask, such mask overwrite SetRange method
Implemented in Hal::CorrFit1DCF, and Hal::CorrFit3DCF.
|
inline |
set maximum number of iterations during minimizations
max |
Definition at line 278 of file CorrFitFunc.h.
|
inline |
set minimizer configuration (used only for fit with discrette parametrization and Hal::Minimizer
conf | configuration |
Definition at line 298 of file CorrFitFunc.h.
void Hal::CorrFitFunc::SetMinimizerConf | ( | TString | xmlFile | ) |
set minimizer configuration (used only for fit with discrette parametrization and Hal::Minimizer
xmlFile | xml file with configuration |
Definition at line 539 of file CorrFitFunc.cxx.
|
inline |
void Hal::CorrFitFunc::SetRange | ( | Double_t | min, |
Double_t | max ) |
set range of CF's
min | lower range limit |
max | upper range limit |
Definition at line 84 of file CorrFitFunc.cxx.
|
inline |
|
protected |
set parameters, their names or ranges
f | function with is set |
Definition at line 95 of file CorrFitFunc.cxx.
Hal::CorrFitGUI * Hal::CorrFitFunc::StartGui | ( | Int_t | prec = -1 | ) |
start GUI
prec | precission of sliders for parameter manipulation |
Definition at line 663 of file CorrFitFunc.cxx.
|
inline |
enable tracing of fit
Definition at line 288 of file CorrFitFunc.h.
|
friend |
Definition at line 48 of file CorrFitFunc.h.
|
friend |
Definition at line 45 of file CorrFitFunc.h.
|
friend |
Definition at line 46 of file CorrFitFunc.h.
|
friend |
Definition at line 47 of file CorrFitFunc.h.
|
protected |
number of bins used in minimization
Definition at line 93 of file CorrFitFunc.h.
|
protected |
pointer to correlation function
Definition at line 109 of file CorrFitFunc.h.
|
protected |
last calcualted chi square value
Definition at line 77 of file CorrFitFunc.h.
|
protected |
copy of correlation function
Definition at line 121 of file CorrFitFunc.h.
|
protected |
copy of denominator
Definition at line 113 of file CorrFitFunc.h.
|
protected |
number of dimensions
Definition at line 73 of file CorrFitFunc.h.
|
protected |
Definition at line 130 of file CorrFitFunc.h.
|
mutableprotected |
extrapolated function
Definition at line 134 of file CorrFitFunc.h.
|
protected |
kinematics of pair
Definition at line 69 of file CorrFitFunc.h.
|
protected |
fitting mask
Definition at line 125 of file CorrFitFunc.h.
|
protected |
max numer of iterations
Definition at line 81 of file CorrFitFunc.h.
|
protected |
norm index
Definition at line 85 of file CorrFitFunc.h.
|
protected |
numerator histogram copy
Definition at line 117 of file CorrFitFunc.h.
|
protected |
user provided fitting map
Definition at line 105 of file CorrFitFunc.h.
|
protected |
for drawing CF
Definition at line 129 of file CorrFitFunc.h.
|
protected |
range of fitted functions
Definition at line 97 of file CorrFitFunc.h.
|
protected |
desired precission
Definition at line 89 of file CorrFitFunc.h.
|
protected |
trace fitting procedure
Definition at line 101 of file CorrFitFunc.h.