BornAgain  1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
ROOT::Fit::FitUtil::Evaluate< T > Struct Template Reference

Description

template<class T>
struct ROOT::Fit::FitUtil::Evaluate< T >

Definition at line 372 of file FitUtil.h.

Static Public Member Functions

static double EvalChi2 (const IModelFunction &func, const BinData &data, const double *p, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy, unsigned nChunks=0)
 
static double EvalChi2Effective (const IModelFunctionTempl< double > &func, const BinData &data, const double *p, unsigned int &nPoints)
 
static void EvalChi2Gradient (const IModelFunctionTempl< double > &func, const BinData &data, const double *p, double *g, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy=ROOT::Fit::ExecutionPolicy::kSerial, unsigned nChunks=0)
 
static double EvalChi2Residual (const IModelFunctionTempl< double > &func, const BinData &data, const double *p, unsigned int i, double *g=0)
 
static double EvalLogL (const IModelFunctionTempl< double > &func, const UnBinData &data, const double *p, int iWeight, bool extended, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy, unsigned nChunks=0)
 
static void EvalLogLGradient (const IModelFunctionTempl< double > &func, const UnBinData &data, const double *p, double *g, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy=ROOT::Fit::ExecutionPolicy::kSerial, unsigned nChunks=0)
 
static double EvalPoissonBinPdf (const IModelFunctionTempl< double > &func, const BinData &data, const double *p, unsigned int i, double *g)
 evaluate the pdf (Poisson) contribution to the logl (return actually log of pdf) and its gradient More...
 
static double EvalPoissonLogL (const IModelFunctionTempl< double > &func, const BinData &data, const double *p, int iWeight, bool extended, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy, unsigned nChunks=0)
 
static void EvalPoissonLogLGradient (const IModelFunctionTempl< double > &func, const BinData &data, const double *p, double *g, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy=ROOT::Fit::ExecutionPolicy::kSerial, unsigned nChunks=0)
 

Member Function Documentation

◆ EvalChi2()

template<class T >
static double ROOT::Fit::FitUtil::Evaluate< T >::EvalChi2 ( const IModelFunction func,
const BinData data,
const double *  p,
unsigned int &  nPoints,
ROOT::Fit::ExecutionPolicy  executionPolicy,
unsigned  nChunks = 0 
)
inlinestatic

Definition at line 1447 of file FitUtil.h.

1449  {
1450  // evaluate the chi2 given a function reference, the data and returns the value and also in nPoints
1451  // the actual number of used points
1452  // normal chi2 using only error on values (from fitting histogram)
1453  // optionally the integral of function in the bin is used
1454 
1455 
1456  //Info("EvalChi2","Using non-vecorized implementation %d",(int) data.Opt().fIntegral);
1457 
1458  return FitUtil::EvaluateChi2(func, data, p, nPoints, executionPolicy, nChunks);
1459  }
double EvaluateChi2(const IModelFunction &func, const BinData &data, const double *x, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy, unsigned nChunks=0)

References ROOT::Fit::FitUtil::EvaluateChi2().

Referenced by ROOT::Fit::Chi2FCN< DerivFunType, ModelFunType >::DoEval().

Here is the call graph for this function:

◆ EvalChi2Effective()

template<class T >
static double ROOT::Fit::FitUtil::Evaluate< T >::EvalChi2Effective ( const IModelFunctionTempl< double > &  func,
const BinData data,
const double *  p,
unsigned int &  nPoints 
)
inlinestatic

Definition at line 1475 of file FitUtil.h.

1476  {
1477  return FitUtil::EvaluateChi2Effective(func, data, p, nPoints);
1478  }
double EvaluateChi2Effective(const IModelFunction &func, const BinData &data, const double *x, unsigned int &nPoints)

References ROOT::Fit::FitUtil::EvaluateChi2Effective().

Referenced by ROOT::Fit::Chi2FCN< DerivFunType, ModelFunType >::DoEval().

Here is the call graph for this function:

◆ EvalChi2Gradient()

template<class T >
static void ROOT::Fit::FitUtil::Evaluate< T >::EvalChi2Gradient ( const IModelFunctionTempl< double > &  func,
const BinData data,
const double *  p,
double *  g,
unsigned int &  nPoints,
ROOT::Fit::ExecutionPolicy  executionPolicy = ROOT::Fit::ExecutionPolicy::kSerial,
unsigned  nChunks = 0 
)
inlinestatic

Definition at line 1479 of file FitUtil.h.

1483  {
1484  FitUtil::EvaluateChi2Gradient(func, data, p, g, nPoints, executionPolicy, nChunks);
1485  }
void EvaluateChi2Gradient(const IModelFunction &func, const BinData &data, const double *x, double *grad, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy=ROOT::Fit::ExecutionPolicy::kSerial, unsigned nChunks=0)

References ROOT::Fit::FitUtil::EvaluateChi2Gradient().

Referenced by ROOT::Fit::Chi2FCN< DerivFunType, ModelFunType >::Gradient().

Here is the call graph for this function:

◆ EvalChi2Residual()

template<class T >
static double ROOT::Fit::FitUtil::Evaluate< T >::EvalChi2Residual ( const IModelFunctionTempl< double > &  func,
const BinData data,
const double *  p,
unsigned int  i,
double *  g = 0 
)
inlinestatic

Definition at line 1486 of file FitUtil.h.

