$npx skillfedfor your agent

iminuit

Jupyter-friendly Python frontend for MINUIT2 in C++

With conditionsPyPI Software DevelopmentReleased Nov 2025226.9K downloads / moMIT+LGPLPlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — iminuit-2.32.0-cp310-cp310-macosx_10_9_x86_64.whl · iminuit-2.32.0-cp310-cp310-macosx_11_0_arm64.whl · iminuit-2.32.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
v2.32.0 · released 2025-11-09 · Python >=3.9 · 1 runtime deps: numpy

Yes, if you need parameter estimation with rigorous error analysis. iminuit is production-stable, actively maintained, has no known vulnerabilities, and is the standard Python interface to MINUIT2. The dual MIT/LGPL license requires review for proprietary use. Medium install friction (compiled wheels) is typical for scientific packages and not a barrier on supported platforms.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.9+.
  • Compiled C++ extensions are pre-built for common platforms; building from source requires a C++ compiler.
  • Medium install friction due to compiled C++ extensions, but wheels are available for Python 3.9+ on macOS, Linux, and Windows.

License · maintenance · safety

MIT+LGPL (copyleft) — Dual-licensed under MIT and LGPL (copyleft treatment). Users must comply with LGPL obligations if distributing modifications, or may choose MIT terms for simpler use cases; review the license terms for your deployment model.

last release 2025-11-09 (278 days) · last repo commit 2026-08-10 · 319 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 226,878 downloads/mo, #9,192 on PyPI

Verify before relying

pip install iminuit numpy

from iminuit import Minuit
from iminuit.cost import UnbinnedNLL
import numpy as np

cost = UnbinnedNLL(data, pdf_function)
m = Minuit(cost, param1=initial_value)
m.migrad()
m.hesse()
  • Whether optional dependencies (numba, matplotlib, scipy, ipywidgets) are automatically detected and enabled at install time or require explicit installation
  • Performance characteristics when used with Numba-compiled functions compared to native MINUIT2 or other optimizers
Same gist for agents: .md · .json

What it is and what it does

iminuit wraps MINUIT2, CERN's C++ optimization library, to solve parameter estimation problems in statistics and physics. It is designed for fitting statistical models—finding best-fit parameters and computing error estimates via likelihood profile analysis. The package includes built-in cost functions for common tasks (unbinned and binned maximum-likelihood, least-squares, template fits with error propagation) and can combine multiple cost functions additively. It integrates with Jupyter for interactive fitting and visualization.

The package depends only on numpy at runtime but gains optional features from scipy (Minos intervals), numba (JIT compilation for speed), matplotlib (visualization), and ipywidgets (interactive mode). It supports current Python versions on macOS, Linux, and Windows, and has been actively maintained since 2012 with no known security vulnerabilities.

Use it for

  • Fit a probability density function to unbinned data and extract maximum-likelihood parameter estimates with error bars
  • Perform least-squares fitting to binned histograms with optional robustness to outliers
  • Combine multiple cost functions (e.g., signal + background models) and optimize jointly
  • Compute confidence intervals via Minos profile analysis for arbitrary confidence levels (with scipy)
  • Accelerate likelihood evaluation using Numba-compiled probability functions for high-dimensional data

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need parameter estimation with rigorous error analysis.

iminuit is production-stable, actively maintained, has no known vulnerabilities, and is the standard Python interface to MINUIT2. The dual MIT/LGPL license requires review for proprietary use. Medium install friction (compiled wheels) is typical for scientific packages and not a barrier on supported platforms.

Install

iminuit on PyPI

Before you install

Medium install friction due to compiled C++ extensions, but wheels are available for Python 3.9+ on macOS, Linux, and Windows. The package is actively maintained with recent commits and has been stable since its 2012 release.

Requires Python 3.9+. Compiled C++ extensions are pre-built for common platforms; building from source requires a C++ compiler.

License in practice

Dual-licensed under MIT and LGPL (copyleft treatment). Users must comply with LGPL obligations if distributing modifications, or may choose MIT terms for simpler use cases; review the license terms for your deployment model.

