From 1f4df44b7324c28af6ef627f422df9c85fc4cc9e Mon Sep 17 00:00:00 2001 From: Andreas Pedersen Date: Wed, 13 Nov 2024 14:06:08 +0100 Subject: [PATCH] pr response --- src/easyscience/fitting/minimizers/minimizer_bumps.py | 2 -- src/easyscience/fitting/minimizers/minimizer_dfo.py | 2 +- tests/integration_tests/Fitting/test_fitter.py | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/easyscience/fitting/minimizers/minimizer_bumps.py b/src/easyscience/fitting/minimizers/minimizer_bumps.py index 838647d..ee9f75f 100644 --- a/src/easyscience/fitting/minimizers/minimizer_bumps.py +++ b/src/easyscience/fitting/minimizers/minimizer_bumps.py @@ -112,8 +112,6 @@ def fit( minimizer_kwargs.update(engine_kwargs) if tolerance is not None: - if 0.1 < tolerance: - raise ValueError('Tolerance must be equal or smaller than 0.1') minimizer_kwargs['ftol'] = tolerance # tolerance for change in function value minimizer_kwargs['xtol'] = tolerance # tolerance for change in parameter value, could be an independent value if max_evaluations is not None: diff --git a/src/easyscience/fitting/minimizers/minimizer_dfo.py b/src/easyscience/fitting/minimizers/minimizer_dfo.py index 6f3a0b4..8bf09ef 100644 --- a/src/easyscience/fitting/minimizers/minimizer_dfo.py +++ b/src/easyscience/fitting/minimizers/minimizer_dfo.py @@ -281,7 +281,7 @@ def _prepare_kwargs(tolerance: Optional[float] = None, max_evaluations: Optional if max_evaluations is not None: kwargs['maxfun'] = max_evaluations # max number of function evaluations if tolerance is not None: - if 0.1 < tolerance: + if 0.1 < tolerance: # dfo module throws errer if larger value raise ValueError('Tolerance must be equal or smaller than 0.1') kwargs['rhoend'] = tolerance # size of the trust region return kwargs diff --git a/tests/integration_tests/Fitting/test_fitter.py b/tests/integration_tests/Fitting/test_fitter.py index 3c5bab2..cf17a79 100644 --- a/tests/integration_tests/Fitting/test_fitter.py +++ b/tests/integration_tests/Fitting/test_fitter.py @@ -170,7 +170,7 @@ def test_basic_max_evaluations(fit_engine): assert "Objective has been called MAXFUN times" in str(e) -@pytest.mark.parametrize("fit_engine,tolerance", [(None, 10), (AvailableMinimizers.LMFit, 10), (AvailableMinimizers.Bumps, 0.1), (AvailableMinimizers.DFO, 0.1)]) +@pytest.mark.parametrize("fit_engine,tolerance", [(None, 10), (AvailableMinimizers.LMFit, 10), (AvailableMinimizers.Bumps, 10), (AvailableMinimizers.DFO, 0.1)]) def test_basic_tolerance(fit_engine, tolerance): ref_sin = AbsSin(0.2, np.pi) sp_sin = AbsSin(0.354, 3.05)