Logo ROOT   6.12/07
Reference Guide
FeldmanCousins.C
Go to the documentation of this file.
1 /// \file
2 /// \ingroup tutorial_math
3 /// \notebook -nodraw
4 /// Example macro of using the TFeldmanCousins class in root.
5 ///
6 /// get a FeldmanCousins calculation object with the default limits
7 /// of calculating a 90% CL with the minimum signal value scanned
8 /// = 0.0 and the maximum signal value scanned of 50.0
9 ///
10 /// \macro_output
11 /// \macro_code
12 ///
13 /// \author Adrian John Bevan <bevan@SLAC.Stanford.EDU>
14 
15 void FeldmanCousins()
16 {
17  if (!gROOT->GetClass("TFeldmanCousins"))
18  R__LOAD_LIBRARY(libPhysics);
19 
21 
22  // calculate either the upper or lower limit for 10 observed
23  // events with an estimated background of 3. The calculation of
24  // either upper or lower limit will return that limit and fill
25  // data members with both the upper and lower limit for you.
26  Double_t Nobserved = 10.0;
27  Double_t Nbackground = 3.0;
28 
29  Double_t ul = f.CalculateUpperLimit(Nobserved, Nbackground);
30  Double_t ll = f.GetLowerLimit();
31 
32  cout << "For " << Nobserved << " data observed with and estimated background"<<endl;
33  cout << "of " << Nbackground << " candidates, the Feldman-Cousins method of "<<endl;
34  cout << "calculating confidence limits gives:"<<endl;
35  cout << "\tUpper Limit = " << ul << endl;
36  cout << "\tLower Limit = " << ll << endl;
37  cout << "at the 90% CL"<< endl;
38 }
39 
#define gROOT
Definition: TROOT.h:402
#define R__LOAD_LIBRARY(LIBRARY)
Definition: Rtypes.h:470
Double_t GetLowerLimit(void) const
double Double_t
Definition: RtypesCore.h:55
Class to calculate the CL upper limit using the Feldman-Cousins method as described in PRD V57 #7...
Double_t CalculateUpperLimit(Double_t Nobserved, Double_t Nbackground)
given Nobserved and Nbackground, try different values of mu that give upper limits that are consisten...