Reduce tolerance of Minos

Dear Roofit/RooStats experts,
I am using the framework TRExFitter and encounter a statistical problem at the moment. I perform a morphing fit with linear interpolation. I reduced the number of templates as the accuracy to any given point in the phase space is sufficient with 5 templates instead of the fully produced 49. On Asimov data, everything looks as expected, but I do see some strange behaviour on data. I put the relevant material in the appendix.
The central values and the total uncertainty differ for the 14 single fits as well for the combination. I looked into the output at it seems that the central values solely come from Migrad. Afterwards I run Minos to better estimate the uncertainty. If I run a likelihood scan around the minimum, the likelihood values between the two configurations incorporating a different number of templates is exactly the same. Even in the case Migrad didn’t find the optimal minimum, Minos does. However, it does not update the central value even though I use Root 6.24 and this should be possible since version 6.22. Minos runs with the default tolerance of 0.01. I was wondering if a smaller tolerance would allow Minos to update the central values, as the likelihood difference between the minimum for 49 templates and the minimum found width 5 templates is around 8x10^-4. Unfortunately, I couldn’t find where and how to change this tolerance of Minos. So I am very grateful for any help or further suggestions.
Cheers, Philipp
Philipp_07_03_RootForum.pdf (308.1 KB)

Hi, I think @jonas or @moneta can help you with that

With the RooMinimizer interface used in RooFit, you should be able to change the tolerance for Minos, by calling RooMinimizer::setEps( tolerance) before calling minos. If it does not work, please let me know and I will open an issue on this.
However, Minos, when finding a new minimum, it should update the central value. If this is not happening, I would like to investigate the issue. Can you please share your code so I can reproduce it ?
Thank you


Hi @moneta,
thank you for your answer. Changing the tolerance of Minos does not work as shown here:

Minuit2Minimizer: Minimize with max-calls 53500 convergence for edm < 0.0001 strategy 1
Minuit2Minimizer::GetMinosError - Run MINOS LOWER error for parameter #105 : mW using max-calls 53500, tolerance 0.01

Minos still stays with a tolerance of 0.01.


Thank you, I will check this. Can you show me the code on how are you doing the minimization ?



This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.