Exclusion Class Reference

Basic machinery for exclusion. More...

#include <XeStat.h>

Inheritance diagram for Exclusion:
XeStat solvable XeMath XeObject XeMath XeCore XeCore XeCore

List of all members.

Public Member Functions

void applyCLs (bool doIt)
 Set the "CLs" correction flag.
void applyCLsAndSave (bool doIt)
 Set the "CLs" correction flag and remember the current setting.
void applyFisherCorrection (bool doIt)
 Set the Fisher correction flag when more than one p-value is checked.
XeLimitcomputeUpperLimit (double cl=DEFAULT_CL)
 Compute sigma upper limit.
double correctedPValue (double sigma, bool useSaved=false)
 Compute (CLs corrected) pValue.
 Exclusion (PValue **pValueS, int nP)
 Constrictor with several p-value (PValue) calculators.
 Exclusion (PValue *pValue)
 Constructor with one p-value (PValue) calculator.
 Exclusion ()
 Empty constructor for ROOT.
double getValue (double sigma)
 Technical wrapped for equation solving.
double getWimpMass ()
 return current WIMP mass
bool initialize ()
 Make sure everything is OK, in place.
bool isCLsApplied ()
 Is Cls correction to be applied ?
XeGraphnewGraphOfPValue (XeRange *sr, int plot=NONE)
 Return graph of p-values for various test cross sectoins.
XeGraphnewGraphOfQExclusion (XeRange *sr, int unit=EVENT_UNIT)
XeGraphnewGraphOfUpperEvents (XeRange *mr, int plot=NONE, double cl=DEFAULT_CL)
 Return the XeGraph of upper events.
XeGraphnewGraphOfUpperLimit (int unit, XeRange *mr, int plot=NONE, double cl=DEFAULT_CL)
 Return the XeGraph of upper limit(sigma or event ).
XeGraphnewGraphOfUpperSigma (XeRange *mr, int plot=NONE, double cl=DEFAULT_CL)
 Return the XeGraph of upper sigma.
XeSensitivitynewSensitivity (double mass, int n, double cl=DEFAULT_CL)
 Return one point in the sensitivity bands.
SensitivityBandsnewSensitivityBands (int n, XeRange *mr=NULL, double cl=DEFAULT_CL)
 Return one point in the sensitivity bands.
XeLimitsnewUpperLimits (XeRange *mr=NULL, double cl=DEFAULT_CL)
 Return estimated and limit sigmas, in terns of both sigma and events.
bool prepareForLimit ()
 Preparatory computations for the exclusion limits.
double qExclusion (double sig)
void reset ()
 Reset everything.
void restoreCLs ()
 Restore the current setting if the "CLs" correction flag.
void saveCLs ()
 Save the current setting of the "CLs" correction flag.
void setSigmaUnitAndLimits (double sigmaUnit, double eMin, double eMax)
 Set the scales and limits, to deal with numbers of order unit.
void setWimpMass (double mass)
 set current wimp mass
void simulate (double sigma)
 Simulate an outcome.
void simulateNQValues (int n, XeValues *qs=NULL, XeValues *sHats=NULL, XeValues *eHats=NULL, double sigSim=0., double sigTest=0.)
 Simulate n runs and return the n qValues.
void simulateNUpperLimits (int n, XeValues *sigmas=NULL, XeValues *events=NULL, double cl=DEFAULT_CL)
 Simulate n runs and return the n upperLimits.
