ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes | List of all members
RooStats::NeymanConstruction Class Reference

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 constrution 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:

using a DistributionCreator to create the SamplingDistribution of a user-defined test statistic for each parameter point of interest,
defining the acceptance region in the data by finding the thresholds on the test statistic such that the integral of the sampling distribution is of the appropriate size and consistent with the limits of integration (eg. upper/lower/central limits),
and finally updating the PointSetInterval based on whether the value of the test statistic evaluated on the data are in the acceptance region.

Definition at line 58 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...
 
virtual PointSetIntervalGetInterval () const
 Main interface to get a ConfInterval (will be a PointSetInterval) More...
 
void SetTestStatSampler (TestStatSampler &sampler)
 in addition to interface we also need: Set the TestStatSampler (eg. More...
 
void SetLeftSideTailFraction (Double_t leftSideFraction=0.)
 fLeftSideTailFraction*fSize defines lower edge of acceptance region. More...
 
void SetParameterPointsToTest (RooAbsData &pointsToTest)
 User-defined set of points to test. More...
 
virtual Double_t Size () const
 This class can make regularly spaced scans based on range stored in RooRealVars. More...
 
virtual Double_t ConfidenceLevel () const
 Get the Confidence level for the test. More...
 
virtual void SetModel (const ModelConfig &model)
 Set ModelConfig. More...
 
virtual void SetData (RooAbsData &data)
 Set the DataSet. More...
 
virtual void SetPdf (RooAbsPdf &)
 Set the Pdf, add to the the workspace if not already there. More...
 
virtual void SetParameters (const RooArgSet &)
 specify the parameters of interest in the interval More...
 
virtual void SetNuisanceParameters (const RooArgSet &)
 specify the nuisance parameters (eg. the rest of the parameters) 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...
 
virtual void SetConfidenceLevel (Double_t cl)
 set the confidence level for the interval (eg. 0.95 for a 95% Confidence Interval) More...
 
ConfidenceBeltGetConfidenceBelt ()
 get confidence belt More...
 
void UseAdaptiveSampling (bool flag=true)
 adaptive sampling algorithm to speed up interval caculation More...
 
void AdditionalNToysFactor (double fact)
 give user ability to ask for more toys More...
 
void SaveBeltToFile (bool flag=true)
 save teh confidence belt to a file More...
 
void CreateConfBelt (bool flag=true)
 should create confidence belt More...
 
TestStatSamplerGetTestStatSampler (void)
 Returns instance of TestStatSampler. More...
 
- Public Member Functions inherited from RooStats::IntervalCalculator
virtual ~IntervalCalculator ()
 

Private Attributes

Double_t fSize
 
RooAbsDatafData
 size of the test (eg. specified rate of Type I error) More...
 
ModelConfigfModel
 data set More...
 
TestStatSamplerfTestStatSampler
 
RooAbsDatafPointsToTest
 
Double_t fLeftSideFraction
 
ConfidenceBeltfConfBelt
 
bool fAdaptiveSampling
 
Double_t fAdditionalNToysFactor
 
bool fSaveBeltToFile
 
bool fCreateBelt
 

#include <RooStats/NeymanConstruction.h>

Inheritance diagram for RooStats::NeymanConstruction:
[legend]

Constructor & Destructor Documentation

NeymanConstruction::NeymanConstruction ( RooAbsData data,
ModelConfig model 
)

NeymanConstruction();.

Definition at line 52 of file NeymanConstruction.cxx.

NeymanConstruction::~NeymanConstruction ( )
virtual

default constructor if(fOwnsWorkspace && fWS) delete fWS; if(fConfBelt) delete fConfBelt;

Definition at line 78 of file NeymanConstruction.cxx.

Member Function Documentation

void RooStats::NeymanConstruction::AdditionalNToysFactor ( double  fact)
inline

give user ability to ask for more toys

Definition at line 129 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

virtual Double_t RooStats::NeymanConstruction::ConfidenceLevel ( ) const
inlinevirtual

Get the Confidence level for the test.

Implements RooStats::IntervalCalculator.

Definition at line 94 of file NeymanConstruction.h.

void RooStats::NeymanConstruction::CreateConfBelt ( bool  flag = true)
inline

should create confidence belt

Definition at line 137 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

ConfidenceBelt* RooStats::NeymanConstruction::GetConfidenceBelt ( )
inline

get confidence belt

Definition at line 123 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

PointSetInterval * NeymanConstruction::GetInterval ( ) const
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 85 of file NeymanConstruction.cxx.

Referenced by RooStats::FeldmanCousins::GetInterval().

TestStatSampler* RooStats::NeymanConstruction::GetTestStatSampler ( void  )
inline

Returns instance of TestStatSampler.

Use to change properties of TestStatSampler, e.g. GetTestStatSampler.SetTestSize(Double_t size);

Definition at line 141 of file NeymanConstruction.h.

void RooStats::NeymanConstruction::SaveBeltToFile ( bool  flag = true)
inline

save teh confidence belt to a file

Definition at line 132 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

virtual void RooStats::NeymanConstruction::SetConfidenceLevel ( Double_t  cl)
inlinevirtual

set the confidence level for the interval (eg. 0.95 for a 95% Confidence Interval)

Implements RooStats::IntervalCalculator.

Definition at line 120 of file NeymanConstruction.h.

virtual void RooStats::NeymanConstruction::SetData ( RooAbsData data)
inlinevirtual

Set the DataSet.

Implements RooStats::IntervalCalculator.

Definition at line 100 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

void RooStats::NeymanConstruction::SetLeftSideTailFraction ( Double_t  leftSideFraction = 0.)
inline

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 76 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

virtual void RooStats::NeymanConstruction::SetModel ( const ModelConfig model)
inlinevirtual

Set ModelConfig.

Implements RooStats::IntervalCalculator.

Definition at line 97 of file NeymanConstruction.h.

virtual void RooStats::NeymanConstruction::SetNuisanceParameters ( const RooArgSet )
inlinevirtual

specify the nuisance parameters (eg. the rest of the parameters)

Definition at line 113 of file NeymanConstruction.h.

void RooStats::NeymanConstruction::SetParameterPointsToTest ( RooAbsData pointsToTest)
inline

User-defined set of points to test.

Definition at line 79 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

virtual void RooStats::NeymanConstruction::SetParameters ( const RooArgSet )
inlinevirtual

specify the parameters of interest in the interval

Definition at line 108 of file NeymanConstruction.h.

virtual void RooStats::NeymanConstruction::SetPdf ( RooAbsPdf )
inlinevirtual

Set the Pdf, add to the the workspace if not already there.

Definition at line 103 of file NeymanConstruction.h.

virtual void RooStats::NeymanConstruction::SetTestSize ( Double_t  size)
inlinevirtual

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 118 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

void RooStats::NeymanConstruction::SetTestStatSampler ( TestStatSampler sampler)
inline

in addition to interface we also need: Set the TestStatSampler (eg.

ToyMC or FFT, includes choice of TestStatistic)

Definition at line 72 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

virtual Double_t RooStats::NeymanConstruction::Size ( ) const
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 91 of file NeymanConstruction.h.

void RooStats::NeymanConstruction::UseAdaptiveSampling ( bool  flag = true)
inline

adaptive sampling algorithm to speed up interval caculation

Definition at line 126 of file NeymanConstruction.h.

Referenced by RooStats::FeldmanCousins::GetInterval().

Member Data Documentation

bool RooStats::NeymanConstruction::fAdaptiveSampling
private

Definition at line 159 of file NeymanConstruction.h.

Referenced by GetInterval(), and UseAdaptiveSampling().

Double_t RooStats::NeymanConstruction::fAdditionalNToysFactor
private

Definition at line 160 of file NeymanConstruction.h.

Referenced by AdditionalNToysFactor(), and GetInterval().

ConfidenceBelt* RooStats::NeymanConstruction::fConfBelt
private

Definition at line 158 of file NeymanConstruction.h.

Referenced by GetConfidenceBelt(), GetInterval(), and SetParameterPointsToTest().

bool RooStats::NeymanConstruction::fCreateBelt
private

Definition at line 162 of file NeymanConstruction.h.

Referenced by CreateConfBelt(), GetInterval(), and SaveBeltToFile().

RooAbsData& RooStats::NeymanConstruction::fData
private

size of the test (eg. specified rate of Type I error)

Definition at line 147 of file NeymanConstruction.h.

Referenced by GetInterval(), and SetData().

Double_t RooStats::NeymanConstruction::fLeftSideFraction
private

Definition at line 157 of file NeymanConstruction.h.

Referenced by GetInterval(), and SetLeftSideTailFraction().

ModelConfig& RooStats::NeymanConstruction::fModel
private

data set

Definition at line 148 of file NeymanConstruction.h.

Referenced by GetInterval(), and SetModel().

RooAbsData* RooStats::NeymanConstruction::fPointsToTest
private

Definition at line 156 of file NeymanConstruction.h.

Referenced by GetInterval(), and SetParameterPointsToTest().

bool RooStats::NeymanConstruction::fSaveBeltToFile
private

Definition at line 161 of file NeymanConstruction.h.

Referenced by GetInterval(), and SaveBeltToFile().

Double_t RooStats::NeymanConstruction::fSize
private
TestStatSampler* RooStats::NeymanConstruction::fTestStatSampler
private

Definition at line 155 of file NeymanConstruction.h.

Referenced by GetInterval(), GetTestStatSampler(), and SetTestStatSampler().

Collaboration diagram for RooStats::NeymanConstruction:
[legend]

The documentation for this class was generated from the following files: