FitBenchmarking 1.4.0__tar.gz → 1.6.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (257) hide show
  1. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/.gitignore +1 -0
  2. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/PKG-INFO +21 -18
  3. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/README.md +8 -7
  4. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cli/checkpoint_handler.py +18 -4
  5. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cli/exception_handler.py +2 -2
  6. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cli/main.py +80 -66
  7. fitbenchmarking-1.6.0/fitbenchmarking/controllers/aoclda_controller.py +305 -0
  8. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/base_controller.py +202 -26
  9. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/bumps_controller.py +24 -12
  10. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/ceres_controller.py +5 -3
  11. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/galahad_controller.py +2 -2
  12. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/gofit_controller.py +1 -3
  13. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/gradient_free_controller.py +6 -6
  14. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/gsl_controller.py +24 -2
  15. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/lmfit_controller.py +4 -4
  16. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/mantid_controller.py +1 -1
  17. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/matlab_curve_controller.py +1 -1
  18. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/matlab_mixin.py +4 -1
  19. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/scipy_controller.py +7 -4
  20. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/scipy_ls_controller.py +1 -1
  21. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/theseus_controller.py +2 -2
  22. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/core/fitting_benchmarking.py +52 -8
  23. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/core/results_output.py +161 -91
  24. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cost_func/hellinger_nlls_cost_func.py +1 -1
  25. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cost_func/loglike_nlls_cost_func.py +1 -1
  26. fitbenchmarking-1.6.0/fitbenchmarking/cost_func/nlls_base_cost_func.py +195 -0
  27. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cost_func/nlls_cost_func.py +3 -3
  28. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cost_func/poisson_cost_func.py +11 -2
  29. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cost_func/weighted_nlls_cost_func.py +7 -2
  30. fitbenchmarking-1.6.0/fitbenchmarking/cost_func/whitened_nlls_cost_func.py +134 -0
  31. fitbenchmarking-1.6.0/fitbenchmarking/jacobian/gvar_jacobian.py +60 -0
  32. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/fitbenchmark_parser.py +32 -9
  33. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/fitting_problem.py +24 -2
  34. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/hogben_parser.py +3 -0
  35. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/horace_parser.py +4 -1
  36. fitbenchmarking-1.6.0/fitbenchmarking/parsing/lsqfit_parser.py +123 -0
  37. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/mantiddev_parser.py +1 -6
  38. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/base_table.py +149 -31
  39. fitbenchmarking-1.6.0/fitbenchmarking/results_processing/compare_scatter.py +1502 -0
  40. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/compare_table.py +5 -1
  41. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/energy_usage_table.py +5 -1
  42. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/performance_profiler.py +7 -1
  43. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/plots.py +52 -12
  44. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/problem_summary_page.py +13 -1
  45. fitbenchmarking-1.6.0/fitbenchmarking/results_processing/scripts/compare_scatter/handle_link.js +11 -0
  46. fitbenchmarking-1.6.0/fitbenchmarking/results_processing/scripts/compare_scatter/resize_observer.js +22 -0
  47. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/tables.py +13 -18
  48. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/css/custom_style.css +3 -2
  49. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/js/table.js +5 -3
  50. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/problem_index_page.html +1 -2
  51. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/problem_summary_page_template.html +25 -11
  52. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/table_template.html +61 -12
  53. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/checkpoint.py +10 -3
  54. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/exceptions.py +13 -0
  55. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/fitbm_result.py +72 -4
  56. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/log.py +4 -2
  57. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/misc.py +13 -2
  58. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/options.py +23 -0
  59. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/pyproject.toml +40 -9
  60. fitbenchmarking-1.4.0/fitbenchmarking/cost_func/nlls_base_cost_func.py +0 -107
  61. fitbenchmarking-1.4.0/fitbenchmarking/templates/js/plotly.js +0 -3882
  62. fitbenchmarking-1.4.0/fitbenchmarking/templates/js/tex-mml-chtml.js +0 -1
  63. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/LICENSE.txt +0 -0
  64. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/__init__.py +0 -0
  65. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/__main__.py +0 -0
  66. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/ENSO.dat +0 -0
  67. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/Gauss3.dat +0 -0
  68. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/Hahn1.dat +0 -0
  69. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/Kirby2.dat +0 -0
  70. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/Lanczos1.dat +0 -0
  71. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/Lanczos2.dat +0 -0
  72. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/META.txt +0 -0
  73. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/MGH17.dat +0 -0
  74. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/Misra1c.dat +0 -0
  75. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/Misra1d.dat +0 -0
  76. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/ENSO.hes +0 -0
  77. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/ENSO.jac +0 -0
  78. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Gauss3.hes +0 -0
  79. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Gauss3.jac +0 -0
  80. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Hahn1.hes +0 -0
  81. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Hahn1.jac +0 -0
  82. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Kirby2.hes +0 -0
  83. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Kirby2.jac +0 -0
  84. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Lanczos1.hes +0 -0
  85. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Lanczos1.jac +0 -0
  86. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Lanczos2.hes +0 -0
  87. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Lanczos2.jac +0 -0
  88. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/MGH17.hes +0 -0
  89. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/MGH17.jac +0 -0
  90. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Misra1c.hes +0 -0
  91. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Misra1c.jac +0 -0
  92. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Misra1d.hes +0 -0
  93. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/average_difficulty/data_files/Misra1d.jac +0 -0
  94. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/Bennett5.dat +0 -0
  95. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/BoxBOD.dat +0 -0
  96. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/Eckerle4.dat +0 -0
  97. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/META.txt +0 -0
  98. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/MGH09.dat +0 -0
  99. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/MGH10.dat +0 -0
  100. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/Rat42.dat +0 -0
  101. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/Rat43.dat +0 -0
  102. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/Thurber.dat +0 -0
  103. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Bennett5.hes +0 -0
  104. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Bennett5.jac +0 -0
  105. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/BoxBOD.hes +0 -0
  106. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/BoxBOD.jac +0 -0
  107. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Eckerle4.hes +0 -0
  108. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Eckerle4.jac +0 -0
  109. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/MGH09.hes +0 -0
  110. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/MGH09.jac +0 -0
  111. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/MGH10.hes +0 -0
  112. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/MGH10.jac +0 -0
  113. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Rat42.hes +0 -0
  114. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Rat42.jac +0 -0
  115. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Rat43.hes +0 -0
  116. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Rat43.jac +0 -0
  117. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Thurber.hes +0 -0
  118. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/high_difficulty/data_files/Thurber.jac +0 -0
  119. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/Chwirut1.dat +0 -0
  120. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/Chwirut2.dat +0 -0
  121. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/DanWood.dat +0 -0
  122. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/Gauss1.dat +0 -0
  123. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/Gauss2.dat +0 -0
  124. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/Lanczos3.dat +0 -0
  125. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/META.txt +0 -0
  126. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/Misra1a.dat +0 -0
  127. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/Misra1b.dat +0 -0
  128. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Chwirut1.hes +0 -0
  129. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Chwirut1.jac +0 -0
  130. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Chwirut2.hes +0 -0
  131. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Chwirut2.jac +0 -0
  132. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/DanWood.hes +0 -0
  133. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/DanWood.jac +0 -0
  134. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Gauss1.hes +0 -0
  135. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Gauss1.jac +0 -0
  136. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Gauss2.hes +0 -0
  137. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Gauss2.jac +0 -0
  138. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Lanczos3.hes +0 -0
  139. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Lanczos3.jac +0 -0
  140. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Misra1a.hes +0 -0
  141. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Misra1a.jac +0 -0
  142. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Misra1b.hes +0 -0
  143. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/benchmark_problems/NIST/low_difficulty/data_files/Misra1b.jac +0 -0
  144. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cli/__init__.py +0 -0
  145. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/__init__.py +0 -0
  146. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/controller_factory.py +0 -0
  147. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/dfo_controller.py +0 -0
  148. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/horace_controller.py +0 -0
  149. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/levmar_controller.py +0 -0
  150. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/matlab_controller.py +0 -0
  151. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/matlab_curve_controller/eval_r.m +0 -0
  152. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/matlab_opt_controller.py +0 -0
  153. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/matlab_stats_controller.py +0 -0
  154. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/minuit_controller.py +0 -0
  155. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/nlopt_controller.py +0 -0
  156. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/paramonte_controller.py +0 -0
  157. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/ralfit_controller.py +0 -0
  158. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/scipy_go_controller.py +0 -0
  159. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/controllers/scipy_leastsq_controller.py +0 -0
  160. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/core/__init__.py +0 -0
  161. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cost_func/__init__.py +0 -0
  162. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cost_func/base_cost_func.py +0 -0
  163. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/cost_func/cost_func_factory.py +0 -0
  164. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/eot/FiraSans-Bold.eot +0 -0
  165. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/eot/FiraSans-BoldItalic.eot +0 -0
  166. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/eot/FiraSans-Italic.eot +0 -0
  167. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/eot/FiraSans-Light.eot +0 -0
  168. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/eot/FiraSans-LightItalic.eot +0 -0
  169. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/eot/FiraSans-Medium.eot +0 -0
  170. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/eot/FiraSans-MediumItalic.eot +0 -0
  171. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/eot/FiraSans-Regular.eot +0 -0
  172. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/ttf/FiraSans-Bold.ttf +0 -0
  173. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/ttf/FiraSans-BoldItalic.ttf +0 -0
  174. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/ttf/FiraSans-Italic.ttf +0 -0
  175. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/ttf/FiraSans-Light.ttf +0 -0
  176. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/ttf/FiraSans-LightItalic.ttf +0 -0
  177. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/ttf/FiraSans-Medium.ttf +0 -0
  178. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/ttf/FiraSans-MediumItalic.ttf +0 -0
  179. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/ttf/FiraSans-Regular.ttf +0 -0
  180. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff/FiraSans-Bold.woff +0 -0
  181. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff/FiraSans-BoldItalic.woff +0 -0
  182. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff/FiraSans-Italic.woff +0 -0
  183. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff/FiraSans-Light.woff +0 -0
  184. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff/FiraSans-LightItalic.woff +0 -0
  185. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff/FiraSans-Medium.woff +0 -0
  186. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff/FiraSans-MediumItalic.woff +0 -0
  187. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff/FiraSans-Regular.woff +0 -0
  188. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff2/FiraSans-Bold.woff2 +0 -0
  189. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff2/FiraSans-BoldItalic.woff2 +0 -0
  190. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff2/FiraSans-Italic.woff2 +0 -0
  191. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff2/FiraSans-Light.woff2 +0 -0
  192. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff2/FiraSans-LightItalic.woff2 +0 -0
  193. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff2/FiraSans-Medium.woff2 +0 -0
  194. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff2/FiraSans-MediumItalic.woff2 +0 -0
  195. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FiraSans/woff2/FiraSans-Regular.woff2 +0 -0
  196. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FontAwesome/fontawesome-webfont.eot +0 -0
  197. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FontAwesome/fontawesome-webfont.svg +0 -0
  198. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FontAwesome/fontawesome-webfont.ttf +0 -0
  199. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FontAwesome/fontawesome-webfont.woff +0 -0
  200. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/fonts/FontAwesome/fontawesome-webfont.woff2 +0 -0
  201. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/hessian/__init__.py +0 -0
  202. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/hessian/analytic_hessian.py +0 -0
  203. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/hessian/base_hessian.py +0 -0
  204. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/hessian/best_available_hessian.py +0 -0
  205. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/hessian/hessian_factory.py +0 -0
  206. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/hessian/numdifftools_hessian.py +0 -0
  207. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/hessian/scipy_hessian.py +0 -0
  208. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/__init__.py +0 -0
  209. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/analytic_jacobian.py +0 -0
  210. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/base_jacobian.py +0 -0
  211. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/best_available_jacobian.py +0 -0
  212. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/default_jacobian.py +0 -0
  213. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/jacobian_factory.py +0 -0
  214. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/numdifftools_jacobian.py +0 -0
  215. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/scipy_jacobian.py +0 -0
  216. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/jacobian/scripts/NIST-Jacobians.nb +0 -0
  217. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/__init__.py +0 -0
  218. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/bal_parser.py +0 -0
  219. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/base_parser.py +0 -0
  220. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/ivp_parser.py +0 -0
  221. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/mantid_parser.py +0 -0
  222. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/nist_data_functions.py +0 -0
  223. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/nist_parser.py +0 -0
  224. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/parser_factory.py +0 -0
  225. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/sasview_parser.py +0 -0
  226. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/parsing/sscanss_parser.py +0 -0
  227. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/__init__.py +0 -0
  228. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/acc_table.py +0 -0
  229. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/fitting_report.py +0 -0
  230. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/local_min_table.py +0 -0
  231. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/results_processing/runtime_table.py +0 -0
  232. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/css/dropdown_style.css +0 -0
  233. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/css/main_style.css +0 -0
  234. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/css/math_style.css +0 -0
  235. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/css/table_style.css +0 -0
  236. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/fitting_report_template.html +0 -0
  237. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/images/accuracy.png +0 -0
  238. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/images/compare.png +0 -0
  239. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/images/energy.png +0 -0
  240. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/images/fitbenchmarking_logo.png +0 -0
  241. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/images/local_min.png +0 -0
  242. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/images/runtime.png +0 -0
  243. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/index_page.html +0 -0
  244. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/js/dropdown.js +0 -0
  245. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/js/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff +0 -0
  246. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/js/output/chtml/fonts/woff-v2/MathJax_Math-Italic.woff +0 -0
  247. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/js/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff +0 -0
  248. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/js/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff +0 -0
  249. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/js/output/chtml/fonts/woff-v2/MathJax_Zero.woff +0 -0
  250. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/templates/style_sheet.py +0 -0
  251. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/__init__.py +0 -0
  252. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/create_dirs.py +0 -0
  253. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/debug.py +0 -0
  254. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/matlab_engine.py +0 -0
  255. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/output_grabber.py +0 -0
  256. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/timer.py +0 -0
  257. {fitbenchmarking-1.4.0 → fitbenchmarking-1.6.0}/fitbenchmarking/utils/write_files.py +0 -0
