1 #ifndef NPSI_MINUITPLOGLIOSDE1DFCN_HH_
2 #define NPSI_MINUITPLOGLIOSDE1DFCN_HH_
16 #include "Minuit2/FCNGradientBase.h"
31 const unsigned nCoeffsExpected,
34 lastGradient_(nCoeffsExpected),
37 nCoeffs_(nCoeffsExpected),
49 inline double Up()
const {
return up_;}
52 inline bool CheckGradient()
const {
return false;}
54 inline virtual double operator()(
const std::vector<double>& x)
const
60 inline std::vector<double> Gradient(
const std::vector<double>& x)
const
80 inline void calculateMemoized(
const std::vector<double>& x)
const
82 if (x != lastX_ || first_)
84 assert(x.size() == nCoeffs_);
85 lastResult_ = -osde_.pseudoLogli(
86 &x[0], nCoeffs_, &lastGradient_[0]);
88 for (
unsigned i=0; i<nCoeffs_; ++i)
89 lastGradient_[i] *= -1.0;
95 mutable std::vector<double> lastX_;
96 mutable std::vector<double> lastGradient_;
97 mutable double lastResult_;
OSDE based on pseudo-log-likelihood.
Definition: MinuitPLogliOSDE1DFcn.hh:27
Definition: PLogliOSDE1D.hh:24
Definition: fitCompositeJohnson.hh:16