28 #include "../../BAT/BCModel.h"
53 BCMTF(
const char * name);
135 int SetData(
const char * channelname, TH1D hist,
double minimum=-1,
double maximum=-1);
144 int SetTemplate(
const char * channelname,
const char * processname, TH1D hist,
double efficiency = 1.,
double norm = 1.);
160 int SetTemplate(
const char * channelname,
const char * processname, std::vector<TF1 *> * funccont,
int nbins,
double efficiency = 1.);
184 int SetSystematicVariation(
const char * channelname,
const char * processname,
const char * systematicname,
double variation_up,
double variation_down);
198 int SetSystematicVariation(
const char * channelname,
const char * processname,
const char * systematicname, TH1D hist_up, TH1D hist_down);
214 int SetSystematicVariation(
const char * channelname,
const char * processname,
const char * systematicname, TH1D hist, TH1D hist_up, TH1D hist_down);
245 int AddProcess(
const char * name,
double nmin = 0.,
double nmax = 1.,
int color = -1,
int fillstyle = -1,
int linestyle = -1);
253 int AddSystematic(
const char * name,
double min = -5.,
double max = 5.);
261 double Expectation(
int channelindex,
int binindex,
const std::vector<double> & parameters);
271 double ExpectationFunction(
int parindex,
int channelindex,
int processindex,
const std::vector<double> & parameters);
281 double Efficiency(
int channelindex,
int processindex,
int binindex,
const std::vector<double> & parameters);
292 double Probability(
int channelindex,
int processindex,
int binindex,
const std::vector<double> & parameters);
300 double CalculateChi2(
int channelindex,
const std::vector<double> & parameters);
307 double CalculateChi2(
const std::vector<double> & parameters);
315 double CalculateCash(
int channelindex,
const std::vector<double> & parameters);
322 double CalculateCash(
const std::vector<double> & parameters);
331 double CalculatePValue(
int channelindex,
const std::vector<double> & parameters);
352 int PrintSummary(
const char * filename =
"summary.txt");
370 int PrintStack(
int channelindex,
const std::vector<double> & parameters,
const char * filename =
"stack.pdf",
const char * options =
"e1b0stack");
380 int PrintStack(
const char * channelname,
const std::vector<double> & parameters,
const char * filename =
"stack.pdf",
const char * options =
"e1b0stack");
392 double LogLikelihood(
const std::vector<double> & parameters);