1 #ifndef NPSI_MINUITNEYMANOSDE1DFCN_HH_
2 #define NPSI_MINUITNEYMANOSDE1DFCN_HH_
16 #include "Minuit2/FCNGradientBase.h"
31 const unsigned nCoeffsExpected,
32 const double* shrinkages,
const unsigned nShrinkages,
35 shrinkages_(shrinkages, shrinkages+nShrinkages),
36 lastGradient_(nCoeffsExpected),
37 polyStatistics_(nShrinkages),
40 nCoeffs_(nCoeffsExpected)
53 inline double Up()
const {
return up_;}
56 inline bool CheckGradient()
const {
return false;}
58 inline virtual double operator()(
const std::vector<double>& x)
const
64 inline std::vector<double> Gradient(
const std::vector<double>& x)
const
84 inline void calculateMemoized(
const std::vector<double>& x)
const
86 if (x != lastX_ || lastResult_ < 0.0)
88 assert(x.size() == nCoeffs_);
89 lastResult_ = osde_.chiSquare(
91 &shrinkages_[0], shrinkages_.size(),
92 &polyStatistics_[0], &lastGradient_[0]);
98 std::vector<double> shrinkages_;
99 mutable std::vector<double> lastX_;
100 mutable std::vector<double> lastGradient_;
101 mutable std::vector<double> polyStatistics_;
102 mutable double lastResult_;
OSDE based on minimizing the expected ISE of the empirical comparison density.
Definition: MinuitNeymanOSDE1DFcn.hh:27
Definition: NeymanOSDE1D.hh:22
Definition: fitCompositeJohnson.hh:16