@@ -14,4 +14,5 @@ docs/source/contributors/module_index
14
14
  .vscode/
15
15
  .eggs/
16
16
  *.out
17
+ *.diff
17
18
  powermetrics_log.txt
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: FitBenchmarking
3
- Version: 1.4.0
3
+ Version: 1.6.0
4
4
  Summary: FitBenchmarking: A tool for comparing fitting software
5
5
  Project-URL: Homepage, https://fitbenchmarking.github.io
6
6
  Project-URL: Documentation, https://fitbenchmarking.readthedocs.io/en/stable
@@ -13,21 +13,24 @@ Keywords: benchmark,comparison,fitting,least squares,optimisation
13
13
  Classifier: License :: OSI Approved :: BSD License
14
14
  Classifier: Operating System :: OS Independent
15
15
  Classifier: Programming Language :: Python :: 3
16
- Requires-Python: >=3.10.1
17
- Requires-Dist: codecarbon<2.7,>=2.5.1
16
+ Requires-Python: >=3.11
17
+ Requires-Dist: codecarbon>=3.2.6
18
18
  Requires-Dist: configparser
19
19
  Requires-Dist: dash
20
+ Requires-Dist: dash-bootstrap-components
20
21
  Requires-Dist: docutils
21
22
  Requires-Dist: jinja2
