CMS 3D CMS Logo

ChiSquareFunctionUpdator.h
Go to the documentation of this file.
1 #ifndef RecoTauTag_ImpactParameter_ChiSquareFunctionUpdator_h
2 #define RecoTauTag_ImpactParameter_ChiSquareFunctionUpdator_h
3 
4 /* From SimpleFits Package
5  * Designed an written by
6  * author: Ian M. Nugent
7  * Humboldt Foundations
8  */
9 
10 #include "Minuit2/FCNBase.h"
11 #include "TMatrixT.h"
12 #include "TVectorT.h"
14 
15 namespace tauImpactParameter {
16 
17  class ChiSquareFunctionUpdator : public ROOT::Minuit2::FCNBase {
18  public:
21 
22  double operator()(const std::vector<double>& x) const override {
23  TVectorT<double> X(x.size());
24  for (unsigned int i = 0; i < x.size(); ++i) {
25  X(i) = x[i];
26  }
27  return VF_->updateChisquare(X);
28  }
29  double Up() const override {
30  return 1.0;
31  } // Error definiton for Chi^2 (virtual function defined in ROOT::Minuit2::FCNBase base-class)
32 
33  private:
35  };
36 
37 } // namespace tauImpactParameter
38 #endif
double operator()(const std::vector< double > &x) const override
#define X(str)
Definition: MuonsGrabber.cc:38
virtual double updateChisquare(const TVectorT< double > &inpar)
float x