GammaCombo  Rev:Unversioneddirectory
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
MethodProbScan Class Reference

#include <MethodProbScan.h>

Inheritance diagram for MethodProbScan:
Inheritance graph
[legend]
Collaboration diagram for MethodProbScan:
Collaboration graph
[legend]

Public Member Functions

float getChi2min (float scanpoint)
 Get the chi2 value of the profile likelihood at a given scan point. More...
 
TH1F * getHChi2min ()
 
 MethodProbScan (Combiner *comb)
 
 MethodProbScan (OptParser *opt)
 
 MethodProbScan ()
 Default constructor. More...
 
void saveSolutions ()
 Find the RooFitResults corresponding to all local minima from the curveResults vector and save them into the solutions vector. More...
 
void saveSolutions2d ()
 Find the RooFitResults corresponding to all local minima from the curveResults2d vector and save them into the solutions vector. More...
 
virtual int scan1d (bool fast=false, bool reverse=false)
 Perform 1d Prob scan. More...
 
virtual int scan2d ()
 Perform a 2d Prob scan. More...
 
void setScanDisableDragMode (bool f=true)
 
 ~MethodProbScan ()
 
- Public Member Functions inherited from MethodAbsScan
virtual void calcCLintervals (int CLsType=0)
 Calculate the CL intervals from the CL curve. More...
 
void calcCLintervalsSimple (int CLsType=0)
 
virtual void checkCLs ()
 
void confirmSolutions ()
 Refit all possible solutions with the scan parameter left free to confirm the solutions. More...
 
void doInitialFit (bool force=false)
 Try to find global mininum of the PDF. More...
 
const vector< RooSlimFitResult * > & getAllResults ()
 
OptParsergetArg ()
 
const std::pair< double, double > getBorders (const TGraph &graph, const double confidence_level, bool qubic=false)
 determines the borders of the confidence interval by linear or qubic interpolation. More...
 
const std::pair< double, double > getBorders_CLs (const TGraph &graph, const double confidence_level, bool qubic=false)
 
float getChi2minBkg ()
 
float getChi2minGlobal ()
 
float getCL (double val)
 
CLInterval getCLinterval (int iSol=0, int sigma=1)
 Get the CL interval that includes the best-fit value. More...
 
CLInterval getCLintervalCentral (int sigma=1)
 Get the CL interval that includes the best-fit value. More...
 
CombinergetCombiner () const
 
const vector< RooSlimFitResult * > & getCurveResults ()
 
int getDrawSolution ()
 
bool getFilled ()
 
int getFillStyle ()
 
TH1F * getHchisq ()
 
TH2F * getHchisq2d ()
 
TH1F * getHCL ()
 
TH2F * getHCL2d ()
 
TH1F * getHCLs ()
 
TH2F * getHCLs2d ()
 
TH1F * getHCLsErr1Dn ()
 
TH1F * getHCLsErr1Up ()
 
TH1F * getHCLsErr2Dn ()
 
TH1F * getHCLsErr2Up ()
 
TH1F * getHCLsExp ()
 
TH1F * getHCLsFreq ()
 
int getLineColor ()
 
int getLineStyle ()
 
TString getMethodName () const
 
TString getName () const
 
int getNObservables ()
 
int getNPoints1d ()
 
int getNPoints2dx ()
 
int getNPoints2dy ()
 
const RooArgSet * getObservables ()
 
TString getObsName ()
 
TString getParsName ()
 
RooRealVar * getScanVar1 ()
 
TString getScanVar1Name ()
 
float getScanVar1Solution (int i=0)
 Get value of scan parameter 1 a certain solution. More...
 
RooRealVar * getScanVar2 ()
 
TString getScanVar2Name ()
 
float getScanVar2Solution (int i=0)
 Get value of scan parameter 2 a certain solution (only meaningful for 2d scan). More...
 
float getScanVarSolution (int iVar, int iSol)
 Get value of scan parameter at a certain solution. More...
 
