Options that control the benchmarking process are set here.
Software is used to select the fitting software to benchmark, this should be a newline-separated list. Available options are:
bumps
(default software)dfo
(default software)gsl
(external software -- seeexternal-instructions
)mantid
(external software -- seeexternal-instructions
)minuit
(default software)ralfit
(external software -- seeexternal-instructions
)scipy
(default software)scipy_ls
(default software)
Default are bumps
, dfo
, minuit
, scipy
, and scipy_ls
[FITTING]
software: bumps
dfo
minuit
scipy
scipy_ls
Warning
Software must be listed to be here to be run. Any minimizers set in minimizer_option
will not be run if the software is not also present in this list.
Sets the number of runs to average each fit over.
Default is 5
[FITTING]
num_runs: 5
This is used to select what type of algorithm is used within a specific software. The options are:
all
- all minimizersls
- least-squares fitting algorithmsderiv_free
- derivative free algorithms (these are algorithms that do not require an information about derivatives. For example, theSimplex
method inMantid
does not require derivative information butlm-scipy-no-jac
inscipy_ls
does but the derivative is handle internally within the software package)general
- minimizers which solve a generic min f(x)
Default is all
[FITTING]
algorithm_type: all
Warning
Choosing an option other than all
may deselect certain minimizers set in the options file
This will switch between weighted and unweighted least squares. If use_errors=True
, and no errors are supplied, then e[i]
will be set to sqrt(abs(y[i]))
. Errors below 1.0e-8
will be clipped to that value.
Default is True
(yes
/no
can also be used)
[FITTING]
use_errors: yes
This sets the Jacobian used. Current Jacobian methods are:
SciPyFD
- denotes the use of SciPy's finite difference Jacobian approximations
Default is SciPyFD
[FITTING]
jac_method: SciPyFD
Sets the numerical method used in conjunction with the Jacobian method. Currently scipy.optimize._numdiff.approx_derivative are the only methods implemented to calculate finite difference Jacobians. Scipy options are given as below:
2point
- use the first order accuracy forward or backward difference.3point
- use central difference in interior points and the second order accuracy forward or backward difference near the boundary.cs
- use a complex-step finite difference scheme. This assumes that the user function is real-valued and can be analytically continued to the complex plane. Otherwise, produces bogus results.
Default is 2point
[FITTING]
num_method: 2point