NeymanConstruction is a concrete implementation of the NeymanConstruction interface that, as the name suggests, performs a NeymanConstruction.
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 incoded 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. Common configurations, such as the Feldman-Cousins approach, can be enforced by other light weight classes.
The Neyman Construction considers every point in the parameter space independently, no assumptions are made that the interval is connected or of a particular shape. As a result, the PointSetInterval class is used to represent the result. The user indicate which points in the parameter space to perform the construction by providing a PointSetInterval instance with the desired points.
This class is fairly light weight, because the choice of parameter points to be considered is factorized and so is the creation of the sampling distribution of the test statistic (which is done by a concrete class implementing the DistributionCreator interface). As a result, this class basically just drives the construction by:
Definition at line 35 of file NeymanConstruction.h.
Public Member Functions | |
NeymanConstruction (RooAbsData &data, ModelConfig &model) | |
NeymanConstruction();. More... | |
virtual | ~NeymanConstruction () |
default constructor if(fOwnsWorkspace && fWS) delete fWS; if(fConfBelt) delete fConfBelt; More... | |
void | AdditionalNToysFactor (double fact) |
give user ability to ask for more toys More... | |
virtual Double_t | ConfidenceLevel () const |
Get the Confidence level for the test. More... | |
void | CreateConfBelt (bool flag=true) |
should create confidence belt More... | |
ConfidenceBelt * | GetConfidenceBelt () |
get confidence belt More... | |
virtual PointSetInterval * | GetInterval () const |
Main interface to get a ConfInterval (will be a PointSetInterval) More... | |
TestStatSampler * | GetTestStatSampler (void) |
Returns instance of TestStatSampler. More... | |
void | SaveBeltToFile (bool flag=true) |
save the confidence belt to a file More... | |
virtual void | SetConfidenceLevel (Double_t cl) |
set the confidence level for the interval (eg. 0.95 for a 95% Confidence Interval) More... | |
virtual void | SetData (RooAbsData &data) |
Set the DataSet. More... | |
void | SetLeftSideTailFraction (Double_t leftSideFraction=0.) |
fLeftSideTailFraction*fSize defines lower edge of acceptance region. More... | |
virtual void | SetModel (const ModelConfig &model) |
Set ModelConfig. More... | |
virtual void | SetNuisanceParameters (const RooArgSet &) |
specify the nuisance parameters (eg. the rest of the parameters) More... | |
void | SetParameterPointsToTest (RooAbsData &pointsToTest) |
User-defined set of points to test. More... | |
virtual void | SetParameters (const RooArgSet &) |
specify the parameters of interest in the interval More... | |
virtual void | SetPdf (RooAbsPdf &) |
Set the Pdf, add to the the workspace if not already there. More... | |
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) More... | |
void | SetTestStatSampler (TestStatSampler &sampler) |
in addition to interface we also need: Set the TestStatSampler (eg. More... | |
virtual Double_t | Size () const |
This class can make regularly spaced scans based on range stored in RooRealVars. More... | |
void | UseAdaptiveSampling (bool flag=true) |
adaptive sampling algorithm to speed up interval calculation More... | |
Public Member Functions inherited from RooStats::IntervalCalculator | |
virtual | ~IntervalCalculator () |
virtual Double_t | ConfidenceLevel () const =0 |
Get the Confidence level for the test. More... | |
virtual ConfInterval * | GetInterval () const =0 |
Main interface to get a ConfInterval, pure virtual. More... | |
virtual void | SetConfidenceLevel (Double_t cl)=0 |
set the confidence level for the interval (e.g. 0.95 for a 95% Confidence Interval) More... | |
virtual void | SetData (RooAbsData &)=0 |
Set the DataSet ( add to the the workspace if not already there ?) More... | |
virtual void | SetModel (const ModelConfig &)=0 |
Set the Model. More... | |
virtual void | SetTestSize (Double_t size)=0 |
set the size of the test (rate of Type I error) ( e.g. 0.05 for a 95% Confidence Interval) More... | |
virtual Double_t | Size () const =0 |
Get the size of the test (eg. rate of Type I error) More... | |
Private Attributes | |
bool | fAdaptiveSampling |
Double_t | fAdditionalNToysFactor |
ConfidenceBelt * | fConfBelt |
bool | fCreateBelt |
RooAbsData & | fData |
size of the test (eg. specified rate of Type I error) More... | |
Double_t | fLeftSideFraction |
ModelConfig & | fModel |
data set More... | |
RooAbsData * | fPointsToTest |
bool | fSaveBeltToFile |
Double_t | fSize |
TestStatSampler * | fTestStatSampler |
#include <RooStats/NeymanConstruction.h>
NeymanConstruction::NeymanConstruction | ( | RooAbsData & | data, |
ModelConfig & | model | ||
) |
|
virtual |
default constructor if(fOwnsWorkspace && fWS) delete fWS; if(fConfBelt) delete fConfBelt;
Definition at line 105 of file NeymanConstruction.cxx.
|
inline |
give user ability to ask for more toys
Definition at line 106 of file NeymanConstruction.h.
|
inlinevirtual |
Get the Confidence level for the test.
Implements RooStats::IntervalCalculator.
Definition at line 71 of file NeymanConstruction.h.
|
inline |
should create confidence belt
Definition at line 114 of file NeymanConstruction.h.
|
inline |
get confidence belt
Definition at line 100 of file NeymanConstruction.h.
|
virtual |
Main interface to get a ConfInterval (will be a PointSetInterval)
Main interface to get a RooStats::ConfInterval.
It constructs a RooStats::SetInterval.
Implements RooStats::IntervalCalculator.
Definition at line 112 of file NeymanConstruction.cxx.
|
inline |
Returns instance of TestStatSampler.
Use to change properties of TestStatSampler, e.g. GetTestStatSampler.SetTestSize(Double_t size);
Definition at line 118 of file NeymanConstruction.h.
|
inline |
save the confidence belt to a file
Definition at line 109 of file NeymanConstruction.h.
set the confidence level for the interval (eg. 0.95 for a 95% Confidence Interval)
Implements RooStats::IntervalCalculator.
Definition at line 97 of file NeymanConstruction.h.
|
inlinevirtual |
Set the DataSet.
Implements RooStats::IntervalCalculator.
Definition at line 77 of file NeymanConstruction.h.
fLeftSideTailFraction*fSize defines lower edge of acceptance region.
Unified limits use 0, central limits use 0.5, for upper/lower limits it is 0/1 depends on sign of test statistic w.r.t. parameter
Definition at line 53 of file NeymanConstruction.h.
|
inlinevirtual |
Set ModelConfig.
Implements RooStats::IntervalCalculator.
Definition at line 74 of file NeymanConstruction.h.
|
inlinevirtual |
specify the nuisance parameters (eg. the rest of the parameters)
Definition at line 90 of file NeymanConstruction.h.
|
inline |
User-defined set of points to test.
Definition at line 56 of file NeymanConstruction.h.
specify the parameters of interest in the interval
Definition at line 85 of file NeymanConstruction.h.
Set the Pdf, add to the the workspace if not already there.
Definition at line 80 of file NeymanConstruction.h.
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 95 of file NeymanConstruction.h.
|
inline |
in addition to interface we also need: Set the TestStatSampler (eg.
ToyMC or FFT, includes choice of TestStatistic)
Definition at line 49 of file NeymanConstruction.h.
|
inlinevirtual |
This class can make regularly spaced scans based on range stored in RooRealVars.
Choose number of steps for a rastor scan (common for each dimension) void SetNumSteps(Int_t); This class can make regularly spaced scans based on range stored in RooRealVars. Choose number of steps for a rastor scan (specific for each dimension) void SetNumSteps(std::map<RooAbsArg, Int_t>) Get the size of the test (eg. rate of Type I error)
Implements RooStats::IntervalCalculator.
Definition at line 68 of file NeymanConstruction.h.
|
inline |
adaptive sampling algorithm to speed up interval calculation
Definition at line 103 of file NeymanConstruction.h.
|
private |
Definition at line 136 of file NeymanConstruction.h.
|
private |
Definition at line 137 of file NeymanConstruction.h.
|
private |
Definition at line 135 of file NeymanConstruction.h.
|
private |
Definition at line 139 of file NeymanConstruction.h.
|
private |
size of the test (eg. specified rate of Type I error)
Definition at line 124 of file NeymanConstruction.h.
|
private |
Definition at line 134 of file NeymanConstruction.h.
|
private |
data set
Definition at line 125 of file NeymanConstruction.h.
|
private |
Definition at line 133 of file NeymanConstruction.h.
|
private |
Definition at line 138 of file NeymanConstruction.h.
|
private |
Definition at line 123 of file NeymanConstruction.h.
|
private |
Definition at line 132 of file NeymanConstruction.h.