RooSlimFitResultgetSolution (int i=0)
 Return a solution corresponding to a minimum of the profile likelihoood. More...
 
vector< RooSlimFitResult * > getSolutions ()
 
int getTextColor ()
 
const RooArgSet * getTheory ()
 
TString getTitle ()
 
RooWorkspace * getWorkspace ()
 
virtual void initScan ()
 
void loadParameters (RooSlimFitResult *r)
 Load the values given by an (external) fit result. More...
 
virtual bool loadScanner (TString fName="")
 Save a scanner from plots/scanner. More...
 
bool loadSolution (int i=0)
 Load the values at a specific minimum into the workspace. More...
 
 MethodAbsScan ()
 
 MethodAbsScan (Combiner *c)
 
 MethodAbsScan (OptParser *opt)
 
void plot1d (TString var)
 Make a 1d plot of the NLL in var. More...
 
void plot2d (TString varx, TString vary)
 Make a 2d plot of the PDF in varx and vary. More...
 
void plotOn (OneMinusClPlotAbs *plot, int CLsType=0)
 
void plotPulls (int nSolution=0)
 Make a pull plot of observables corresponding to the given solution. More...
 
virtual void print ()
 
void printCLintervals (int CLsType)
 Print CL intervals. More...
 
void printLocalMinima ()
 Print local minima solutions. More...
 
void saveLocalMinima (TString fName="")
 Save local minima solutions. More...
 
void saveScanner (TString fName="")
 Save this scanner to a root file placed into plots/scanner. More...
 
virtual int scan1d ()
 
void setChi2minGlobal (double x)
 Set the global minimum manually. More...
 
void setDrawSolution (int code=0)
 
void setFilled (bool filled)
 
void setFillStyle (int c)
 
void setHchisq (TH1F *h)
 
void setHCL (TH1F *h)
 
void setLineColor (int c)
 
void setLineStyle (int c)
 
void setNPoints1d (int n)
 
void setNPoints2dx (int n)
 
void setNPoints2dy (int n)
 
void setPValueCorrector (PValueCorrection *pvalCor)
 
void setScanVar1 (TString var)
 
void setScanVar2 (TString var)
 
void setSolutions (vector< RooSlimFitResult *> s)
 Helper function to copy over solutions from another scanner. More...
 
void setTextColor (int c)
 
void setTitle (TString s)
 
void setVerbose (bool yesNo=true)
 
void setXscanRange (float min, float max)
 
void setYscanRange (float min, float max)
 
 ~MethodAbsScan ()
 

Protected Member Functions

bool computeInnerTurnCoords (const int iStart, const int jStart, const int i, const int j, int &iResult, int &jResult, int nTurn)
 Compute coordinates that can be used as coordinates of that fit result, that we want to use as start parameters in the drag mode. More...
 
bool deleteIfNotInCurveResults2d (RooSlimFitResult *r)
 Delete a pointer if it is not included in the curveResults2d vector. More...
 
void sanityChecks ()
 
- Protected Member Functions inherited from MethodAbsScan
void sortSolutions ()
 Sort solutions in order of increasing chi2. More...
 

Protected Attributes

int nScansDone
 
bool scanDisableDragMode
 
- Protected Attributes inherited from MethodAbsScan
OptParserarg
 command line options More...
 
double chi2minBkg
 chi2 value at global minimum More...
 
double chi2minGlobal
 chi2 value at global minimum More...
 
bool chi2minGlobalFound
 flag to avoid finding minimum twice More...
 
Combinercombiner
 the combination More...
 
bool drawFilled
 choose if Histogram is drawn filled or not More...
 
int drawSolution
 Configure how to draw solutions on the plots. More...
 
int fillStyle
 
RooFitResult * globalMin
 parameter values at a global minimum More...
 
TH1F * hChi2min
 histogram for the chi2min values before Prob() More...
 
TH2F * hChi2min2d
 histogram for the chi2min values before Prob() More...
 
TH1F * hCL
 1-CL curve More...
 
TH2F * hCL2d
 1-CL curve More...
 
TH1F * hCLs
 1-CL curve More...
 
TH2F * hCLs2d
 1-CL curve More...
 
TH1F * hCLsErr1Dn
 1-CL curve More...
 
TH1F * hCLsErr1Up
 1-CL curve More...
 
TH1F * hCLsErr2Dn
 1-CL curve More...
 
TH1F * hCLsErr2Up
 1-CL curve More...
 
TH1F * hCLsExp
 1-CL curve More...
 
TH1F * hCLsFreq
 1-CL curve More...
 
int lineColor
 
int lineStyle
 
bool m_initialized
 true if initScan() was called More...
 
bool m_xrangeset
 true if the x range was set manually (setXscanRange()) More...
 
bool m_yrangeset
 true if the y range was set manually (setYscanRange()) More...
 
TString methodName
 Prob, ... More...
 
TString name
 basename, e.g. ggsz More...
 
int nPoints1d
 number of scan points used by 1d scan More...
 
int nPoints2dx
 number of scan points used by 2d scan, x axis More...
 
int nPoints2dy
 number of scan points used by 2d scan, y axis More...
 
int nWarnings
 number of warnings printed in getScanVarSolution() More...
 
RooDataSet * obsDataset
 save the nominal observables so we can restore them after we have fitted toys More...
 
TString obsName
 dataset name of observables, derived from name More...
 
TString parsName
 set name of physics parameters, derived from name More...
 
TString pdfName
 PDF name in workspace, derived from name. More...
 
PValueCorrectionpvalueCorrector
 
bool pvalueCorrectorSet
 
TRandom3 rndm
 
TString scanVar1
 scan parameter More...
 
TString scanVar2
 second scan parameter if we're scanning 2d More...
 
RooDataSet * startPars
 save the start parameter values before any scan More...
 
int textColor
 color used for plotted central values More...
 
TString thName
 set name of theory parameters, derived from name More...
 
TString title
 nice string for the legends More...
 
TString toysName
 set name of parameters to vary in toys More...
 
bool verbose
 
RooWorkspace * w
 

Additional Inherited Members

- Public Attributes inherited from MethodAbsScan
vector< RooSlimFitResult * > allResults
 All fit results we encounter along the scan. More...
 
vector< CLIntervalclintervals1sigma
 all 1 sigma intervals that were found by calcCLintervals() More...
 
vector< CLIntervalclintervals2sigma
 all 2 sigma intervals that were found by calcCLintervals() More...
 
vector< CLIntervalclintervals3sigma
 all 3 sigma intervals that were found by calcCLintervals() More...
 
vector< RooSlimFitResult * > curveResults
 All fit results of the the points that make it into the 1-CL curve. More...
 
vector< vector< RooSlimFitResult * > > curveResults2d
 All fit results of the the points that make it into the 1-CL curve. More...
 
vector< RooSlimFitResult * > solutions
 Local minima filled by saveSolutions() and saveSolutions2d(). More...
 

Detailed Description

Definition at line 49 of file MethodProbScan.h.

Constructor & Destructor Documentation

§ MethodProbScan() [1/3]

MethodProbScan::MethodProbScan ( Combiner comb)

Definition at line 10 of file MethodProbScan.cpp.

§ MethodProbScan() [2/3]

MethodProbScan::MethodProbScan ( OptParser opt)

Definition at line 19 of file MethodProbScan.cpp.

§ MethodProbScan() [3/3]

MethodProbScan::MethodProbScan ( )

Default constructor.

Definition at line 30 of file MethodProbScan.cpp.

§ ~MethodProbScan()

MethodProbScan::~MethodProbScan ( )

Definition at line 37 of file MethodProbScan.cpp.

Member Function Documentation

§ computeInnerTurnCoords()

bool MethodProbScan::computeInnerTurnCoords ( const int  iStart,
const int  jStart,
const int  i,
const int  j,
int &  iResult,
int &  jResult,
int  nTurn 
)
protected

Compute coordinates that can be used as coordinates of that fit result, that we want to use as start parameters in the drag mode.

The i,j coordinates spiral out. This function computes coordinates from inner turns of the spiral. If the inner turn doesn't exist, the start coordinates are set as the result, and false is returned.

Parameters
iStartcenter of the spiral
jStartcenter of the spiral
icurrent coordinates on the outmost turn of the spiral
jcurrent coordinates on the outmost turn of the spiral
iResultresulting coordinates of an inner turn
jResultresulting coordinates of an inner turn
nTurnnumber of inner turn to jump to, 1=next-to-outer turn, 2=second-next, etc.

Definition at line 312 of file MethodProbScan.cpp.

§ deleteIfNotInCurveResults2d()

bool MethodProbScan::deleteIfNotInCurveResults2d ( RooSlimFitResult r)
protected

Delete a pointer if it is not included in the curveResults2d vector.

Also removes it from the allResults vector by setting the entry to 0.

Returns
true if r was deleted, or if it is 0

Definition at line 276 of file MethodProbScan.cpp.

§ getChi2min()

float MethodProbScan::getChi2min ( float  scanpoint)

Get the chi2 value of the profile likelihood at a given scan point.

Requires that the scan was performed before by scan1d().

Definition at line 705 of file MethodProbScan.cpp.

§ getHChi2min()

TH1F* MethodProbScan::getHChi2min ( )
inline

Definition at line 58 of file MethodProbScan.h.

§ sanityChecks()

void MethodProbScan::sanityChecks ( )
protected

Definition at line 339 of file MethodProbScan.cpp.

§ saveSolutions()

void MethodProbScan::saveSolutions ( )

Find the RooFitResults corresponding to all local minima from the curveResults vector and save them into the solutions vector.

It will be sorted for minChi2. Index 0 will correspond to the least chi2.

Definition at line 598 of file MethodProbScan.cpp.

§ saveSolutions2d()

void MethodProbScan::saveSolutions2d ( )

Find the RooFitResults corresponding to all local minima from the curveResults2d vector and save them into the solutions vector.

It will be sorted for minChi2. Index 0 will correspond to the least chi2.

We use a brute force minimum finding over the histogram, as it is not large: at each bin, inpsect the 8 surrounding ones.

Definition at line 651 of file MethodProbScan.cpp.

§ scan1d()

int MethodProbScan::scan1d ( bool  fast = false,
bool  reverse = false 
)
virtual

Perform 1d Prob scan.

  • Scan range defined through limit "scan".
  • Will fill the hCL histogram with the 1-CL curve.
  • Start at a scan value that is in the middle of the allowed range, preferably a solution, and scan up and down from there.
  • use the "probforce" command line flag to enable force minimum finding
Parameters
fastThis will scan each scanpoint only once.
reverseThis will scan in reverse direction. When using the drag mode, this can sometimes make a difference.
Returns
status: 2 = new global minimum found, 1 = error

Reimplemented in MethodDatasetsProbScan.

Definition at line 56 of file MethodProbScan.cpp.

§ scan2d()

int MethodProbScan::scan2d ( )
virtual

Perform a 2d Prob scan.

Scan range defined through limit "scan". Fills the hCL2d histogram with the 1-CL curve. Saves all encountered fit results to allResults. Saves the fit results that make it into the 1-CL curve into curveResults2d. Scan strategy: Spiral out!

< number of messages

Reimplemented from MethodAbsScan.

Reimplemented in MethodDatasetsProbScan.

Definition at line 363 of file MethodProbScan.cpp.

§ setScanDisableDragMode()

void MethodProbScan::setScanDisableDragMode ( bool  f = true)
inline

Definition at line 63 of file MethodProbScan.h.

Member Data Documentation

§ nScansDone

int MethodProbScan::nScansDone
protected

Definition at line 71 of file MethodProbScan.h.

§ scanDisableDragMode

bool MethodProbScan::scanDisableDragMode
protected

Definition at line 70 of file MethodProbScan.h.


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