22
23
  Requires-Dist: lxml
23
24
  Requires-Dist: matplotlib>=2.0
24
25
  Requires-Dist: numpy
25
26
  Requires-Dist: pandas>=1.3
26
- Requires-Dist: plotly>=6.6.0
27
- Requires-Dist: scipy<1.16.0,>=0.18
27
+ Requires-Dist: plotly>=7.0.0
28
+ Requires-Dist: scipy>=1.16
28
29
  Requires-Dist: tqdm>=4.60
30
+ Provides-Extra: aoclda
31
+ Requires-Dist: aoclda; (platform_system == 'Linux') and extra == 'aoclda'
29
32
  Provides-Extra: bumps
30
- Requires-Dist: bumps<1.0.0; extra == 'bumps'
33
+ Requires-Dist: bumps; extra == 'bumps'
31
34
  Provides-Extra: dev
32
35
  Requires-Dist: coverage[toml]>=6.3; extra == 'dev'
33
36
  Requires-Dist: coveralls; extra == 'dev'
@@ -46,6 +49,8 @@ Provides-Extra: gofit
46
49
  Requires-Dist: gofit; extra == 'gofit'
47
50
  Provides-Extra: gradient-free
48
51
  Requires-Dist: gradient-free-optimizers[sklearn]; extra == 'gradient-free'
