1 #ifndef HiggsAnalysis_CombinedLimit_Asymptotic_h
2 #define HiggsAnalysis_CombinedLimit_Asymptotic_h
11 #include "../interface/LimitAlgo.h"
12 #include "../interface/utils.h"
15 #include <RooAbsReal.h>
16 #include <RooArgSet.h>
17 #include <RooFitResult.h>
22 virtual void applyOptions(
const boost::program_options::variables_map &vm) ;
25 virtual bool run(RooWorkspace *
w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &
data,
double &
limit,
double &limitErr,
const double *hint);
26 virtual bool runLimit(RooWorkspace *w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &data,
double &limit,
double &limitErr,
const double *hint);
27 std::vector<std::pair<float,float> >
runLimitExpected(RooWorkspace *w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &data,
double &limit,
double &limitErr,
const double *hint) ;
31 virtual const std::string&
name()
const {
static std::string name_ =
"Asymptotic";
return name_; }
56 RooAbsData *
asimovDataset(RooWorkspace *w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &data);
57 double getCLs(RooRealVar &r,
double rVal,
bool getAlsoExpected=
false,
double *limit=0,
double *limitErr=0);
std::auto_ptr< RooArgSet > params_
static std::string minimizerAlgo_
static std::string minosAlgo_
RooArgSet snapGlobalObsAsimov
static int minimizerStrategy_
float findExpectedLimitFromCrossing(RooAbsReal &nll, RooRealVar *r, double rMin, double rMax, double nll0, double quantile)
virtual bool run(RooWorkspace *w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &data, double &limit, double &limitErr, const double *hint)
static float minimizerTolerance_
utils::CheapValueSnapshot fitFixD_
virtual void applyOptions(const boost::program_options::variables_map &vm)
utils::CheapValueSnapshot fitFixA_
std::auto_ptr< RooAbsReal > nllA_
static double rRelAccuracy_
RooAbsData * asimovDataset(RooWorkspace *w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &data)
static double rAbsAccuracy_
virtual void applyDefaultOptions()
utils::CheapValueSnapshot fitFreeA_
std::auto_ptr< RooAbsReal > nllD_
char data[epos_bytes_allocation]
virtual bool runLimit(RooWorkspace *w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &data, double &limit, double &limitErr, const double *hint)
utils::CheapValueSnapshot fitFreeD_
RooArgSet snapGlobalObsData
virtual const std::string & name() const
std::vector< std::pair< float, float > > runLimitExpected(RooWorkspace *w, RooStats::ModelConfig *mc_s, RooStats::ModelConfig *mc_b, RooAbsData &data, double &limit, double &limitErr, const double *hint)
double getCLs(RooRealVar &r, double rVal, bool getAlsoExpected=false, double *limit=0, double *limitErr=0)