1487  {
1488  return FitUtil::EvaluateChi2Residual(func, data, p, i, g);
1489  }
double EvaluateChi2Residual(const IModelFunction &func, const BinData &data, const double *x, unsigned int ipoint, double *g=0)

References ROOT::Fit::FitUtil::EvaluateChi2Residual().

Referenced by ROOT::Fit::Chi2FCN< DerivFunType, ModelFunType >::DataElement().

Here is the call graph for this function:

◆ EvalLogL()

template<class T >
static double ROOT::Fit::FitUtil::Evaluate< T >::EvalLogL ( const IModelFunctionTempl< double > &  func,
const UnBinData data,
const double *  p,
int  iWeight,
bool  extended,
unsigned int &  nPoints,
ROOT::Fit::ExecutionPolicy  executionPolicy,
unsigned  nChunks = 0 
)
inlinestatic

Definition at line 1461 of file FitUtil.h.

1464  {
1465  return FitUtil::EvaluateLogL(func, data, p, iWeight, extended, nPoints, executionPolicy, nChunks);
1466  }
double EvaluateLogL(const IModelFunction &func, const UnBinData &data, const double *p, int iWeight, bool extended, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy, unsigned nChunks=0)

References ROOT::Fit::FitUtil::EvaluateLogL().

Referenced by ROOT::Fit::LogLikelihoodFCN< DerivFunType, ModelFunType >::DoEval().

Here is the call graph for this function:

◆ EvalLogLGradient()

template<class T >
static void ROOT::Fit::FitUtil::Evaluate< T >::EvalLogLGradient ( const IModelFunctionTempl< double > &  func,
const UnBinData data,
const double *  p,
double *  g,
unsigned int &  nPoints,
ROOT::Fit::ExecutionPolicy  executionPolicy = ROOT::Fit::ExecutionPolicy::kSerial,
unsigned  nChunks = 0 
)
inlinestatic

Definition at line 1506 of file FitUtil.h.

1510  {
1511  FitUtil::EvaluateLogLGradient(func, data, p, g, nPoints, executionPolicy, nChunks);
1512  }
void EvaluateLogLGradient(const IModelFunction &func, const UnBinData &data, const double *x, double *grad, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy=ROOT::Fit::ExecutionPolicy::kSerial, unsigned nChunks=0)

References ROOT::Fit::FitUtil::EvaluateLogLGradient().

Referenced by ROOT::Fit::LogLikelihoodFCN< DerivFunType, ModelFunType >::Gradient().

Here is the call graph for this function:

◆ EvalPoissonBinPdf()

template<class T >
static double ROOT::Fit::FitUtil::Evaluate< T >::EvalPoissonBinPdf ( const IModelFunctionTempl< double > &  func,
const BinData data,
const double *  p,
unsigned int  i,
double *  g 
)
inlinestatic

evaluate the pdf (Poisson) contribution to the logl (return actually log of pdf) and its gradient

Definition at line 1493 of file FitUtil.h.

1493  {
1494  return FitUtil::EvaluatePoissonBinPdf(func, data, p, i, g);
1495  }
double EvaluatePoissonBinPdf(const IModelFunction &func, const BinData &data, const double *x, unsigned int ipoint, double *g=0)

References ROOT::Fit::FitUtil::EvaluatePoissonBinPdf().

Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::DataElement().

Here is the call graph for this function:

◆ EvalPoissonLogL()

template<class T >
static double ROOT::Fit::FitUtil::Evaluate< T >::EvalPoissonLogL ( const IModelFunctionTempl< double > &  func,
const BinData data,
const double *  p,
int  iWeight,
bool  extended,
unsigned int &  nPoints,
ROOT::Fit::ExecutionPolicy  executionPolicy,
unsigned  nChunks = 0 
)
inlinestatic

Definition at line 1468 of file FitUtil.h.

1471  {
1472  return FitUtil::EvaluatePoissonLogL(func, data, p, iWeight, extended, nPoints, executionPolicy, nChunks);
1473  }
double EvaluatePoissonLogL(const IModelFunction &func, const BinData &data, const double *x, int iWeight, bool extended, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy, unsigned nChunks=0)

References ROOT::Fit::FitUtil::EvaluatePoissonLogL().

Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::DoEval().

Here is the call graph for this function:

◆ EvalPoissonLogLGradient()

template<class T >
static void ROOT::Fit::FitUtil::Evaluate< T >::EvalPoissonLogLGradient ( const IModelFunctionTempl< double > &  func,
const BinData data,
const double *  p,
double *  g,
unsigned int &  nPoints,
ROOT::Fit::ExecutionPolicy  executionPolicy = ROOT::Fit::ExecutionPolicy::kSerial,
unsigned  nChunks = 0 
)
inlinestatic

Definition at line 1498 of file FitUtil.h.

1502  {
1503  FitUtil::EvaluatePoissonLogLGradient(func, data, p, g, nPoints, executionPolicy, nChunks);
1504  }
void EvaluatePoissonLogLGradient(const IModelFunction &func, const BinData &data, const double *x, double *grad, unsigned int &nPoints, ROOT::Fit::ExecutionPolicy executionPolicy=ROOT::Fit::ExecutionPolicy::kSerial, unsigned nChunks=0)

References ROOT::Fit::FitUtil::EvaluatePoissonLogLGradient().

Referenced by ROOT::Fit::PoissonLikelihoodFCN< DerivFunType, ModelFunType >::Gradient().

Here is the call graph for this function:

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