MINOS error is zero for all parameters. except the first one


Minos returns zero for all asymmetric parameter errors except the first parameter. This is while status is “SUCCESSFUL”. The weird thing is that if I switch any parameter with par0, I will get nonzero asymmetric errors for the new parameter 0, and zero for all other parameters including the one that before switching was par0 and had nonzero error. I am using
to access the errors. I was wondering why is that so and how I can get nonzero asymmetric error for all of the parameters. Any help is appreciated.


_ROOT Version: 6.18/04
_Platform: macOS Catalina 10.15.4
Compiler: Not Provided

This is strange. Can you post the full Minos log file obtained in verbose mode, so I can understand…
In case it is still unclear I would need your program reproducing this



Hi Lorenzo

The problem gets solved when I use minuit->Command() instead of minuit->mnexcm() to call MINOS. The outputs for minuit->mnexcm() shows that only first parameter’s asymmetric error is calculated. It is while when I call minuit->Command(), Minos calculates all of the parameters’ asymmetric errors. Please find attached the outputs of both minuit->mnexcm() and Command->mnexcm().

Verbose mode for Command.pdf (49.4 KB)
Verbose mode for mnexcm.pdf (35.5 KB)

Note that mnexcm computes the Minos errors for only one parameter (the parameter number starts from 1 in the old Minuit), so depending what you pass in the command, what you have is expected.
Note also that there is a C++ interface for Minuit (both old Minuit, TMinuit, and the new implementation, Minuit2), which computes also the Minos errors. See the class ROOT::Math::Minimizer,