GSI Object Oriented Online Offline (Go4) GO4-6.4.0
|
Amplitude estimation action. More...
#include <TGo4FitAmplEstimation.h>
Public Member Functions | |
TGo4FitAmplEstimation () | |
Default constructor. | |
TGo4FitAmplEstimation (const char *Name, Int_t NumIters=1) | |
Creates TGo4FitAmplEstimation action with given name. | |
virtual | ~TGo4FitAmplEstimation () |
Destroys TGo4FitAmplEstimation object. | |
void | DoAction (TGo4FitterAbstract *Fitter) override |
Perform amplitude estimations. | |
Int_t | GetNumIterations () const |
Returns number of iterations. | |
Bool_t | NeedBuffers () const override |
void | Print (Option_t *option="") const override |
Print information on standard output. | |
void | SetNumIterations (Int_t iNumIters) |
Sets number of iterations. | |
![]() | |
TGo4FitterAction () | |
Default constructor. | |
TGo4FitterAction (const char *Name, const char *Title, TNamed *Owner=nullptr) | |
Creates TGo4FitterAction object with given name and title. | |
virtual | ~TGo4FitterAction () |
virtual Bool_t | CanChangeFitter () const |
![]() | |
TGo4FitNamed () | |
Default constructor. | |
TGo4FitNamed (const char *Name, const char *Title, TNamed *Owner=nullptr) | |
Creates TGo4FitNamed object and set name and title. | |
virtual | ~TGo4FitNamed () |
Destroy TGo4FitNamed object. | |
const char * | GetFullName () |
Returns full name of object. | |
TNamed * | GetOwner () |
Return owner of object. | |
const char * | GetOwnerFullName () |
Return full name of owner. | |
void | Print (Option_t *option="") const override |
void | SetOwner (TNamed *iOwner) |
Sets owner of object. | |
Private Member Functions | |
Bool_t | CalculateWithBuffers (TGo4Fitter *fitter) |
Bool_t | CalculateWithIterators (TGo4Fitter *fitter) |
Double_t | PointWeight (Int_t niter, Int_t FFtype, Double_t value, Double_t modelvalue, Double_t standdev) |
Private Attributes | |
Int_t | fiNumIters {0} |
Number of iterations, used for amplitude estimation. | |
Amplitude estimation action.
In additional to general minimization routine very useful amplitude estimation algorithm can be used. If rest of models parameters have good initial estimation, the amplitude parameter can be defined by solving of system of linear equations, as described in theoretical preface part of tutorial. This algorithm is provided by TGo4FitAmplEstimation class. This action can be added by AddAmplEstimation() routine of fitter. Typically, this action should be added before minimization routine.
Definition at line 26 of file TGo4FitAmplEstimation.h.
TGo4FitAmplEstimation::TGo4FitAmplEstimation | ( | ) |
Default constructor.
Definition at line 29 of file TGo4FitAmplEstimation.cxx.
References TGo4FitterAction::TGo4FitterAction(), and fiNumIters.
TGo4FitAmplEstimation::TGo4FitAmplEstimation | ( | const char * | Name, |
Int_t | NumIters = 1 ) |
Creates TGo4FitAmplEstimation action with given name.
Optionally, default number of iterations can be sets up (default 1).
Definition at line 31 of file TGo4FitAmplEstimation.cxx.
References TGo4FitterAction::TGo4FitterAction(), and fiNumIters.
|
virtual |
Destroys TGo4FitAmplEstimation object.
Definition at line 36 of file TGo4FitAmplEstimation.cxx.
|
private |
Definition at line 66 of file TGo4FitAmplEstimation.cxx.
References TGo4FitModel::AssignmentName(), TGo4Fitter::DataBuffersAllocated(), TGo4Fitter::ff_chi_Pearson, TGo4Fitter::ff_ML_Poisson, TGo4Fitter::FindData(), fiNumIters, TGo4FitComponent::GetAmplPar(), TGo4FitComponent::GetAmplValue(), TGo4Fitter::GetData(), TGo4Fitter::GetDataBinsDevs(), TGo4Fitter::GetDataBinsResult(), TGo4Fitter::GetDataBinsSize(), TGo4Fitter::GetDataBinsValues(), TGo4Fitter::GetDataName(), TGo4Fitter::GetFitFunctionType(), TGo4FitParameter::GetFixed(), TGo4Fitter::GetModel(), TGo4Fitter::GetModelBinsValues(), TGo4Fitter::GetNumData(), TGo4Fitter::GetNumModel(), TGo4FitterAbstract::IsInitialized(), TGo4Fitter::ModelBuffersAllocated(), TGo4FitModel::NumAssigments(), PointWeight(), TGo4Fitter::RebuildAll(), TGo4FitComponent::SetAmplError(), and TGo4FitComponent::SetAmplValue().
Referenced by DoAction().
|
private |
Definition at line 230 of file TGo4FitAmplEstimation.cxx.
References TGo4FitModel::AfterEval(), TGo4FitModel::AssignmentName(), TGo4FitModel::BeforeEval(), TGo4FitModel::EvaluateAtPoint(), TGo4Fitter::ff_chi_Pearson, TGo4Fitter::ff_ML_Poisson, TGo4Fitter::FindData(), fiNumIters, TGo4FitComponent::GetAmplPar(), TGo4FitComponent::GetAmplValue(), TGo4Fitter::GetData(), TGo4Fitter::GetFitFunctionType(), TGo4FitParameter::GetFixed(), TGo4Fitter::GetModel(), TGo4Fitter::GetNumData(), TGo4Fitter::GetNumModel(), TGo4FitModel::GetRatioValueFor(), TGo4FitModel::IsAssignTo(), TGo4FitData::MakeIter(), TGo4FitModel::NumAssigments(), PointWeight(), TGo4FitComponent::SetAmplError(), and TGo4FitComponent::SetAmplValue().
Referenced by DoAction().
|
overridevirtual |
Perform amplitude estimations.
See Go4Fit tutorial to more details.
Implements TGo4FitterAction.
Definition at line 38 of file TGo4FitAmplEstimation.cxx.
References CalculateWithBuffers(), and CalculateWithIterators().
Referenced by TGo4Fitter::EstimateAmplitudes().
|
inline |
Returns number of iterations.
Definition at line 48 of file TGo4FitAmplEstimation.h.
References fiNumIters.
|
inlineoverridevirtual |
Reimplemented from TGo4FitterAction.
Definition at line 55 of file TGo4FitAmplEstimation.h.
|
private |
Definition at line 48 of file TGo4FitAmplEstimation.cxx.
References TGo4Fitter::ff_chi_gamma, TGo4Fitter::ff_chi_Neyman, TGo4Fitter::ff_chi_Pearson, TGo4Fitter::ff_chi_square, TGo4Fitter::ff_least_squares, TGo4Fitter::ff_ML_Poisson, and TGo4Fitter::ff_user.
Referenced by CalculateWithBuffers(), and CalculateWithIterators().
|
override |
Print information on standard output.
Definition at line 368 of file TGo4FitAmplEstimation.cxx.
References fiNumIters, and TGo4FitNamed::Print().
|
inline |
Sets number of iterations.
Definition at line 53 of file TGo4FitAmplEstimation.h.
References fiNumIters.
Referenced by QFitAmplEstimWidget::Iterations_valueChanged().
|
private |
Number of iterations, used for amplitude estimation.
Definition at line 77 of file TGo4FitAmplEstimation.h.
Referenced by TGo4FitAmplEstimation(), TGo4FitAmplEstimation(), CalculateWithBuffers(), CalculateWithIterators(), GetNumIterations(), Print(), and SetNumIterations().