Contours from minos for arbitrary sigma level

I am trying to achieve something that is a modification of some of the standard tasks minimization of chi2 and uncertainties on parameters:

starting from chi2 function, find the parameters contours as obtained from minos, not for a specified value confidence level (1 or 2 … 3 - sigma), but for a specific value of chi2, \hat{\chi^2}.

So far I have been using iminuit package for python, minuit and minos. All my code is written in python.
I have managed to run minos with arbitrary chi2 value, \hat{\chi^2}, by mapping chi2 to sigma, \hat{\chi^2} --> \hat{\sigma}. unfortunately I do not manage to get bidimensional contours for an arbitrary sigma.

I would like to know if this can achieved in root and where I should start looking. Even if I have used only iminuit so far, I am willing to move to root, but I have no experience with it.


In Minos you can compute contours for what0ever confidence level you wish. You need to set the right chi2^2/likelihood values (e.g. using ROOT::Math::MinimizerOptions::SetDefaultErrorDef( value).

The value is the corresponding chi^2 value given the desired probability content.
value = ROOT::Math::chisquared_quantile(prob,2)

For example prob = 0.68 for 1-sigma contour


I am now using PYROOT to integrate ROOT and Python. I was looking to this thread on how to write the function for the minimizer How to pass fcn func defined on python side to ROOT.Fitter?

I found the TMinuit class reference

I have found also this tutorial on how to use minuit in ROOT

I am struggling into integrating all this information together and I cannot find a tutorial about minos that you mention, it would be useful if you could point me to relevant resources on how to minimize chi2 and finding errors.