Fitbenchmarking

Latest version: v1.0.0

Safety actively analyzes 623343 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 4

1.0.0

What's Changed
In the year since the previous release of FitBenchmarking we've made the following changes:
New Features
- New environmental impact table
- Tables can now be regenerated from a checkpoint file
- Options can now be set from the command line
- An optional progress bar has been added
- More RALFit options are now exposed to FitBenchmarking
- The text output is now CSV
- Auto-displaying of results is now optional
- Tutorial videos have been added
- The FitBenchmarking log now prints the date and time
- Plots can now be chosen to have log or linear scales
- Fonts on the tables have been changed to improve contrast
- Text in table cells no longer wrap
Parsers
- HORACE is now supported
Fitting Software
- NLOPT is supported
- GOFit is supported
- Google's Ceres is now supported
- SciPy solvers that require Hessians are now supported
- LMFit is supported
- The DREAM minimizer from BUMPS is now supported
- Meta's Theseus is now supported
- HERBERT's LM is supported
- MINUIT's SIMPLEX is supported

1.0.0rc1

What's Changed
* Add abort test for max runtime by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1026
* Update minimizer names in dropdown by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1027
* Ensure max runtime is checked in matlab controllers by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1028
* Add a minimum python version by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1030
* Remove unneeded noqa by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1035
* 882 lm herbert by tyronerees in https://github.com/fitbenchmarking/fitbenchmarking/pull/1033
* Support for bumps 0.9.0 (remove mp, add scipy.leastsq) by tyronerees in https://github.com/fitbenchmarking/fitbenchmarking/pull/1041
* Move start_matlab call so it is only called once by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1034
* Fix install after testing on iPython notebook by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1042
* Enable max runtime in curve fitting by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1036
* Fix the poisson cost func test by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1050
* Add GOFit controller by jfowkes in https://github.com/fitbenchmarking/fitbenchmarking/pull/1054
* Enable mistune bump from 0.8.4 to 2.x in /docs by dependabot in https://github.com/fitbenchmarking/fitbenchmarking/pull/1057
* Set certain options input via argparse by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1061
* Add a progress bar for the benchmark problems (1055) by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1063
* Fix "external software" marked as "default" 1056 by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1073
* Fix docstring formatting by tyronerees in https://github.com/fitbenchmarking/fitbenchmarking/pull/1075
* Change the ralfit minimizer used for regression tests to gn by tyronerees in https://github.com/fitbenchmarking/fitbenchmarking/pull/1080
* Headings in options 678 by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1076
* Add ceres software by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1072
* Update the versions of our github actions by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1088
* reorder dockerfile and update docs by tyronerees in https://github.com/fitbenchmarking/fitbenchmarking/pull/1091
* CSV output by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1094
* Make auto display results optional by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1093
* Option to turn off the progress bar by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1099
* Tutorial videos upload by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1103
* Rename test data folder from mock_data to test_files by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1092
* Remove failing pygsl from linting ci by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1100
* Add date and time to fitbenchmarking log 1090 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1095
* Tutorial videos improvements for new users by Shanrahan16 in https://github.com/fitbenchmarking/fitbenchmarking/pull/1107
* Add scipy Hessian solvers 1016 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1110
* Add lmfit software 1096 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1109
* add bumps dream minimizer 1017 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1105
* Support use of BUMPS with Hellinger cost functions by tyronerees in https://github.com/fitbenchmarking/fitbenchmarking/pull/1116
* Add support for bounds (Ceres solver) 1111 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1112
* Remove hessian required minimizers for scipy default 1114 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1119
* Avoid parsing Mantid function strings by jfowkes in https://github.com/fitbenchmarking/fitbenchmarking/pull/1077
* allow plot scale options 1064 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1121
* Fix badges by jfowkes in https://github.com/fitbenchmarking/fitbenchmarking/pull/1127
* theseus controller 1052 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1089
* update ralfit options by tyronerees in https://github.com/fitbenchmarking/fitbenchmarking/pull/1085
* Enhancement/883 Add horace parser by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1120
* remove redundant herbert_off by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1133
* Improve the matlab installation docs 983 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1143
* Remove python2 code by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1139
* Add more minuit minimizers 1135 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1136
* Add missing help spaces 1125 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1134
* Add more tests for fb minimizers 1137 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1138
* Omit matlab files fom coverage reports by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1147
* Add checkpointing by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1058
* Add prefix to title of webpage 1123 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1142
* Updates the output tables font colours by RabiyaF in https://github.com/fitbenchmarking/fitbenchmarking/pull/1141
* Updates the table text span by RabiyaF in https://github.com/fitbenchmarking/fitbenchmarking/pull/1151
* Improve support for missing data in profiler and local_min by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1152
* Pass fitting_link as absolute path internally by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1150
* Fix empty cell scrolling behaviour in tables by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1154
* add nlopt software 1037 by joshuadkitenge in https://github.com/fitbenchmarking/fitbenchmarking/pull/1104
* Validate cost_func against initial problem by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1160
* Add joss badge and CFF file by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1162
* Add environmental impact table by jess-farmer in https://github.com/fitbenchmarking/fitbenchmarking/pull/1161
* Pin codecarbon by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1174
* Add instructions for levmar on newer python versions by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1167
* Store all benchmarking runtimes into the FittingResults class by RabiyaF in https://github.com/fitbenchmarking/fitbenchmarking/pull/1172
* Handle CITATION.cff in release code and docs by AndrewLister-STFC in https://github.com/fitbenchmarking/fitbenchmarking/pull/1176

New Contributors
* Shanrahan16 made their first contribution in https://github.com/fitbenchmarking/fitbenchmarking/pull/1061
* joshuadkitenge made their first contribution in https://github.com/fitbenchmarking/fitbenchmarking/pull/1063
* RabiyaF made their first contribution in https://github.com/fitbenchmarking/fitbenchmarking/pull/1141

**Full Changelog**: https://github.com/fitbenchmarking/fitbenchmarking/compare/v0.2.0...v1.0.0-rc1

0.2.0

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

0.2.0rc3

0.2.0rc2

0.2.0rc1

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)
- `scipy_go` supported
- `gradient_free_optimizers` supported

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`

Page 1 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.