![]() |
GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
|
![]() |
This Class can be used to fit weighted-poisson distributed data. It is originally from Numerical recipes, and adapted by G.F Grinyer. It is based on the non-linear Levenberg-Marquardt minimization algorithm.
Definition at line 610 of file TLMFitter.h.
Classes | |
| class | NRMat |
| class | NRMat3d |
| class | NRVec |
Public Member Functions | |
| TLMFitter ()=default | |
| TLMFitter (const TLMFitter &)=default | |
| TLMFitter (TLMFitter &&) noexcept=default | |
| ~TLMFitter ()=default | |
| void | Fit (TH1 *hist, TF1 *func) |
| TLMFitter & | operator= (const TLMFitter &)=default |
| TLMFitter & | operator= (TLMFitter &&) noexcept=default |
Protected Member Functions | |
| void | covsrt (Mat_IO_double &covar, Vec_I_BOOL &ia, int mfit) |
| void | funcs (const double &x, Vec_IO_double &a, double &y, Vec_O_double &dyda) |
| void | gaussj (Mat_IO_double &a, Mat_IO_double &b) |
| int | integrator (Vec_I_double &x, Vec_I_double &y, Vec_double &sig, Vec_I_double &W, Vec_IO_double &a, Vec_double &dyda, int chisqnumber, const double &bin_width, Vec_double &yfit, const int &bin) |
| void | mrqcof (Vec_I_double &x, Vec_I_double &y, Vec_double &sig, Vec_IO_double &a, Vec_I_BOOL &ia, Mat_O_double &alpha, Vec_O_double &beta, double &chisq, Vec_I_double &W, double &chisqexp) |
| void | mrqmin (Vec_I_double &x, Vec_I_double &y, Vec_double &sig, Vec_IO_double &a, Vec_I_BOOL &ia, Mat_O_double &covar, Mat_O_double &alpha, double &chisq, Vec_I_double &W, double &alamda) |
| void | nrerror (const std::string &error_text) |
| void | SetFitterRange (int min, int max) |
Private Attributes | |
| TF1 * | fFunction {nullptr} |
| TH1 * | fHist {nullptr} |
| int | fInitChi2Number {3} |
| int | fIntegrationSteps {100} |
| int | fRangeMax {0} |
| int | fRangeMin {0} |
Inheritance diagram for TLMFitter:
Collaboration diagram for TLMFitter:
|
default |
|
default |
|
defaultnoexcept |
|
default |
|
protected |
Definition at line 399 of file TLMFitter.cxx.
References NRVec< T >::size(), and SWAP().
Referenced by mrqmin().
| void TLMFitter::Fit | ( | TH1 * | hist, |
| TF1 * | func ) |
Definition at line 35 of file TLMFitter.cxx.
References fFunction, fHist, hist, mrqmin(), and SetFitterRange().
Referenced by TDecay::Fit().
|
protected |
Definition at line 23 of file TLMFitter.cxx.
References fFunction, and NRVec< T >::size().
Referenced by integrator().
|
protected |
Definition at line 426 of file TLMFitter.cxx.
References NRMat< T >::ncols(), nrerror(), NRMat< T >::nrows(), and SWAP().
Referenced by mrqmin().
|
protected |
Definition at line 151 of file TLMFitter.cxx.
References fInitChi2Number, fIntegrationSteps, funcs(), and NRVec< T >::size().
Referenced by mrqcof().
|
protected |
Definition at line 310 of file TLMFitter.cxx.
References fHist, fInitChi2Number, fRangeMax, fRangeMin, integrator(), and NRVec< T >::size().
Referenced by mrqmin().
|
protected |
*******************************************************************/
Definition at line 214 of file TLMFitter.cxx.
References covsrt(), gaussj(), mrqcof(), and NRVec< T >::size().
Referenced by Fit().
|
inlineprotected |
Definition at line 644 of file TLMFitter.h.
Referenced by gaussj().
|
inlineprotected |
Definition at line 638 of file TLMFitter.h.
References fRangeMax, and fRangeMin.
Referenced by Fit().
|
private |
Definition at line 622 of file TLMFitter.h.
|
private |
Definition at line 621 of file TLMFitter.h.
|
private |
Definition at line 623 of file TLMFitter.h.
Referenced by integrator(), and mrqcof().
|
private |
Definition at line 620 of file TLMFitter.h.
Referenced by integrator().
|
private |
Definition at line 625 of file TLMFitter.h.
Referenced by mrqcof(), and SetFitterRange().
|
private |
Definition at line 624 of file TLMFitter.h.
Referenced by mrqcof(), and SetFitterRange().