iminuit is a Jupyter-friendly Python frontend to the MINUIT2 C++ library.
It can be used as a general robust function minimisation method, but is most commonly used for likelihood fits of models to data, and to get model parameter error estimates from likelihood profile analysis.
- Supported CPython versions: 3.5+
- Supported PyPy versions: 3.5, 3.6
- Supported platforms: Linux, OSX and Windows.
- PyPI: https://pypi.org/project/iminuit
- Documentation: http://iminuit.readthedocs.org
- Source: https://github.com/scikit-hep/iminuit
- Gitter: https://gitter.im/Scikit-HEP/community
- License: MINUIT2 is LGPL and iminuit is MIT
- Citation: https://doi.org/10.5281/zenodo.3949207
from iminuit import Minuit
def f(x, y, z):
return (x - 2) ** 2 + (y - 3) ** 2 + (z - 4) ** 2
m = Minuit(f)
m.migrad() # run optimiser
print(m.values) # {'x': 2,'y': 3,'z': 4}
m.hesse() # run covariance estimator
print(m.errors) # {'x': 1,'y': 1,'z': 1}