bool update ()
 Update stuff when a parameter (e.g.

Static Public Member Functions

static double typicalUpperLimit (int nev)
 For rescaling, gives a typical upper limit for an observed number of events.

Protected Member Functions

void addPValue (PValue *pV)
 Add one p-Value to the exclusion.
void addPValues (PValue **pV, int l)
 Add p-Values to the exclusion.
double computePB ()
 Compute p-value for background only hypothesis.

Protected Attributes

bool doApplyCLs
double eventMax
double eventMin
bool fisherCorrection
bool initializedOK
int nPValues
vector< PValue * > pValues
bool savedApplyCLs
double savedPBkg
double signalPerCm2
double wimpMass

Detailed Description

Basic machinery for exclusion.


Constructor & Destructor Documentation

Exclusion::Exclusion ( PValue pValue  ) 

Constructor with one p-value (PValue) calculator.

Parameters:
pValue a p-value (PValue) calculator
Exclusion::Exclusion ( PValue **  pValueS,
int  nP 
)

Constrictor with several p-value (PValue) calculators.

Parameters:
pValueS vectors of p-values calculator; the Fishcher correction will be used

Member Function Documentation

void Exclusion::addPValue ( PValue pV  )  [protected]

Add one p-Value to the exclusion.

Parameters:
pV pointer to PValue
l number of pValues
void Exclusion::addPValues ( PValue **  pV,
int  l 
) [protected]

Add p-Values to the exclusion.

Parameters:
pV pointer to array to pointers of PValue
l number of pValues
void Exclusion::applyCLs ( bool  doIt  ) 

Set the "CLs" correction flag.

Parameters:
doIt apply or don't apply the CLs correction
void Exclusion::applyCLsAndSave ( bool  doIt  ) 

Set the "CLs" correction flag and remember the current setting.

Parameters:
doIt apply or don't apply the CLs correction
void Exclusion::applyFisherCorrection ( bool  doIt  ) 

Set the Fisher correction flag when more than one p-value is checked.

Parameters:
doIt apply or don't apply the Fisher correction
XeLimit* Exclusion::computeUpperLimit ( double  cl = DEFAULT_CL  ) 

Compute sigma upper limit.

Returns:
pointer to a newly creates XeSigma
Parameters:
cl Confidence Level
double Exclusion::correctedPValue ( double  sigma,
bool  useSaved = false 
)

Compute (CLs corrected) pValue.

Returns:
p-value between 0 and 1
Parameters:
sigma test cross section
usedSaved use the already computed and save p-value for bkg only
double Exclusion::getValue ( double  sigma  )  [virtual]

Technical wrapped for equation solving.

Parameters:
sigma test cross section

Implements solvable.

XeGraph* Exclusion::newGraphOfPValue ( XeRange sr,
int  plot = NONE 
)

Return graph of p-values for various test cross sectoins.

Returns:
the XeGraph
Parameters:
sr an XeRange describing the Sigma range
plot either NONE, AUTO, LINEAR, or LOG
XeGraph* Exclusion::newGraphOfQExclusion ( XeRange sr,
int  unit = EVENT_UNIT 
)
Returns:
an XeGraph of Qexclusion for a sigma range
Parameters:
sr Sigma range
unit either SIGMA_UNIT or EVENT_UNIT
XeGraph* Exclusion::newGraphOfUpperEvents ( XeRange mr,
int  plot = NONE,
double  cl = DEFAULT_CL 
)

Return the XeGraph of upper events.

Returns:
An XeGraph of upper limit for a given mass range
Parameters:
mr Mass Range for the WIMP particle
plot either NONE, AUTO, LINEAR, or LOG
cl Confidence level
XeGraph* Exclusion::newGraphOfUpperLimit ( int  unit,
XeRange mr,
int  plot = NONE,
double  cl = DEFAULT_CL 
)

Return the XeGraph of upper limit(sigma or event ).

Returns:
An XeGraph of upper limit for a given mass range
Parameters:
unit either SIGMA_UNIT or EVENT_UNIT
mr Mass Range for the WIMP particle
plot either NONE, AUTO, LINEAR, or LOG
cl Confidence level
XeGraph* Exclusion::newGraphOfUpperSigma ( XeRange mr,
int  plot = NONE,
double  cl = DEFAULT_CL 
)

Return the XeGraph of upper sigma.

Returns:
An XeGraph of upper limit for a given mass range
Parameters:
mr Mass Range for the WIMP particle
plot either NONE, AUTO, LINEAR, or LOG
cl Confidence level
XeSensitivity* Exclusion::newSensitivity ( double  mass,
int  n,
double  cl = DEFAULT_CL 
)

Return one point in the sensitivity bands.

Returns:
pointer to a newly created sensitivity point
Parameters:
mass WIMP mass
n Number of simulations
cl Confidence Level
SensitivityBands* Exclusion::newSensitivityBands ( int  n,
XeRange mr = NULL,
double  cl = DEFAULT_CL 
)

Return one point in the sensitivity bands.

Returns:
pointer to a newly created sensivitity band
Parameters:
n Number of simulations
cl Confidence Level
XeLimits* Exclusion::newUpperLimits ( XeRange mr = NULL,
double  cl = DEFAULT_CL 
)

Return estimated and limit sigmas, in terns of both sigma and events.

Returns:
pointer to a newly created XeSigmas
Parameters:
mr mass range (NULL means default ine)
cl Confidence Level
bool Exclusion::prepareForLimit (  ) 

Preparatory computations for the exclusion limits.

To be called each time a new simulated run is created

Returns:
bool went ok or not
double Exclusion::qExclusion ( double  sig  ) 
Returns:
q(sigma) according to PL recipe
Parameters:
sigma cross sections being testes
void Exclusion::setSigmaUnitAndLimits ( double  sigmaUnit,
double  eMin,
double  eMax 
)

Set the scales and limits, to deal with numbers of order unit.

Parameters:
sigmaUnit Sigma corresponding to 1 expected event after cuts
eMin Lower limit of events sigma_up search (usually 0)
eMax Upper limit of events sigma_up search (usually 20-30)
void Exclusion::setWimpMass ( double  mass  ) 

set current wimp mass

Parameters:
mass requested WIMP mass
void Exclusion::simulate ( double  sigma  ) 

Simulate an outcome.

Parameters:
sigma cross section simulated
void Exclusion::simulateNQValues ( int  n,
XeValues qs = NULL,
XeValues sHats = NULL,
XeValues eHats = NULL,
double  sigSim = 0.,
double  sigTest = 0. 
)

Simulate n runs and return the n qValues.

Parameters:
n Number of simulations
Returns:
qs list of q values (actually XeValues)
sHats list of sigma values after fit (actually XeValues)
eHats list of Nevents values after fit (actually XeValues)
Parameters:
sigSim Cross section for the simulation
sigTest Cross section to be tested
void Exclusion::simulateNUpperLimits ( int  n,
XeValues sigmas = NULL,
XeValues events = NULL,
double  cl = DEFAULT_CL 
)

Simulate n runs and return the n upperLimits.

Parameters:
n Number of simulations
Returns:
sigmas the list of upper sigmas (actually XeValues)
events the list of upper events (actually XeValues)
Parameters:
cl Confidence Level
static double Exclusion::typicalUpperLimit ( int  nev  )  [static]

For rescaling, gives a typical upper limit for an observed number of events.

Parameters:
nev number of events
bool Exclusion::update (  ) 

Update stuff when a parameter (e.g.

test mass) changed


Member Data Documentation

bool Exclusion::doApplyCLs [protected]

Do we want to apply CLs?

double Exclusion::eventMax [protected]

Upper bound of number of events for exclusion

double Exclusion::eventMin [protected]

Lower bound of number of events for exclusion

bool Exclusion::fisherCorrection [protected]

Apply Fisher correction if >1 p-value?

bool Exclusion::initializedOK [protected]

Was everything analyzed ok

int Exclusion::nPValues [protected]

Number of p values calculators

vector<PValue*> Exclusion::pValues [protected]

P-value calculators in use

bool Exclusion::savedApplyCLs [protected]

Temporary save of 'doApplyCLs'

double Exclusion::savedPBkg [protected]

P value at background used for the CLS

double Exclusion::signalPerCm2 [protected]

Translation from cross section to n Events

double Exclusion::wimpMass [protected]

Current WIMP mass


The documentation for this class was generated from the following file:
 All Classes Functions Variables

Generated on 10 Apr 2015 for Xephyr by  doxygen 1.6.1