BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
class evaluating the log likelihood for binned Poisson likelihood fits it is template to distinguish gradient and non-gradient case
Definition at line 48 of file PoissonLikelihoodFCN.h.
Public Types | |
typedef BasicFCN< DerivFunType, ModelFunType, BinData > | BaseFCN |
typedef BaseObjFunction::BaseFunction | BaseFunction |
typedef ::ROOT::Math::BasicFitMethodFunction< DerivFunType > | BaseObjFunction |
typedef ::ROOT::Math::IParamMultiFunctionTempl< T > | IModelFunction |
typedef ModelFunType::BackendType | T |
typedef BaseObjFunction::Type_t | Type_t |
Public Member Functions | |
PoissonLikelihoodFCN (const BinData &data, const IModelFunction &func, int weight=0, bool extended=true, const ::ROOT::Fit::ExecutionPolicy &executionPolicy=::ROOT::Fit::ExecutionPolicy::kSerial) | |
PoissonLikelihoodFCN (const PoissonLikelihoodFCN &f) | |
PoissonLikelihoodFCN (const std::shared_ptr< BinData > &data, const std::shared_ptr< IModelFunction > &func, int weight=0, bool extended=true, const ::ROOT::Fit::ExecutionPolicy &executionPolicy=::ROOT::Fit::ExecutionPolicy::kSerial) | |
virtual | ~PoissonLikelihoodFCN () |
virtual BaseFunction * | Clone () const |
clone the function (need to return Base for Windows) More... | |
virtual double | DataElement (const double *x, unsigned int i, double *g) const |
i-th likelihood element and its gradient More... | |
virtual void | Gradient (const double *x, double *g) const |
evaluate gradient More... | |
bool | IsWeighted () const |
virtual unsigned int | NFitPoints () const |
PoissonLikelihoodFCN & | operator= (const PoissonLikelihoodFCN &rhs) |
virtual BaseObjFunction::Type_t | Type () const |
get type of fit method function More... | |
void | UseSumOfWeights () |
void | UseSumOfWeightSquare (bool on=true) |
Private Member Functions | |
virtual double | DoDerivative (const double *x, unsigned int icoord) const |
virtual double | DoEval (const double *x) const |
Private Attributes | |
::ROOT::Fit::ExecutionPolicy | fExecutionPolicy |
std::vector< double > | fGrad |
bool | fIsExtended |
unsigned int | fNEffPoints |
int | fWeight |
typedef BasicFCN<DerivFunType,ModelFunType,BinData> ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::BaseFCN |
Definition at line 52 of file PoissonLikelihoodFCN.h.
typedef BaseObjFunction::BaseFunction ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::BaseFunction |
Definition at line 55 of file PoissonLikelihoodFCN.h.
typedef ::ROOT::Math::BasicFitMethodFunction<DerivFunType> ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::BaseObjFunction |
Definition at line 54 of file PoissonLikelihoodFCN.h.
typedef ::ROOT::Math::IParamMultiFunctionTempl<T> ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::IModelFunction |
Definition at line 57 of file PoissonLikelihoodFCN.h.
typedef ModelFunType::BackendType ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::T |
Definition at line 51 of file PoissonLikelihoodFCN.h.
typedef BaseObjFunction::Type_t ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::Type_t |
Definition at line 58 of file PoissonLikelihoodFCN.h.
|
inline |
Constructor from unbin data set and model function (pdf)
Definition at line 63 of file PoissonLikelihoodFCN.h.
Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::Clone().
|
inline |
Constructor from unbin data set and model function (pdf) managed by the users
Definition at line 75 of file PoissonLikelihoodFCN.h.
|
inlinevirtual |
|
inline |
|
inlinevirtual |
clone the function (need to return Base for Windows)
Definition at line 117 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::PoissonLikelihoodFCN().
|
inlinevirtual |
i-th likelihood element and its gradient
Definition at line 123 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::FitUtil::Evaluate< T >::EvalPoissonBinPdf().
|
inlineprivatevirtual |
Definition at line 171 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fGrad, and ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::Gradient().
|
inlineprivatevirtual |
Evaluation of the function (required by interface)
Definition at line 164 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::FitUtil::Evaluate< T >::EvalPoissonLogL(), ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fExecutionPolicy, ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fIsExtended, ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fNEffPoints, and ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fWeight.
|
inlinevirtual |
evaluate gradient
Definition at line 129 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::FitUtil::Evaluate< T >::EvalPoissonLogLGradient(), ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fExecutionPolicy, and ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fNEffPoints.
Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::DoDerivative().
|
inline |
Definition at line 139 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fWeight.
|
inlinevirtual |
Definition at line 120 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fNEffPoints.
|
inline |
Assignment operator
Definition at line 105 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fExecutionPolicy, ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fGrad, ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fIsExtended, ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fNEffPoints, and ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fWeight.
|
inlinevirtual |
get type of fit method function
Definition at line 137 of file PoissonLikelihoodFCN.h.
References ROOT::Math::BasicFitMethodFunction< FunctionType >::kLogLikelihood.
|
inline |
Definition at line 142 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fWeight.
|
inline |
Definition at line 149 of file PoissonLikelihoodFCN.h.
References ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::fWeight.
|
private |
|
mutableprivate |
Definition at line 184 of file PoissonLikelihoodFCN.h.
Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::DoDerivative(), and ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::operator=().
|
private |
Definition at line 179 of file PoissonLikelihoodFCN.h.
Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::DoEval(), and ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::operator=().
|
mutableprivate |
Definition at line 182 of file PoissonLikelihoodFCN.h.
Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::DoEval(), ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::Gradient(), ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::NFitPoints(), and ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::operator=().
|
private |
Definition at line 180 of file PoissonLikelihoodFCN.h.
Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::DoEval(), ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::IsWeighted(), ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::operator=(), ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::UseSumOfWeights(), and ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::UseSumOfWeightSquare().