13 #ifndef RooStats_FeldmanCousins
17 #ifndef RooStats_RooStatsUtils
21 #ifndef RooStats_PointSetInterval
42 using namespace RooFit;
43 using namespace RooStats;
50 FeldmanCousins::FeldmanCousins() :
55 fAdaptiveSampling(false),
58 fDoProfileConstruction(true),
59 fSaveBeltToFile(false),
62 // default constructor
63 // fWS = new RooWorkspace("FeldmanCousinsWS");
64 // fOwnsWorkspace = true;
81 fAdaptiveSampling(
false),
82 fAdditionalNToysFactor(1.),
85 fDoProfileConstruction(true),
86 fSaveBeltToFile(
false),
165 ooccoutP(&
fModel,
Generation) <<
"FeldmanCousins: Model has nuisance parameters, will do profile construction" << endl;
170 while ((myarg2 = dynamic_cast<RooRealVar*>(it2.
Next()))) {
191 "profileConstruction",
197 *parameters = *parameterScan->
get(i);
199 profileConstructionPoints->
add(*parameters);
215 while ((myarg = dynamic_cast<RooRealVar*>(it.
Next()))) {
Double_t fAdditionalNToysFactor
virtual RooAbsReal * createNLL(RooAbsData &data, const RooLinkedList &cmdList)
Construct representation of -log(L) of PDFwith given dataset.
ModelConfig is a simple class that holds configuration information specifying how a model should be u...
RooAbsPdf * GetPdf() const
get model PDF (return NULL if pdf has not been specified or does not exist)
ConfidenceBelt * GetConfidenceBelt()
get confidence belt
virtual void SetTestSize(Double_t size)
set the size of the test (rate of Type I error) ( Eg. 0.05 for a 95% Confidence Interval) ...
RooCmdArg CloneData(Bool_t flag)
Bool_t equals(const RooAbsCollection &otherColl) const
Check if this and other collection have identically named contents.
TestStatSampler is an interface class for a tools which produce RooStats SamplingDistributions.
void GuessObsAndNuisance(const RooAbsData &data)
guesses Observables and ParametersOfInterest if not already set
virtual void SetNEventsPerToy(const Int_t nevents)
static RooMsgService & instance()
Return reference to singleton instance.
ClassImp(TIterator) Bool_t TIterator return false
Compare two iterator objects.
const RooArgSet * GetNuisanceParameters() const
get RooArgSet containing the nuisance parameters (return NULL if not existing)
void SetParameterPointsToTest(RooAbsData &pointsToTest)
User-defined set of points to test.
RooDataSet is a container class to hold N-dimensional binned data.
void AdditionalNToysFactor(double fact)
give user ability to ask for more toys
TIterator * createIterator(Bool_t dir=kIterForward) const
void CreateTestStatSampler() const
initializes fTestStatSampler data member (mutable)
Double_t getVal(const RooArgSet *set=0) const
virtual ~FeldmanCousins()
destructor if(fOwnsWorkspace && fWS) delete fWS;
void setBins(Int_t nBins, const char *name=0)
RooRealVar represents a fundamental (non-derived) real valued object.
virtual const RooArgSet * get() const
RooFit::MsgLevel globalKillBelow() const
virtual Int_t numEntries() const
Bool_t fDoProfileConstruction
ToyMCSampler * fTestStatSampler
void setGlobalKillBelow(RooFit::MsgLevel level)
virtual void SetData(RooAbsData &data)
Set the DataSet.
virtual PointSetInterval * GetInterval() const
Main interface to get a ConfInterval (will be a PointSetInterval)
RooAbsData is the common abstract base class for binned and unbinned datasets.
ProfileLikelihoodTestStat is an implementation of the TestStatistic interface that calculates the pro...
ToyMCSampler is an implementation of the TestStatSampler interface.
RooDataSet is a container class to hold unbinned data.
virtual void add(const RooArgSet &row, Double_t weight=1.0, Double_t weightError=0)
Add a data point, with its coordinates specified in the 'data' argset, to the data set...
The FeldmanCousins class (like the Feldman-Cousins technique) is essentially a specific configuration...
const RooArgSet * GetObservables() const
get RooArgSet for observables (return NULL if not existing)
void SetTestStatSampler(TestStatSampler &sampler)
in addition to interface we also need: Set the TestStatSampler (eg.
RooAbsData * fPointsToTest
TestStatSampler * GetTestStatSampler() const
Returns instance of TestStatSampler.
void UseAdaptiveSampling(bool flag=true)
adaptive sampling algorithm to speed up interval caculation
ClassImp(RooStats::FeldmanCousins)
PointSetInterval is a concrete implementation of the ConfInterval interface.
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
virtual void SetObservables(const RooArgSet &o)
void CreateConfBelt(bool flag=true)
should create confidence belt
virtual PointSetInterval * GetInterval() const
Main interface to get a ConfInterval (will be a PointSetInterval)
NeymanConstruction is a concrete implementation of the NeymanConstruction interface that...
virtual Int_t numEntries() const
Return the number of bins.
RooAbsPdf is the abstract interface for all probability density functions The class provides hybrid a...
void SetLeftSideTailFraction(Double_t leftSideFraction=0.)
fLeftSideTailFraction*fSize defines lower edge of acceptance region.
virtual RooAbsReal * createProfile(const RooArgSet ¶msOfInterest)
Create a RooProfileLL object that eliminates all nuisance parameters in the present function...
void SaveBeltToFile(bool flag=true)
save teh confidence belt to a file
virtual void SetModel(const ModelConfig &)
set the model
const RooArgSet * GetParametersOfInterest() const
get RooArgSet containing the parameter of interest (return NULL if not existing)
ConfidenceBelt * fConfBelt
void CreateParameterPoints() const
initializes fPointsToTest data member (mutable)
virtual Bool_t add(const RooAbsArg &var, Bool_t silent=kFALSE)
Add element to non-owning set.