1 #ifndef HiggsAnalysis_CombinedLimit_ProfileLikelihood_h
2 #define HiggsAnalysis_CombinedLimit_ProfileLikelihood_h
11 #include "../interface/LimitAlgo.h"
13 class RooAbsPdf;
class RooRealVar;
class RooAbsData;
class RooArgSet;
18 virtual bool run(RooWorkspace *
w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &
data,
double &
limit,
double &limitErr,
const double *hint);
19 virtual const std::string &
name()
const {
20 static const std::string
name(
"ProfileLikelihood");
23 virtual void applyOptions(
const boost::program_options::variables_map &vm) ;
65 bool runSignificance(RooWorkspace *w, RooStats::ModelConfig *mc, RooAbsData &data,
double &limit,
double &limitErr);
66 bool runLimit(RooWorkspace *w, RooStats::ModelConfig *mc, RooAbsData &data,
double &limit,
double &limitErr);
68 double upperLimitWithMinos(RooAbsPdf &pdf, RooAbsData &data, RooRealVar &poi,
const RooArgSet *nuisances,
double tolerance,
double cl)
const ;
69 std::pair<double,double>
upperLimitBruteForce(RooAbsPdf &pdf, RooAbsData &data, RooRealVar &poi,
const RooArgSet *nuisances,
double tolerance,
double cl)
const ;
70 double significanceBruteForce(RooAbsPdf &pdf, RooAbsData &data, RooRealVar &poi,
const RooArgSet *nuisances,
double tolerance)
const ;
71 double significanceFromScan(RooAbsPdf &pdf, RooAbsData &data, RooRealVar &poi,
const RooArgSet *nuisances,
double tolerance,
int npoints)
const ;
bool runLimit(RooWorkspace *w, RooStats::ModelConfig *mc, RooAbsData &data, double &limit, double &limitErr)
static int maxOutliers_
Stop trying after finding N outliers.
static float signalForSignificance_
bool runSignificance(RooWorkspace *w, RooStats::ModelConfig *mc, RooAbsData &data, double &limit, double &limitErr)
std::string minimizerAlgoBackup
static std::string static float minimizerToleranceForBF_
static float maxOutlierFraction_
Ignore up to this fraction of results if they're too far from the median.
std::string minimizerTypeBackup
double significanceFromScan(RooAbsPdf &pdf, RooAbsData &data, RooRealVar &poi, const RooArgSet *nuisances, double tolerance, int npoints) const
virtual void applyOptions(const boost::program_options::variables_map &vm)
static int maxTries_
trying up to M times from different points
static bool preFit_
Try first a plain fit.
virtual bool run(RooWorkspace *w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &data, double &limit, double &limitErr, const double *hint)
double upperLimitWithMinos(RooAbsPdf &pdf, RooAbsData &data, RooRealVar &poi, const RooArgSet *nuisances, double tolerance, double cl) const
double minimizerTollBackup
std::pair< double, double > upperLimitBruteForce(RooAbsPdf &pdf, RooAbsData &data, RooRealVar &poi, const RooArgSet *nuisances, double tolerance, double cl) const
virtual const std::string & name() const
static float maxRelDeviation_
maximum relative deviation of the different points from the median to accept
MinimizerSentry(const std::string &algo, double tolerance)
double significanceBruteForce(RooAbsPdf &pdf, RooAbsData &data, RooRealVar &poi, const RooArgSet *nuisances, double tolerance) const
Setup Minimizer configuration on creation, reset the previous one on destruction. ...
static std::string bfAlgo_
static std::string minimizerAlgoForBF_
static std::string static float minimizerTolerance_
static std::string minimizerAlgo_
char data[epos_bytes_allocation]
static int tries_
compute the limit N times
static bool reportPVal_
Report p-value instead of significance.