I have a question about the calculation about upperlimit by using Fedlman method. I want to know that why if I choose the oberserve and background value are same and the value is more than 40, the upperlimits given are same. And for 40, the upperlimit value is 0 .
The class is designed with some default parameters to be used for small values of n and n-background, where it is typically used.
In your case, for example for
nbkg=40, you need to set larger values of the scan
muMax. The default is 50.
You need to set a value of
muMax much larger than
nobs, at least larger than
nobs+nbkg. You might need to increase the
muStep (default is 0.005) if it takes too long to compute.
TFeldmanCousins fc; fc.SetCL(0.9); fc.SetMuMax(100); fc.CalculateUpperLimit(40,40);
will give you a value around 11.5
Thank you for your suggestion. So if the values of background and obs range from 1 to 100, can I choose a maximum value like MuMax (200) ? For small values of background and obs like nobs +nbkg is 10, if I setMuMax is 100, is it ok?
I think muMax should be at least large as
nobs+nbkg. You should also note that for large values the Poisson is like a normal distribution and you can just use the limit computed from a normal distribution.
For example for a 90% CL ,
double upper_limit = nobs - b + sqrt(nobs) * ROOT::Math::normal_quantile_c(0.05,1);
Oh, I see. That’s very useful! Thank you for your help!