======================================================== 
For model 1: Poisson / Binomial
the Profile Likelihood interval is :
[0,11.5943]
 
 ======================================================== 
For model 2 : Poisson / Gaussian
the Profile Likelihood interval is :
[3.88417,18.4584]
 
 ======================================================== 
For model 3 : Gaussian / Gaussian
the Profile Likelihood interval is :
[0,17.5005]
***************************************
* some more example's for gauss/gauss *
*                                     *
sensitivity:
[0.00213408,9.0817]
median limit:
[0,9.21861] @ x =5
ML limit:
[0,9.21861] @ x =5
sensitivity:
[0.00213408,18.3004]
the Profile Likelihood interval is :
[0,17.5005]
critical number: 13
critical number for 5 sigma: 21
***************************************
 
 ======================================================== 
For model 4 : Poissonian / Known
the Profile Likelihood interval is :
[0,4.08807]
 
 ======================================================== 
For model 5 : Gaussian / Known
the Profile Likelihood interval is :
[0,4.91504]
 
 ======================================================== 
For model 6 : Known / Binomial
the Profile Likelihood interval is :
[11.4655,36.3035]
 
 ======================================================== 
For model 7 : Known / Gaussian 
the Profile Likelihood interval is :
[0,20.1747]
Example of the effect of bounded vs unbounded, For model 1
the BOUNDED Profile Likelihood interval is :
[0,1.1729]
the UNBOUNDED Profile Likelihood interval is :
[0,0.936334]
   
 
void Rolke()
{
   
 
 
   
 
 
   cout << endl<<" ======================================================== " <<endl;
   mid =1;
   tau = 2.5; 
   z = 50;    
 
   alpha=0.9; 
 
 
 
   cout << "For model 1: Poisson / Binomial" << endl;
   cout << "the Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
   cout << endl<<" ======================================================== " <<endl;
   mid =2;
   tau = 2.5;   
   em = 0.9;    
   sde = 0.05;  
   alpha =0.95; 
 
 
 
   cout << "For model 2 : Poisson / Gaussian" << endl;
   cout << "the Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
   cout << endl<<" ======================================================== " <<endl;
   mid =3;
   bm = 5;      
   sdb = 0.5;   
   em = 0.9;    
   sde = 0.05;  
   alpha =0.99; 
 
 
   cout << "For model 3 : Gaussian / Gaussian" << endl;
   cout << "the Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
   cout << "***************************************" << endl;
   cout << "* some more example's for gauss/gauss *" << endl;
   cout << "*                                     *" << endl;
   cout << "sensitivity:" << endl;
   cout << "[" << slow << "," << shigh << "]" << endl;
 
   int outx;
   cout << "median limit:" << endl;
   cout << "[" << slow << "," << shigh << "] @ x =" << outx <<endl;
 
   cout << "ML limit:" << endl;
   cout << "[" << slow << "," << shigh << "] @ x =" << outx <<endl;
 
   cout << "sensitivity:" << endl;
   cout << "[" << slow << "," << shigh << "]" << endl;
 
   cout << "the Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
 
   cout << "critical number: " << ncrt << endl;
 
   cout << "critical number for 5 sigma: " << ncrt << endl;
 
   cout << "***************************************" << endl;
 
   cout << endl<<" ======================================================== " <<endl;
   mid =4;
   tau = 5;     
 
   alpha =0.68; 
 
 
 
   cout << "For model 4 : Poissonian / Known" << endl;
   cout <<  "the Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
   cout << endl<<" ======================================================== " <<endl;
   mid =5;
   bm = 0;          
   sdb = 1.0;       
   alpha =0.799999; 
 
 
 
   cout << "For model 5 : Gaussian / Known" << endl;
   cout <<  "the Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
   cout << endl<<" ======================================================== " <<endl;
   mid =6;
   z = 500;     
   alpha =0.9;  
 
 
 
   cout << "For model 6 : Known / Binomial" << endl;
   cout <<  "the Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
   cout << endl<<" ======================================================== " <<endl;
   mid =7;
   em = 0.77;   
   sde = 0.15;  
   alpha =0.95; 
 
 
 
 
   cout << "For model 7 : Known / Gaussian " << endl;
   cout <<  "the Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
 
   bm = 0.0;
   tau = 5;
   mid = 1;
   z = 90;
   alpha = 0.90;
 
 
   cout << "Example of the effect of bounded vs unbounded, For model 1" << endl;
   cout <<  "the BOUNDED Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
 
 
 
   cout <<  "the UNBOUNDED Profile Likelihood interval is :" << endl;
   cout << "[" << ll << "," << ul << "]" << endl;
}
This class computes confidence intervals for the rate of a Poisson process in the presence of uncerta...
 
void SetGaussBkgKnownEff(Int_t x, Double_t bm, Double_t sdb, Double_t e)
Model 5: Background - Gaussian, Efficiency - known (x,bm,sdb,e.
 
bool GetLimitsML(Double_t &low, Double_t &high, Int_t &out_x)
get the upper and lower limits for the most likely outcome.
 
bool GetCriticalNumber(Int_t &ncrit, Int_t maxtry=-1)
get the value of x corresponding to rejection of the null hypothesis.
 
void SetKnownBkgBinomEff(Int_t x, Int_t z, Int_t m, Double_t b)
Model 6: Background - known, Efficiency - Binomial (x,z,m,b)
 
void SetPoissonBkgKnownEff(Int_t x, Int_t y, Double_t tau, Double_t e)
Model 4: Background - Poisson, Efficiency - known (x,y,tau,e)
 
void SetBounding(const bool bnd)
 
void SetKnownBkgGaussEff(Int_t x, Double_t em, Double_t sde, Double_t b)
Model 7: Background - known, Efficiency - Gaussian (x,em,sde,b)
 
void SetGaussBkgGaussEff(Int_t x, Double_t bm, Double_t em, Double_t sde, Double_t sdb)
Model 3: Background - Gaussian, Efficiency - Gaussian (x,bm,em,sde,sdb)
 
void SetPoissonBkgGaussEff(Int_t x, Int_t y, Double_t em, Double_t tau, Double_t sde)
Model 2: Background - Poisson, Efficiency - Gaussian.
 
bool GetSensitivity(Double_t &low, Double_t &high, Double_t pPrecision=0.00001)
get the upper and lower average limits based on the specified model.
 
bool GetLimitsQuantile(Double_t &low, Double_t &high, Int_t &out_x, Double_t integral=0.5)
get the upper and lower limits for the outcome corresponding to a given quantile.
 
bool GetLimits(Double_t &low, Double_t &high)
Calculate and get the upper and lower limits for the pre-specified model.
 
void SetPoissonBkgBinomEff(Int_t x, Int_t y, Int_t z, Double_t tau, Int_t m)
Model 1: Background - Poisson, Efficiency - Binomial.
 
void SetCLSigmas(Double_t CLsigmas)