What's new? | Help | Directory | Sign in
Google
pyminuit
Minuit numerical function minimization in Python
  
  
  
  
    
Search
for
Updated Jun 21, 2008 by jpivarski
Labels: User-Documentation
Features  
List of PyMinuit's features

What Minuit can do

Given an arbitrary numerical function of N variables, Minuit searches the parameter space for the minimum value of that function. This represents a very broad class of applications, but most often, Minuit is used to fit theoretical curves to experimental data.

In addition to finding the minimum, Minuit computes a great deal of information about the region surrounding that minimum, such as the covariance matrix, the second derivative at the minimum in all N dimensions. In curve-fitting applications, this covariance matrix expresses the uncertainty in the parameters of the fit. Because the region close to the minimum may be only approximately paraboloid, Minuit can also climb the sides of the well and calculate exact error bounds, presenting the results in one or two dimensions.

What PyMinuit can access

Users of high-energy physics programs like ROOT, PAW, mn_fit, and HippoDraw have probably accessed Minuit through the curve-fitting utilities. In some of these programs, it is possible to access Minuit directly, but not easily. (Sorry, everyone disagrees about what "easy" and "simple" mean.) PyMinuit provides access to Minuit's low-level minimization routines in a high-level programming environment, Python.

Through PyMinuit, you can


Comment by janAtSlac, Feb 16, 2008

Are there plans to integrate this package with numpy arrays? I would be interested in that in order to be able to interface more efficiently with other packages like matplotlib and pytables. I might just take a stab at it myself, if nobody is working on that already.

Comment by jpivarski, May 11, 2008

Most of the numerical output is not in the form of arrays--- only scan and maybe contours could benefit in terms of speed, if that's what you mean. If it's just a matter of sending PyMinuit output to a plotting package, why not do something like the following?

>>> import numpy
>>> matplotlib.plotThatWantsArrays(numpy.array(minuit.functionThatReturnsLists()))

Sign in to add a comment