next up previous contents
Next: statistic Up: Setting Commands Previous: cosmo

            method: change the fitting method

Set the minimization method.

Syntax:         method <algorithm> [<# of trials/evaluations> [<critical delta>] [method-specific options]

where <algorithm> is the method in use and the other arguments are control values for the minimization. Their meanings are explained under the individual methods. Note that all but Lev-Marq and Anneal require the MINUIT library from CERN to be linked into XSPEC. If anyof the MINUIT library methods are set then the error command will use the MINUIT MINOS command to find the confidence regions.

leven

method leven{[<# of eval> [<crit delta>]]

The default XSPEC minimization method using the modified Levenberg-Marquardt based on the CURFIT routine from Bevington. <# of trials> is the number of trial vectors before the user is prompted to say whether they want to continue fitting.  <crit delta> is the convergence criterion.

migrad

method migrad{[<# of eval> [<crit delta>]]

The MINUIT MIGRAD method. <# of eval> is the number of function evaluations to perform before giving up and <crit delta> is the convergence criterion.

XSPEC12.0 includes version94.1 of the CERN MINUIT library – dated August 1998. The manual for the library is included with the XSPEC12 documentation and can be accessed by

XSPEC12>help minuit

When minuit is used, the output from the fitting procedure is different from xspec’s normal behavior. It is written to the file mn_output.log in the current directory. For uncertainty calculations (the error command), XSPEC calls the equivalent MINUIT implementation (MNERRS).

            Following the advice in section 5 of the MINUIT manual, instead of providing the full range of MINUIT methods, most of which are said to be inferior, we have chosen to give access to the robust migrad algorithm.

Advice

migrad uses only first derivatives of models, and part of its operation is to approximate the Hessian, or second derivative matrix. The Levenberg-Marquadt assumes that the model is twice [numerically] differentiable, and calculates the Hessian explicitly. Thus the latter is the method of choice for analytical models.