52
+ Provides-Extra: gvar
53
+ Requires-Dist: gvar; extra == 'gvar'
49
54
  Provides-Extra: hogben
50
55
  Requires-Dist: hogben; extra == 'hogben'
51
56
  Provides-Extra: levmar
@@ -53,9 +58,6 @@ Requires-Dist: levmar; extra == 'levmar'
53
58
  Provides-Extra: lmfit
54
59
  Requires-Dist: emcee>=3.1.0; extra == 'lmfit'
55
60
  Requires-Dist: lmfit; extra == 'lmfit'
56
- Provides-Extra: mantid
57
- Requires-Dist: h5py<3,>=2.10.0; extra == 'mantid'
58
- Requires-Dist: pyyaml>=5.4.1; extra == 'mantid'
59
61
  Provides-Extra: matlab
60
62
  Requires-Dist: dill; extra == 'matlab'
61
63
  Provides-Extra: minuit
@@ -67,14 +69,14 @@ Requires-Dist: numdifftools; extra == 'numdifftools'
67
69
  Provides-Extra: paramonte
68
70
  Requires-Dist: paramonte; extra == 'paramonte'
69
71
  Provides-Extra: sas
70
- Requires-Dist: sasmodels; extra == 'sas'
72
+ Requires-Dist: sasmodels==1.0.12; extra == 'sas'
71
73
  Requires-Dist: tinycc; (platform_system == 'Windows') and extra == 'sas'
