61 lines
1.9 KiB
C++
61 lines
1.9 KiB
C++
/**
|
|
* @file likelihoodscan.hh
|
|
* @author Christoph Langenbruch Renata Kopecna
|
|
* @date 2020-01-12
|
|
*
|
|
*/
|
|
|
|
#ifndef LIKELIHOODSCAN_H
|
|
#define LIKELIHOODSCAN_H
|
|
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
namespace fcnc {
|
|
//Forward decalrations
|
|
class parameters;
|
|
class pdf;
|
|
class event;
|
|
class options;
|
|
|
|
class likelihoodscan;
|
|
|
|
class likelihoodscan {
|
|
private:
|
|
options* opts;
|
|
int from, to;
|
|
public:
|
|
///constructor
|
|
likelihoodscan(options* o):
|
|
opts(o),
|
|
from(-1),
|
|
to(-1)
|
|
{};
|
|
///destructor
|
|
~likelihoodscan(){};
|
|
|
|
///one-dimensional likelihoodscan
|
|
bool scan_1d(std::string parname, unsigned int nsteps, double parmin, double parmax,
|
|
std::vector<pdf*> probs, std::vector<parameters*> params,
|
|
std::vector<std::vector<event> *> events, std::vector<std::string> common_par,
|
|
unsigned int bin=0, int from=-1, int to=-1);
|
|
bool scan_1d(std::string parname, unsigned int nsteps, double parmin, double parmax,
|
|
pdf* prob, parameters* params, std::vector<event> * events,
|
|
unsigned int bin=0, int from=-1, int to=-1);
|
|
|
|
///two-dimensional likelihood scan
|
|
bool scan_2d(std::string parxname, unsigned int nstepsx, double parxmin, double parxmax,
|
|
std::string paryname, unsigned int nstepsy, double parymin, double parymax,
|
|
std::vector<pdf*> probs, std::vector<parameters*> params,
|
|
std::vector<std::vector<event> *> events, std::vector<std::string> common_par,
|
|
unsigned int bin=0, int from=-1, int to=-1);
|
|
bool scan_2d(std::string parxname, unsigned int nstepsx, double parxmin, double parxmax,
|
|
std::string paryname, unsigned int nstepsy, double parymin, double parymax,
|
|
pdf* prob, parameters* params, std::vector<event> * events,
|
|
unsigned int bin=0, int from=-1, int to=-1);
|
|
};
|
|
|
|
}//end namespace
|
|
|
|
#endif
|