There is a newer version of the record available.

Published May 31, 2022 | Version v0.2.0
Software Open

FitBenchmarking: an open source Python package comparing data fitting software

  • 1. STFC, ISIS Neutron and Muon facility
  • 2. STFC, Scientific Computing Department
  • 3. STFC, Scientific Computing Department/Plymouth Marine Laboratory
  • 4. STFC, Technology Department
  • 5. STFC, ISIS Neutron and Muon facility/Culham Centre for Fusion Energy
  • 6. STFC, ISIS Neutron and Muon facility/European Southern Observatory
  • 7. Diamond Light Source
  • 8. Diamond Light Source/European Spallation Source

Description

What's Changed

FitBenchmarking v0.2.0 is the result of 10 months of work, and we've introduced a lot of changes to the FitBenchmarking package.

This release now requires Python 3.7.1 or greater.

New Features
  • Support for different cost functions was added; see below
  • Improved support for different jacobians; see below
  • Better handling of conflicting options
  • More descriptions of the methods in docs
  • Box constraints supported
  • Licences of the software used documented
  • Minimizers are collected into types
  • Second derivatives (Hessians) supported, and can be compared
  • Added an option to select algorithms by type
  • Results directory can be set from the command line
  • A maximum runtime can be selected for each solver
Parsers
  • Mantid's Crystal Field objective is supported
  • Native parser has been refactored
  • IVP parser has been added
Fitting Software
  • iminuit>2.0 is supported
  • levmar supported
  • Matlab supported (basic, and curve_fitting, statistics and optimization toolboxes)
  • horace supported (Matlab package)
  • scipy_go supported
  • gradient_free_optimizers supported
  • bumps support has been updated to version 0.9.0
Cost functions
  • NLLS and WeightedNLLSs cost functions replace the defaults
  • HellingerNLLS cost function
  • Poisson cost function added
  • Multiple cost functions can be compared at once
Jacobians
  • numdifftools Jacobians have been added
  • Analytic Jacobians added for NIST and SIF file formats
  • Solver default Jacobians have been added
  • Multiple Jacobians can be compared at once
Tables
  • the generation of these has been refactored
  • Failed fits are highlighted in the tables
  • Customizable colourmaps in the tables
  • Header row and leading column of results table is frozen
  • Problem descriptions displayed in fitting report
  • Accuracy and runtime displayed in fitting report
  • Problem summary page has been added
Data sets
  • more SASView examples added
  • Data Assimilation (IVP) examples added
  • CrystalField examples added
  • Global optimization SIF file examples added
Breaking Changes
  • Support is dropped for iminuit<2.0
  • lm-scipy-no-jac option under scipy_ls in [MINIMIZERS] has been removed (this is now available under the solver default jacobian)
  • results_dir has moved from [PLOTTING] into [OUTPUT] in the options file
  • use_errors has been removed as an option, and this functionality is controlled by the choice of cost function
  • The Jacobian method SciPyFD is no longer supported; this has been renamed to scipy
  • colour_scale option in [PLOTTING] is no longer supported; this is replaced by the colour_map
  • bumps minimizers name changes: lm-bumps -> scipy-leastsq and mp -> lm-bumps

Full Changelog: https://github.com/fitbenchmarking/fitbenchmarking/compare/v0.1.5...v0.2.0

Files

fitbenchmarking/fitbenchmarking-v0.2.0.zip

Files (12.7 MB)

Name Size Download all
md5:2851cb4a7877dfc02949197509368060
12.7 MB Preview Download

Additional details