MINT2
Public Member Functions | Private Attributes | List of all members
chi2BF Class Reference
Inheritance diagram for chi2BF:
MINT::Minimisable MINT::IMinimisable

Public Member Functions

 chi2BF (std::vector< double > BF, std::vector< TF1 * > partialWidths, std::vector< FitParameter * > fit_couplings, double m0, double gamma0, double precision=0.001)
 
double getVal ()
 
- Public Member Functions inherited from MINT::Minimisable
 Minimisable (MinuitParameterSet *mps=0)
 
 Minimisable (const Minimisable &other)
 
virtual ~Minimisable ()
 
void setPset (MinuitParameterSet *mps)
 
MinuitParameterSetgetParSet ()
 
virtual void beginFit ()
 
virtual void parametersChanged ()
 
virtual void endFit ()
 
double getNewVal ()
 
- Public Member Functions inherited from MINT::IMinimisable
virtual void Gradient (std::vector< double > &grad)
 
virtual bool useAnalyticGradient ()
 
virtual void setUseAnalyticGradient (bool useAnalyticGradient)
 
virtual ~IMinimisable ()
 

Private Attributes

double _precision
 
std::vector< double > _BF
 
double _m0
 
double _gamma0
 
double _s_min
 
double _s_max
 
std::vector< TF1 * > _partialWidths
 
std::vector< FitParameter * > _fit_couplings
 

Detailed Description

Definition at line 413 of file RunningWidthCalculator.cpp.

Constructor & Destructor Documentation

◆ chi2BF()

chi2BF::chi2BF ( std::vector< double >  BF,
std::vector< TF1 * >  partialWidths,
std::vector< FitParameter * >  fit_couplings,
double  m0,
double  gamma0,
double  precision = 0.001 
)
inline

Definition at line 424 of file RunningWidthCalculator.cpp.

424  :
425  _precision(precision), _BF(BF), _m0(m0), _gamma0(gamma0), _partialWidths(partialWidths), _fit_couplings(fit_couplings)
426  {
427  _s_min= 0;
428  _s_max= pow( (_m0+10*_gamma0)/GeV , 2);
429  }
std::vector< double > _BF
std::vector< FitParameter * > _fit_couplings
static const double GeV
std::vector< TF1 * > _partialWidths

Member Function Documentation

◆ getVal()

double chi2BF::getVal ( )
inlinevirtual

Implements MINT::Minimisable.

Definition at line 430 of file RunningWidthCalculator.cpp.

430  {
432  double sum = 0.;
433  vector<double> integrals;
434  for (unsigned int i=0; i < _BF.size() ; i++) {
435  integrand.setIndex(i);
436  ROOT::Math::IntegratorOneDim integrator(integrand) ;
437  double integral = integrator.Integral( _s_min, _s_max );
438  integrals.push_back(integral);
439  }
440  double norm = 0.;
441  for (unsigned int i=0; i < _BF.size() ; i++) {
442  norm += integrals[i];
443  }
444  for (unsigned int i=0; i < _BF.size() ; i++) {
445  sum += pow( (_BF[i]-integrals[i]/norm) /_precision ,2);
446  }
447  return sum;
448  }
std::vector< double > _BF
std::vector< FitParameter * > _fit_couplings
std::vector< TF1 * > _partialWidths

Member Data Documentation

◆ _BF

std::vector<double> chi2BF::_BF
private

Definition at line 415 of file RunningWidthCalculator.cpp.

◆ _fit_couplings

std::vector<FitParameter*> chi2BF::_fit_couplings
private

Definition at line 421 of file RunningWidthCalculator.cpp.

◆ _gamma0

double chi2BF::_gamma0
private

Definition at line 417 of file RunningWidthCalculator.cpp.

◆ _m0

double chi2BF::_m0
private

Definition at line 416 of file RunningWidthCalculator.cpp.

◆ _partialWidths

std::vector<TF1*> chi2BF::_partialWidths
private

Definition at line 420 of file RunningWidthCalculator.cpp.

◆ _precision

double chi2BF::_precision
private

Definition at line 414 of file RunningWidthCalculator.cpp.

◆ _s_max

double chi2BF::_s_max
private

Definition at line 419 of file RunningWidthCalculator.cpp.

◆ _s_min

double chi2BF::_s_min
private

Definition at line 418 of file RunningWidthCalculator.cpp.


The documentation for this class was generated from the following file: