1 #ifndef __BCINTEGRATE__H
2 #define __BCINTEGRATE__H
40 namespace BCCubaOptions
145 typedef void (*
tIntegralUpdater)(
const std::vector<double> &,
const int &,
double &,
double &);
245 int PrintAllMarginalized(
const char * file, std::string options1d=
"BTsiB3CS1D0pdf0Lmeanmode", std::string options2d=
"BTfB3CS1meangmode",
unsigned int hdiv=1,
unsigned int ndiv=1);
352 BCH1D*
GetSlice(
const BCParameter* parameter,
const std::vector<double> parameters = std::vector<double>(0),
int bins=0,
bool flag_norm=
true);
361 BCH1D*
GetSlice(
const char * name,
const std::vector<double> parameters = std::vector<double>(0),
int nbins=0,
bool flag_norm=
true)
372 BCH2D*
GetSlice(
const BCParameter* parameter1,
const BCParameter* parameter2,
const std::vector<double> parameters = std::vector<double>(0),
int bins=0,
bool flag_norm=
true);
382 BCH2D*
GetSlice(
const char* name1,
const char* name2,
const std::vector<double> parameters = std::vector<double>(0),
int nbins=0,
bool flag_norm=
true);
392 BCH2D*
GetSlice(
unsigned index1,
unsigned index2,
const std::vector<double> parameters = std::vector<double>(0),
int nbins=0,
bool flag_norm=
true);
567 virtual double Eval(
const std::vector<double> &x);
574 virtual double LogEval(
const std::vector<double> &x);
605 double EvaluatorMC(std::vector<double> &sums,
const std::vector<double> &point,
bool &accepted);
606 static void IntegralUpdaterMC(
const std::vector<double> &sums,
const int &nIterations,
double &integral,
double &absprecision);
615 static int CubaIntegrand(
const int * ndim,
const double xx[],
const int * ncomp,
double ff[],
void *userdata);
665 std::vector<double>
FindMode(std::vector<double> start = std::vector<double>());
752 static void FCNLikelihood(
int &npar,
double * grad,
double &fval,
double * par,
int flag);
833 void SetBestFitParameters(
const std::vector<double> &x,
const double &new_value,
double &old_value);
936 std::vector<double>
FindModeMinuit(std::vector<double> &mode, std::vector<double> &errors, std::vector<double> start = std::vector<double>(0),
int printlevel = 1);
945 std::vector<double>
FindModeMCMC(std::vector<double> &mode, std::vector<double> &errors);
957 std::vector<double>
FindModeSA(std::vector<double> &mode, std::vector<double> &errors, std::vector<double> start = std::vector<double>(0));