MINUIT, now MINUIT2, is a numerical minimization software library developed at the European Organization for Nuclear Research (CERN). It provides several algorithms that search for parameter values that minimize a user-defined function, and compute confidence intervals for the parameters by scanning the function near the minimum.
The software was originally developed in the FORTRAN programming language by staff physicist Fred James in the 1970s,[1] and maintained until 1996 (version 96.03). As part of the ROOT project, the software was ported using the C++ language, and renamed MINUIT2.
The software provides five minimization algorithms, that can be selected by simple input commands to the program. The recommended default algorithm MIGRAD is described as "a variable-metric method with inexact line search, a stable metric updating scheme, and checks for positive-definiteness".[2]
The program is widely used in particle physics and thousands of published papers cite use of MINUIT.[3] In the early 2000s, Fred James started a project to implement MINUIT in C++ using object-oriented programming.[4] MINUIT2 is an optional package in the ROOT release.[5][6][7] As of October 2014[update] the latest version is 5.34.14, released on 24 January 2014.[5] A Java port was developed,[8] and a Python frontend to the C++ code is available.[9]
References
edit- ^ James, F. MINUIT - Function Minimization and Error Analysis Reference Manual (PDF) (Report). 94.1. CERN Program Library Long Writeup. D506. Archived from the original on 2008-05-26.
- ^ "Which Minimizer to Use".
- ^ "Literature search for papers mentioning MINUIT". Inspire -High-Energy Physics Content. Will search current content for "MINUIT"
- ^ "Home page for new C++ MINUIT". 2008-06-25. Archived from the original on 2010-04-11.
- ^ a b "ROOT Reference Guide: Minuit2". root.cern. Retrieved 24 January 2022. Also has link to download free-standing version, without using ROOT. In January 2022 the file was Minuit2-5.34.14.tar.gz.
- ^ "Home page for new C++ MINUIT". 2008-06-25. Archived from the original on 2010-04-11.
- ^ "ROOT Reference Guide: Minuit2 Minimization Library". root.cern. Current for the date accessed.
- ^ "freehep-jminuit - Project Summary". FreeHEP. 14 September 2006.
- ^ "iminuit - Jupyter-friendly Python frontend to the MINUIT2 C++ package". GitHub. Updated as required; v2.9.0 released in January 2022
External links
edit- F. James and M. Roos, Minuit: A System for Function Minimization and Analysis of the Parameter Errors and Correlations, Comput.Phys.Commun. 10 (1975) 343-367