MINUIT from Python - Fitting like a boss
Branch: develop
Clone or download
HDembinski Js removal (#320)
Removes JavaScript code in HTML output, to fix rendering bugs of Jupyter Notebooks on Github. This comes at the cost of losing a minor feature - one that not many users will know about - the ability to get a latex version of a few output tables by clicking on a + symbol.
Latest commit fe12fc6 Jan 14, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Minuit sync with upstream ROOT version (#231) Jun 5, 2018
ci-scripts Js removal (#320) Jan 14, 2019
doc added faq Nov 12, 2018
iminuit Js removal (#320) Jan 14, 2019
tutorial Js removal (#320) Jan 14, 2019
.appveyor.yml release 1.3.3 (#315) Sep 12, 2018
.coveragerc coverage stuff Jul 25, 2015
.gitignore update .gitignore Jun 20, 2018
.travis.yml
CITATION ONLINE entry only works for BibLaTeX, so use MISC entry, see https://… Mar 8, 2018
LICENSE Including a clarification note regarding the two licenses used Feb 6, 2014
MANIFEST.in Changes to setup.py and testing Feb 7, 2016
Makefile minor improvement to print Nov 9, 2018
README.rst update url Oct 25, 2018
environment-dev.yml Add scipy to dev env Jun 20, 2018
requirements.txt Add scipy to dev env Jun 20, 2018
setup.py typo Jan 2, 2019
status.rst correct message Jan 2, 2019
test_notebooks.py Fix auto frontend for ipython shell (#305) Sep 10, 2018

README.rst

iminuit

MINUIT from Python - Fitting like a boss

iminuit is a Python interface to the MINUIT C++ package.

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.

In a nutshell

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}