Basic machinery for exclusion. More...
#include <XeStat.h>
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. | |
XeLimit * | computeUpperLimit (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 ? | |
XeGraph * | newGraphOfPValue (XeRange *sr, int plot=NONE) |
Return graph of p-values for various test cross sectoins. | |
XeGraph * | newGraphOfQExclusion (XeRange *sr, int unit=EVENT_UNIT) |
XeGraph * | newGraphOfUpperEvents (XeRange *mr, int plot=NONE, double cl=DEFAULT_CL) |
Return the XeGraph of upper events. | |
XeGraph * | newGraphOfUpperLimit (int unit, XeRange *mr, int plot=NONE, double cl=DEFAULT_CL) |
Return the XeGraph of upper limit(sigma or event ). | |
XeGraph * | newGraphOfUpperSigma (XeRange *mr, int plot=NONE, double cl=DEFAULT_CL) |
Return the XeGraph of upper sigma. | |
XeSensitivity * | newSensitivity (double mass, int n, double cl=DEFAULT_CL) |
Return one point in the sensitivity bands. | |
SensitivityBands * | newSensitivityBands (int n, XeRange *mr=NULL, double cl=DEFAULT_CL) |
Return one point in the sensitivity bands. | |
XeLimits * | newUpperLimits (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 |
Basic machinery for exclusion.
Exclusion::Exclusion | ( | PValue * | pValue | ) |
Exclusion::Exclusion | ( | PValue ** | pValueS, | |
int | nP | |||
) |
Constrictor with several p-value (PValue) calculators.
pValueS | vectors of p-values calculator; the Fishcher correction will be used |
void Exclusion::addPValue | ( | PValue * | pV | ) | [protected] |
Add one p-Value to the exclusion.
pV | pointer to PValue | |
l | number of pValues |
void Exclusion::addPValues | ( | PValue ** | pV, | |
int | l | |||
) | [protected] |
Add p-Values to the exclusion.
pV | pointer to array to pointers of PValue | |
l | number of pValues |
void Exclusion::applyCLs | ( | bool | doIt | ) |
Set the "CLs" correction flag.
doIt | apply or don't apply the CLs correction |
void Exclusion::applyCLsAndSave | ( | bool | doIt | ) |
Set the "CLs" correction flag and remember the current setting.
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.
doIt | apply or don't apply the Fisher correction |
XeLimit* Exclusion::computeUpperLimit | ( | double | cl = DEFAULT_CL |
) |
Compute sigma upper limit.
cl | Confidence Level |
double Exclusion::correctedPValue | ( | double | sigma, | |
bool | useSaved = false | |||
) |
Compute (CLs corrected) pValue.
sigma | test cross section | |
usedSaved | use the already computed and save p-value for bkg only |
double Exclusion::getValue | ( | double | sigma | ) | [virtual] |
sr | Sigma range | |
unit | either SIGMA_UNIT or EVENT_UNIT |
XeSensitivity* Exclusion::newSensitivity | ( | double | mass, | |
int | n, | |||
double | cl = DEFAULT_CL | |||
) |
Return one point in the sensitivity bands.
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.
n | Number of simulations | |
cl | Confidence Level |
Return estimated and limit sigmas, in terns of both sigma and events.
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
double Exclusion::qExclusion | ( | double | sig | ) |
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.
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
mass | requested WIMP mass |
void Exclusion::simulate | ( | double | sigma | ) |
Simulate an outcome.
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.
n | Number of simulations |
sigSim | Cross section for the simulation | |
sigTest | Cross section to be tested |
static double Exclusion::typicalUpperLimit | ( | int | nev | ) | [static] |
For rescaling, gives a typical upper limit for an observed number of events.
nev | number of events |
bool Exclusion::update | ( | ) |
Update stuff when a parameter (e.g.
test mass) changed
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