BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
Minimizer function with access to single data element residuals, required by Fumili2 and GSLMultiMin minimizers.
Definition at line 37 of file RootResidualFunction.h.
Public Types | |
typedef FunctionType::BaseFunc | BaseFunction |
using | Type_t = ROOT::Math::BasicFitMethodFunction< ROOT::Math::IMultiGenFunction >::Type_t |
Public Member Functions | |
RootResidualFunction (scalar_function_t objective_fun, gradient_function_t gradient_fun, size_t npars, size_t ndatasize) | |
Constructs RootResidualFunction. More... | |
ROOT::Math::IMultiGenFunction * | Clone () const override |
double | DataElement (const double *pars, unsigned int index, double *gradients=nullptr) const override |
Evaluation of single data element residual. Will be called by ROOT minimizer. More... | |
virtual unsigned int | NCalls () const |
virtual unsigned int | NDim () const |
virtual unsigned int | NPoints () const |
virtual void | ResetNCalls () |
Type_t | Type () const override |
virtual void | UpdateNCalls () const |
Private Member Functions | |
double | DoEval (const double *pars) const override |
evaluation of chi2 More... | |
Private Attributes | |
unsigned int | fNCalls |
unsigned int | fNDim |
unsigned int | fNPoints |
size_t | m_datasize |
gradient_function_t | m_gradient_fun |
User function to get residual and gradients. More... | |
size_t | m_npars |
scalar_function_t | m_objective_fun |
User function to get value to minimizer. More... | |
|
inherited |
Definition at line 41 of file FitMethodFunction.h.
using RootResidualFunction::Type_t = ROOT::Math::BasicFitMethodFunction<ROOT::Math::IMultiGenFunction>::Type_t |
Definition at line 39 of file RootResidualFunction.h.
RootResidualFunction::RootResidualFunction | ( | scalar_function_t | objective_fun, |
gradient_function_t | gradient_fun, | ||
size_t | npars, | ||
size_t | ndatasize | ||
) |
Constructs RootResidualFunction.
Definition at line 19 of file RootResidualFunction.cpp.
Referenced by Clone().
|
override |
Definition at line 35 of file RootResidualFunction.cpp.
References RootResidualFunction(), m_datasize, m_gradient_fun, m_npars, and m_objective_fun.
|
overridevirtual |
Evaluation of single data element residual. Will be called by ROOT minimizer.
Returns residual value for given data element index. Transform call of ancient pointer based function to safer gradient_function_t.
pars | array of fit parameter values from the minimizer |
index | index of residual element |
gradients | if not zero, then array where we have to put gradients |
Implements ROOT::Math::BasicFitMethodFunction< FunctionType >.
Definition at line 47 of file RootResidualFunction.cpp.
References m_gradient_fun, and m_npars.
|
overrideprivate |
evaluation of chi2
Definition at line 70 of file RootResidualFunction.cpp.
References m_npars, and m_objective_fun.
|
inlinevirtualinherited |
return the total number of function calls (overrided if needed)
Definition at line 85 of file FitMethodFunction.h.
References ROOT::Math::BasicFitMethodFunction< FunctionType >::fNCalls.
Referenced by ROOT::Math::GSLNLSMinimizer::NCalls().
|
inlinevirtualinherited |
Number of dimension (parameters) . From IGenMultiFunction interface
Definition at line 61 of file FitMethodFunction.h.
References ROOT::Math::BasicFitMethodFunction< FunctionType >::fNDim.
Referenced by ROOT::Math::LSResidualFunc::NDim().
|
inlinevirtualinherited |
return the number of data points used in evaluating the function
Definition at line 75 of file FitMethodFunction.h.
References ROOT::Math::BasicFitMethodFunction< FunctionType >::fNPoints.
|
inlinevirtualinherited |
reset number of function calls
Definition at line 95 of file FitMethodFunction.h.
References ROOT::Math::BasicFitMethodFunction< FunctionType >::fNCalls.
|
overridevirtual |
return the type of method, override if needed
Reimplemented from ROOT::Math::BasicFitMethodFunction< FunctionType >.
Definition at line 30 of file RootResidualFunction.cpp.
References ROOT::Math::BasicFitMethodFunction< FunctionType >::kLeastSquare.
|
inlinevirtualinherited |
update number of calls
Definition at line 90 of file FitMethodFunction.h.
References ROOT::Math::BasicFitMethodFunction< FunctionType >::fNCalls.
|
mutableprivateinherited |
|
privateinherited |
Definition at line 107 of file FitMethodFunction.h.
Referenced by ROOT::Math::BasicFitMethodFunction< FunctionType >::NDim().
|
privateinherited |
Definition at line 108 of file FitMethodFunction.h.
Referenced by ROOT::Math::BasicFitMethodFunction< FunctionType >::NPoints().
|
private |
Definition at line 60 of file RootResidualFunction.h.
Referenced by Clone().
|
private |
User function to get residual and gradients.
Definition at line 58 of file RootResidualFunction.h.
Referenced by Clone(), and DataElement().
|
private |
Definition at line 59 of file RootResidualFunction.h.
Referenced by Clone(), DataElement(), and DoEval().
|
private |
User function to get value to minimizer.
Definition at line 57 of file RootResidualFunction.h.