The FeldmanCousins class (like the Feldman-Cousins technique) is essentially a specific configuration of the more general NeymanConstruction.
It is a concrete implementation of the IntervalCalculator interface that, which uses the NeymanConstruction in a particular way. As the name suggests, it returns a ConfidenceInterval. In particular, it produces a RooStats::PointSetInterval, which is a concrete implementation of the ConfInterval interface.
The Neyman Construction is not a uniquely defined statistical technique, it requires that one specify an ordering rule or ordering principle, which is usually encoded by choosing a specific test statistic and limits of integration (corresponding to upper/lower/central limits). As a result, this class must be configured with the corresponding information before it can produce an interval.
In the case of the Feldman-Cousins approach, the ordering principle is the likelihood ratio – motivated by the Neyman-Pearson lemma. When nuisance parameters are involved, the profile likelihood ratio is the natural generalization. One may either choose to perform the construction over the full space of the nuisance parameters, or restrict the nuisance parameters to their conditional MLE (eg. profiled values).
Definition at line 33 of file FeldmanCousins.h.
Public Member Functions | |
FeldmanCousins (RooAbsData &data, ModelConfig &model) | |
Common constructor. | |
~FeldmanCousins () override | |
destructor | |
void | AdditionalNToysFactor (double fact) |
double | ConfidenceLevel () const override |
Get the Confidence level for the test. | |
void | CreateConfBelt (bool flag=true) |
void | FluctuateNumDataEntries (bool flag=true) |
ConfidenceBelt * | GetConfidenceBelt () |
Get the confidence belt. This requires that CreateConfBelt() has been set. | |
PointSetInterval * | GetInterval () const override |
Main interface to get a ConfInterval (will be a PointSetInterval) | |
RooAbsData * | GetPointsToScan () |
TestStatSampler * | GetTestStatSampler () const |
Returns instance of TestStatSampler. | |
TClass * | IsA () const override |
void | SaveBeltToFile (bool flag=true) |
void | SetConfidenceLevel (double cl) override |
set the confidence level for the interval (eg. 0.95 for a 95% Confidence Interval) | |
void | SetData (RooAbsData &) override |
Set the DataSet. | |
void | SetModel (const ModelConfig &) override |
set the model | |
void | SetNBins (Int_t bins) |
void | SetParameterPointsToTest (RooAbsData &pointsToTest) |
User-defined set of points to test. | |
void | SetPOIPointsToTest (RooAbsData &poiToTest) |
User-defined set of points to test. | |
void | SetTestSize (double size) override |
set the size of the test (rate of Type I error) ( Eg. 0.05 for a 95% Confidence Interval) | |
double | Size () const override |
Get the size of the test (eg. rate of Type I error) | |
void | Streamer (TBuffer &) override |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
void | UseAdaptiveSampling (bool flag=true) |
Public Member Functions inherited from RooStats::IntervalCalculator | |
virtual | ~IntervalCalculator () |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Static Public Member Functions | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from RooStats::IntervalCalculator | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Private Member Functions | |
void | CreateParameterPoints () const |
initializes fPointsToTest data member (mutable) | |
void | CreateTestStatSampler () const |
initializes fTestStatSampler data member (mutable) | |
Private Attributes | |
bool | fAdaptiveSampling |
controls use of adaptive sampling algorithm | |
double | fAdditionalNToysFactor |
give user ability to ask for more toys | |
ConfidenceBelt * | fConfBelt |
bool | fCreateBelt |
controls use if ConfidenceBelt should be saved to a TFile | |
RooAbsData & | fData |
data set | |
bool | fDoProfileConstruction |
instead of full construction over nuisance parameters, do profile | |
bool | fFluctuateData |
tell ToyMCSampler to fluctuate number of entries in dataset | |
ModelConfig & | fModel |
Int_t | fNbins |
number of samples per variable | |
RooAbsData * | fPointsToTest |
points to perform the construction | |
RooAbsData * | fPOIToTest |
value of POI points to perform the construction | |
bool | fSaveBeltToFile |
controls use if ConfidenceBelt should be saved to a TFile | |
double | fSize |
size of the test (eg. specified rate of Type I error) | |
ToyMCSampler * | fTestStatSampler |
the test statistic sampler | |
#include <RooStats/FeldmanCousins.h>
FeldmanCousins::FeldmanCousins | ( | RooAbsData & | data, |
ModelConfig & | model | ||
) |
|
override |
destructor
Definition at line 86 of file FeldmanCousins.cxx.
|
inline |
Definition at line 81 of file FeldmanCousins.h.
|
static |
|
inlinestaticconstexpr |
Definition at line 123 of file FeldmanCousins.h.
|
inlineoverridevirtual |
Get the Confidence level for the test.
Implements RooStats::IntervalCalculator.
Definition at line 48 of file FeldmanCousins.h.
|
inline |
Definition at line 91 of file FeldmanCousins.h.
|
private |
initializes fPointsToTest data member (mutable)
specify the parameter points to perform the construction.
allow ability to profile on some nuisance parameters
Definition at line 138 of file FeldmanCousins.cxx.
|
private |
initializes fTestStatSampler data member (mutable)
specify the Test Statistic and create a ToyMC test statistic sampler
Definition at line 110 of file FeldmanCousins.cxx.
|
inlinestatic |
Definition at line 123 of file FeldmanCousins.h.
|
inline |
Definition at line 85 of file FeldmanCousins.h.
|
inline |
Get the confidence belt. This requires that CreateConfBelt() has been set.
Definition at line 77 of file FeldmanCousins.h.
|
overridevirtual |
Main interface to get a ConfInterval (will be a PointSetInterval)
Main interface to get a RooStats::ConfInterval.
It constructs a RooStats::PointSetInterval.
Implements RooStats::IntervalCalculator.
Definition at line 216 of file FeldmanCousins.cxx.
|
inline |
Definition at line 71 of file FeldmanCousins.h.
TestStatSampler * FeldmanCousins::GetTestStatSampler | ( | ) | const |
Returns instance of TestStatSampler.
Use to change properties of TestStatSampler, e.g. GetTestStatSampler.SetTestSize(double size);
Definition at line 101 of file FeldmanCousins.cxx.
|
inlineoverridevirtual |
Reimplemented from RooStats::IntervalCalculator.
Definition at line 123 of file FeldmanCousins.h.
|
inline |
Definition at line 87 of file FeldmanCousins.h.
|
inlineoverridevirtual |
set the confidence level for the interval (eg. 0.95 for a 95% Confidence Interval)
Implements RooStats::IntervalCalculator.
Definition at line 67 of file FeldmanCousins.h.
|
inlineoverridevirtual |
Set the DataSet.
Implements RooStats::IntervalCalculator.
Definition at line 50 of file FeldmanCousins.h.
|
overridevirtual |
set the model
Implements RooStats::IntervalCalculator.
Definition at line 95 of file FeldmanCousins.cxx.
|
inline |
Definition at line 83 of file FeldmanCousins.h.
|
inline |
User-defined set of points to test.
Definition at line 55 of file FeldmanCousins.h.
|
inline |
User-defined set of points to test.
Definition at line 60 of file FeldmanCousins.h.
|
inlineoverridevirtual |
set the size of the test (rate of Type I error) ( Eg. 0.05 for a 95% Confidence Interval)
Implements RooStats::IntervalCalculator.
Definition at line 65 of file FeldmanCousins.h.
|
inlineoverridevirtual |
Get the size of the test (eg. rate of Type I error)
Implements RooStats::IntervalCalculator.
Definition at line 46 of file FeldmanCousins.h.
|
overridevirtual |
Reimplemented from RooStats::IntervalCalculator.
|
inline |
Definition at line 123 of file FeldmanCousins.h.
|
inline |
Definition at line 79 of file FeldmanCousins.h.
|
private |
controls use of adaptive sampling algorithm
Definition at line 114 of file FeldmanCousins.h.
|
private |
give user ability to ask for more toys
Definition at line 115 of file FeldmanCousins.h.
|
mutableprivate |
Definition at line 113 of file FeldmanCousins.h.
|
private |
controls use if ConfidenceBelt should be saved to a TFile
Definition at line 120 of file FeldmanCousins.h.
|
private |
data set
Definition at line 108 of file FeldmanCousins.h.
|
private |
instead of full construction over nuisance parameters, do profile
Definition at line 118 of file FeldmanCousins.h.
|
private |
tell ToyMCSampler to fluctuate number of entries in dataset
Definition at line 117 of file FeldmanCousins.h.
|
private |
Definition at line 107 of file FeldmanCousins.h.
|
private |
number of samples per variable
Definition at line 116 of file FeldmanCousins.h.
|
mutableprivate |
points to perform the construction
Definition at line 111 of file FeldmanCousins.h.
|
mutableprivate |
value of POI points to perform the construction
Definition at line 112 of file FeldmanCousins.h.
|
private |
controls use if ConfidenceBelt should be saved to a TFile
Definition at line 119 of file FeldmanCousins.h.
|
private |
size of the test (eg. specified rate of Type I error)
Definition at line 106 of file FeldmanCousins.h.
|
mutableprivate |
the test statistic sampler
Definition at line 110 of file FeldmanCousins.h.