Quickstart

pip install iminuit numpy

from iminuit import Minuit
from iminuit.cost import UnbinnedNLL
import numpy as np

cost = UnbinnedNLL(data, pdf_function)
m = Minuit(cost, param1=initial_value)
m.migrad()
m.hesse()

Verify before relying

  • Whether optional dependencies (numba, matplotlib, scipy, ipywidgets) are automatically detected and enabled at install time or require explicit installation
  • Performance characteristics when used with Numba-compiled functions compared to native MINUIT2 or other optimizers

Package facts

LicenseMIT+LGPL copyleft
Python supportSupports the current Python release >=3.9
Install frictionMedium. Platform-specific wheel
Runtime dependencies
1 package
numpy
MaintenanceActively maintained 278 days since the last release
Last repo commit
First released
Downloads226,878 / month, #9,192 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)License :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: C++Programming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Scientific/Engineering :: MathematicsTopic :: Scientific/Engineering :: PhysicsTopic :: Software Development

Evidence: iminuit-2.32.0-cp310-cp310-macosx_10_9_x86_64.whl; iminuit-2.32.0-cp310-cp310-macosx_11_0_arm64.whl; iminuit-2.32.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; iminuit-2.32.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; iminuit-2.32.0-cp310-cp310-musllinux_1_2_aarch64.whl; iminuit-2.32.0-cp310-cp310-musllinux_1_2_x86_64.whl; iminuit-2.32.0-cp310-cp310-win32.whl; iminuit-2.32.0-cp310-cp310-win_amd64.whl; iminuit-2.32.0-cp311-cp311-macosx_10_9_x86_64.whl; iminuit-2.32.0-cp311-cp311-macosx_11_0_arm64.whl; iminuit-2.32.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; iminuit-2.32.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; iminuit-2.32.0-cp311-cp311-musllinux_1_2_aarch64.whl; iminuit-2.32.0-cp311-cp311-musllinux_1_2_x86_64.whl; iminuit-2.32.0-cp311-cp311-win32.whl; iminuit-2.32.0-cp311-cp311-win_amd64.whl; iminuit-2.32.0-cp311-cp311-win_arm64.whl; iminuit-2.32.0-cp312-cp312-macosx_10_13_x86_64.whl; iminuit-2.32.0-cp312-cp312-macosx_11_0_arm64.whl; iminuit-2.32.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Tags

Capabilities
maximum likelihood fittingleast squares optimizationparameter estimation errorsstatistical model fittingminuit python interfacelikelihood profile analysisjupyter fitting visualization
Topics
statistical-fittingparameter-estimationjupyter-friendly

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “maximum likelihood fitting”

  • iminuitiminuit is a Python interface to MINUIT2 (CERN's C++ optimization…
  • PeakUtilsPeakUtils detects peaks in 1D data and refines their positions…
  • reliabilityReliability engineering and survival analysis library that fits…

Give your agent the search over MCP, or paste the wish link into any chat.

More Software Development packages

typing-extensions Worth it
PyPI · Software Development · released Jul 2026

Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.

PSF-2.0pure Python · 3.9+
1.9Bdownloads / mo
numpy Worth it
PyPI · Software Development · released Aug 2026

NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.

BSD-3-Clause AND 0BSD AND MIT AND Zlib AND CC0-1.0compiled wheel · 3.12+
1.1Bdownloads / mo
fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
annotated-doc With conditions
PyPI · Software Development · released Jul 2026

Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.

MITpure Python · 3.9+
456.2Mdownloads / mo
typer Worth it
PyPI · Software Development · released Aug 2026

Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.

Install it if you are building CLIs in Python.

MITpure Python · 3.10+
369.3Mdownloads / mo
distlib With conditions
PyPI · Software Development · released Jun 2026

Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.

permissive licensepure Python
323.3Mdownloads / mo

See also lmfit · pymc · dask-glm · fastjet · numpyro · nutpie · pystan · PeakUtils · statsmodels · xarray-einstats