72
74
  Description-Content-Type: text/markdown
73
75
 
74
- [![Build Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/release.yml?style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/release.yml?query=branch%3Av1.4.0)
75
- [![Tests Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/main.yml?label=tests&style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/main.yml?query=branch%3Av1.4.0)
76
+ [![Build Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/release.yml?style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/release.yml?query=branch%3Av1.6.0)
77
+ [![Tests Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/main.yml?label=tests&style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/main.yml?query=branch%3Av1.6.0)
76
78
  [![Install Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/install.yml?label=install&style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/install.yml)
77
- [![Documentation Status](https://img.shields.io/readthedocs/fitbenchmarking/v1.4.0?style=flat-square)](https://fitbenchmarking.readthedocs.io/en/v1.4.0)
79
+ [![Documentation Status](https://img.shields.io/readthedocs/fitbenchmarking/v1.6.0?style=flat-square)](https://fitbenchmarking.readthedocs.io/en/v1.6.0)
78
80
  [![Coverage Status](https://img.shields.io/coveralls/github/fitbenchmarking/fitbenchmarking.svg?style=flat-square)](https://coveralls.io/github/fitbenchmarking/fitbenchmarking)
79
81
  [![Chat](https://img.shields.io/badge/chat-CompareFitMinimizers-lightgrey.svg?style=flat-square&logo=slack)](https://slack.com/)
80
82
  [![Zenodo](https://img.shields.io/badge/Zenodo-10.5281/zenodo.15546207-blue.svg?style=flat-square)](https://zenodo.org/records/15546207)
@@ -83,10 +85,11 @@ Description-Content-Type: text/markdown
83
85
 
84
86
  FitBenchmarking is an open source tool for comparing different minimizers/fitting frameworks. FitBenchmarking is cross platform and we support Windows, Linux and Mac OS. For questions, feature requests or any other inquiries, please open an issue on GitHub.
85
87
 
86
- - **Installation Instructions:** https://fitbenchmarking.readthedocs.io/en/v1.4.0/users/install_instructions/index.html
87
- - **User Documentation & Example Usage:** https://fitbenchmarking.readthedocs.io/en/v1.4.0/users/index.html
88
- - **Community Guidelines:** https://fitbenchmarking.readthedocs.io/en/v1.4.0/contributors/guidelines.html
89
- - **Automated Tests:** Run via GitHub Actions, https://github.com/fitbenchmarking/fitbenchmarking/actions, and tests are documented at https://fitbenchmarking.readthedocs.io/en/v1.4.0/users/tests.html
88
+ - [Installation Instructions](https://fitbenchmarking.readthedocs.io/en/v1.6.0)
89
+ > **Note:** Please ensure that you are using the latest version of FitBenchmarking in order to stay up to date with security fixes.
90
+ - [User Documentation & Example Usage](https://fitbenchmarking.readthedocs.io/en/v1.6.0)
91
+ - [Community Guidelines](https://fitbenchmarking.readthedocs.io/en/v1.6.0)
92
+ - Automated Tests are [run via GitHub Actions](https://github.com/fitbenchmarking/fitbenchmarking/actions), please see [our documentation](https://fitbenchmarking.readthedocs.io/en/v1.6.0) for more information.
90
93
 
91
94
  The package is the result of a collaboration between STFC’s Scientific Computing Department and ISIS Neutron and Muon Facility and the Diamond Light Source. We also would like to acknowledge support from:
92
95
 
@@ -1,7 +1,7 @@
1
- [![Build Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/release.yml?style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/release.yml?query=branch%3Av1.4.0)
2
- [![Tests Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/main.yml?label=tests&style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/main.yml?query=branch%3Av1.4.0)
1
+ [![Build Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/release.yml?style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/release.yml?query=branch%3Av1.6.0)
2
+ [![Tests Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/main.yml?label=tests&style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/main.yml?query=branch%3Av1.6.0)
3
3
  [![Install Status](https://img.shields.io/github/actions/workflow/status/fitbenchmarking/fitbenchmarking/install.yml?label=install&style=flat-square)](https://github.com/fitbenchmarking/fitbenchmarking/actions/workflows/install.yml)
4
- [![Documentation Status](https://img.shields.io/readthedocs/fitbenchmarking/v1.4.0?style=flat-square)](https://fitbenchmarking.readthedocs.io/en/v1.4.0)
4
+ [![Documentation Status](https://img.shields.io/readthedocs/fitbenchmarking/v1.6.0?style=flat-square)](https://fitbenchmarking.readthedocs.io/en/v1.6.0)
5
5
  [![Coverage Status](https://img.shields.io/coveralls/github/fitbenchmarking/fitbenchmarking.svg?style=flat-square)](https://coveralls.io/github/fitbenchmarking/fitbenchmarking)
6
6
  [![Chat](https://img.shields.io/badge/chat-CompareFitMinimizers-lightgrey.svg?style=flat-square&logo=slack)](https://slack.com/)
7
7
  [![Zenodo](https://img.shields.io/badge/Zenodo-10.5281/zenodo.15546207-blue.svg?style=flat-square)](https://zenodo.org/records/15546207)
@@ -10,10 +10,11 @@
10
10
 
11
11
  FitBenchmarking is an open source tool for comparing different minimizers/fitting frameworks. FitBenchmarking is cross platform and we support Windows, Linux and Mac OS. For questions, feature requests or any other inquiries, please open an issue on GitHub.
12
12
 
13
- - **Installation Instructions:** https://fitbenchmarking.readthedocs.io/en/v1.4.0/users/install_instructions/index.html
14
- - **User Documentation & Example Usage:** https://fitbenchmarking.readthedocs.io/en/v1.4.0/users/index.html
15
- - **Community Guidelines:** https://fitbenchmarking.readthedocs.io/en/v1.4.0/contributors/guidelines.html
16
- - **Automated Tests:** Run via GitHub Actions, https://github.com/fitbenchmarking/fitbenchmarking/actions, and tests are documented at https://fitbenchmarking.readthedocs.io/en/v1.4.0/users/tests.html
13
+ - [Installation Instructions](https://fitbenchmarking.readthedocs.io/en/v1.6.0)
14
+ > **Note:** Please ensure that you are using the latest version of FitBenchmarking in order to stay up to date with security fixes.
15
+ - [User Documentation & Example Usage](https://fitbenchmarking.readthedocs.io/en/v1.6.0)
16
+ - [Community Guidelines](https://fitbenchmarking.readthedocs.io/en/v1.6.0)
17
+ - Automated Tests are [run via GitHub Actions](https://github.com/fitbenchmarking/fitbenchmarking/actions), please see [our documentation](https://fitbenchmarking.readthedocs.io/en/v1.6.0) for more information.
17
18
 
18
19
  The package is the result of a collaboration between STFC’s Scientific Computing Department and ISIS Neutron and Muon Facility and the Diamond Light Source. We also would like to acknowledge support from:
19
20
 
@@ -20,8 +20,11 @@ from fitbenchmarking.core.results_output import (
20
20
  save_results,
21
21
  )
22
22
  from fitbenchmarking.utils.checkpoint import Checkpoint
23
+ from fitbenchmarking.utils.log import get_logger
23
24
  from fitbenchmarking.utils.options import find_options_file
24
25
 
26
+ LOGGER = get_logger()
27
+
25
28
 
26
29
  def get_parser() -> ArgumentParser:
27
30
  """
@@ -188,7 +191,17 @@ def generate_report(options_file="", additional_options=None, debug=False):
188
191
  all_dirs.append(directory)
189
192
 
190
193
  index_page = create_index_page(options, list(results), all_dirs)
191
- open_browser(index_page, options, pp_dfs_all_prob_sets)
194
+
195
+ # flatten results dictionary because open_browser expects a list of
196
+ # fitting results
197
+
198
+ flat_results = [
199
+ result for result_list in results.values() for result in result_list
200
+ ]
201
+
202
+ open_browser(
203
+ index_page, options, pp_dfs_all_prob_sets, results=flat_results
204
+ )
192
205
 
193
206
 
194
207
  @exception_handler
@@ -270,19 +283,20 @@ def merge_data_sets(
270
283
  :param debug: Enable debugging output.
271
284
  :type debug: bool
272
285
  """
286
+
273
287
  if len(files) < 2:
274
288
  return
275
289
 
276
- print(f"Loading {files[0]}...")
290
+ LOGGER.info("Loading %s...", files[0])
277
291
  with open(files[0], encoding="utf-8") as f:
278
292
  A = json.load(f)
279
293
  for to_merge in files[1:]:
280
- print(f"Merging {to_merge}...")
294
+ LOGGER.info("Merging %s...", to_merge)
281
295
  with open(to_merge, encoding="utf-8") as f:
282
296
  B = json.load(f)
283
297
  A = merge(A, B, strategy=strategy)
284
298
 
285
- print(f"Writing to {output}...")
299
+ LOGGER.info("Writing to %s...", output)
286
300
  with open(output, "w", encoding="utf-8") as f:
287
301
  json.dump(A, f, indent=2)
288
302
 
@@ -35,7 +35,7 @@ def exception_handler(f):
35
35
  if debug:
36
36
  raise
37
37
 
38
- LOGGER.error(str(e))
38
+ LOGGER.error(e, exc_info=debug)
39
39
  sys.exit(1)
40
40
 
41
41
  except Exception as e:
@@ -43,7 +43,7 @@ def exception_handler(f):
43
43
  if debug:
44
44
  raise
45
45
 
46
- LOGGER.error(str(e))
46
+ LOGGER.error(e, exc_info=debug)
47
47
  sys.exit(1)
48
48
 
49
49
  return wrapped
@@ -366,6 +366,80 @@ of the Fitbenchmarking docs. """
366
366
  return parser
367
367
 
368
368
 
369
+ def parse_options_from_cli(args: argparse.Namespace) -> dict:
370
+ """
371
+ parse the command line options, and apply any options which should override
372
+ the options file or default options.
373
+ :param args: The command line arguments.
374
+ :type args: argparse.Namespace
375
+
376
+ :return: A dictionary of options to be used in the benchmarking run.
377
+ :rtype: dict
378
+ """
379
+
380
+ # Dictionary of options which can be set via argparse
381
+ # rather than from an ini file or from the default options
382
+ options_dictionary = {
383
+ "results_dir": args.results_dir,
384
+ "num_runs": args.num_runs,
385
+ "algorithm_type": args.algorithm_type,
386
+ "software": args.software,
387
+ "jac_method": args.jac_method,
388
+ "cost_func_type": args.cost_func_type,
389
+ "comparison_mode": args.comparison_mode,
390
+ "table_type": args.table_type,
391
+ "file_name": args.logging_file_name,
392
+ "level": args.level,
393
+ "external_output": args.external_output,
394
+ "run_name": args.run_name,
395
+ "runtime_metric": args.runtime_metric,
396
+ "port": args.port,
397
+ "ip_address": args.ip_address,
398
+ }
399
+ # Check if make_plots in options.py should be overridden, and if so,
400
+ # add to options_dictionary
401
+ if args.make_plots:
402
+ options_dictionary["make_plots"] = True
403
+ elif args.dont_make_plots:
404
+ options_dictionary["make_plots"] = False
405
+
406
+ # Check if results_browser in options.py should be overridden, and if so,
407
+ # add to options_dictionary
408
+ if args.results_browser:
409
+ options_dictionary["results_browser"] = True
410
+ elif args.no_results_browser:
411
+ options_dictionary["results_browser"] = False
412
+
413
+ # Check if run_dash in options.py should be overridden, and if so,
414
+ # add to options_dictionary
415
+ if args.run_dash:
416
+ options_dictionary["run_dash"] = True
417
+ elif args.dont_run_dash:
418
+ options_dictionary["run_dash"] = False
419
+
420
+ # Check if check_jacobian in options.py should be overridden, and if so,
421
+ # add to options_dictionary
422
+ if args.check_jacobian:
423
+ options_dictionary["check_jacobian"] = True
424
+ elif args.dont_check_jacobian:
425
+ options_dictionary["check_jacobian"] = False
426
+
427
+ # Check if benchmark in options.py should be overridden, and if so,
428
+ # add to options_dictionary
429
+ if args.pbar:
430
+ options_dictionary["pbar"] = True
431
+ elif args.no_pbar:
432
+ options_dictionary["pbar"] = False
433
+
434
+ # Check if log_append in options.py should be overridden, and if so,
435
+ # add to options_dictionary
436
+ if args.append_log:
437
+ options_dictionary["append"] = True
438
+ elif args.overwrite_log:
439
+ options_dictionary["append"] = False
440
+ return options_dictionary
441
+
442
+
369
443
  @exception_handler
370
444
  def run(problem_sets, additional_options=None, options_file="", debug=False):
371
445
  """
@@ -410,7 +484,7 @@ def run(problem_sets, additional_options=None, options_file="", debug=False):
410
484
  result_dir = []
411
485
  pp_dfs_all_prob_sets = {}
412
486
  cp = Checkpoint(options=options)
413
-
487
+ results = {}
414
488
  try:
415
489
  for sub_dir in problem_sets:
416
490
  # Create full path for the directory that holds a group of
@@ -510,9 +584,8 @@ def run(problem_sets, additional_options=None, options_file="", debug=False):
510
584
  "You can also set 'results_dir' in an options file.",
511
585
  options.results_dir,
512
586
  )
513
-
514
587
  index_page = create_index_page(options, group_labels, result_dir)
515
- open_browser(index_page, options, pp_dfs_all_prob_sets)
588
+ open_browser(index_page, options, pp_dfs_all_prob_sets, results=results)
516
589
 
517
590
 
518
591
  def main():
@@ -524,84 +597,25 @@ def main():
524
597
 
525
598
  if len(sys.argv) == 1:
526
599
  if not args.problem_sets[0].exists():
527
- print(
600
+ LOGGER.error(
528
601
  "The default problem set has either been "
529
602
  "deleted or moved. Please specify a file "
530
603
  "path to a different problem set with the "
531
604
  "-p option."
532
605
  )
533
606
  sys.exit(1)
534
- print(
607
+ LOGGER.info(
535
608
  "Running NIST average_difficulty problem set "
536
609
  "with scipy minimizers \n"
537
610
  )
538
611
 
539
- # Dictionary of options which can be set via argparse
540
- # rather than from an ini file or from the default options
541
- options_dictionary = {
542
- "results_dir": args.results_dir,
543
- "num_runs": args.num_runs,
544
- "algorithm_type": args.algorithm_type,
545
- "software": args.software,
546
- "jac_method": args.jac_method,
547
- "cost_func_type": args.cost_func_type,
548
- "comparison_mode": args.comparison_mode,
549
- "table_type": args.table_type,
550
- "file_name": args.logging_file_name,
551
- "level": args.level,
552
- "external_output": args.external_output,
553
- "run_name": args.run_name,
554
- "runtime_metric": args.runtime_metric,
555
- "port": args.port,
556
- "ip_address": args.ip_address,
557
- }
558
-
559
- # Check if make_plots in options.py should be overridden, and if so,
560
- # add to options_dictionary
561
- if args.make_plots:
562
- options_dictionary["make_plots"] = True
563
- elif args.dont_make_plots:
564
- options_dictionary["make_plots"] = False
565
-
566
- # Check if results_browser in options.py should be overridden, and if so,
567
- # add to options_dictionary
568
- if args.results_browser:
569
- options_dictionary["results_browser"] = True
570
- elif args.no_results_browser:
571
- options_dictionary["results_browser"] = False
572
-
573
- # Check if run_dash in options.py should be overridden, and if so,
574
- # add to options_dictionary
575
- if args.run_dash:
576
- options_dictionary["run_dash"] = True
577
- elif args.dont_run_dash:
578
- options_dictionary["run_dash"] = False
579
-
580
- # Check if check_jacobian in options.py should be overridden, and if so,
581
- # add to options_dictionary
582
- if args.check_jacobian:
583
- options_dictionary["check_jacobian"] = True
584
- elif args.dont_check_jacobian:
585
- options_dictionary["check_jacobian"] = False
586
-
587
- # Check if benchmark in options.py should be overridden, and if so,
588
- # add to options_dictionary
589
- if args.pbar:
590
- options_dictionary["pbar"] = True
591
- elif args.no_pbar:
592
- options_dictionary["pbar"] = False
593
-
594
- # Check if log_append in options.py should be overridden, and if so,
595
- # add to options_dictionary
596
- if args.append_log:
597
- options_dictionary["append"] = True
598
- elif args.overwrite_log:
599
- options_dictionary["append"] = False
612
+ options_dictionary = parse_options_from_cli(args)
600
613
 
601
614
  if args.load_checkpoint:
602
615
  generate_report(
603
616
  options_file=args.options_file,
604
617
  additional_options=options_dictionary,
618
+ debug=args.debug_mode,
605
619
  )
606
620
  else:
607
621
  run(