diff --git a/Fit/Param/RealLimits.cpp b/Fit/Param/RealLimits.cpp index 7cd92523b448d25ac88d2fc665f4d1442c0d029e..7e949377f7010010d897be2c1b5a8980f91c136f 100644 --- a/Fit/Param/RealLimits.cpp +++ b/Fit/Param/RealLimits.cpp @@ -46,11 +46,6 @@ void RealLimits::setLowerLimit(double value) m_has_lower_limit = true; } -void RealLimits::removeLowerLimit() -{ - m_lower_limit = 0.; - m_has_lower_limit = false; -} double RealLimits::max() const { return m_upper_limit; @@ -62,12 +57,6 @@ void RealLimits::setUpperLimit(double value) m_has_upper_limit = true; } -void RealLimits::removeUpperLimit() -{ - m_upper_limit = 0.; - m_has_upper_limit = false; -} - void RealLimits::setLimits(double xmin, double xmax) { setLowerLimit(xmin); diff --git a/Fit/Param/RealLimits.h b/Fit/Param/RealLimits.h index 2b02bbfcfb315a3c7a4527e0a7bc456e989ec142..45e7081acdc34a194b7de9c9e9fb5ab920d5cc8d 100644 --- a/Fit/Param/RealLimits.h +++ b/Fit/Param/RealLimits.h @@ -31,18 +31,12 @@ public: //! Sets lower limit void setLowerLimit(double value); - //! remove lower limit - void removeLowerLimit(); - //! Returns upper limit double max() const; //! Sets upper limit void setUpperLimit(double value); - //! remove upper limit - void removeUpperLimit(); - //! Sets lower and upper limits void setLimits(double xmin, double xmax); diff --git a/Tests/Unit/Fit/RealLimitsTest.cpp b/Tests/Unit/Fit/RealLimitsTest.cpp index 88c4e7e04ae490dfb4f1751e12854e9ce2ebaa01..9bf3e52ab350ec4925468f0415c9b17dfcd5fdf9 100644 --- a/Tests/Unit/Fit/RealLimitsTest.cpp +++ b/Tests/Unit/Fit/RealLimitsTest.cpp @@ -31,47 +31,6 @@ TEST(RealLimitsTest, LimitsSetLimit) EXPECT_TRUE(limits.isInRange(9.0)); EXPECT_FALSE(limits.isInRange(10.0)); EXPECT_FALSE(limits.isInRange(20.0)); - - // [inf, -10.0[ - limits.removeLowerLimit(); - EXPECT_FALSE(limits.isLimited()); - EXPECT_FALSE(limits.hasLowerLimit()); - EXPECT_EQ(0.0, limits.min()); - - EXPECT_TRUE(limits.isInRange(-std::numeric_limits<double>::infinity())); - EXPECT_TRUE(limits.isInRange(-2.0)); - EXPECT_TRUE(limits.isInRange(9.0)); - EXPECT_FALSE(limits.isInRange(10.0)); - EXPECT_FALSE(limits.isInRange(std::numeric_limits<double>::infinity())); - - // [2.1, -10.0[ - limits.setLowerLimit(2.1); - EXPECT_TRUE(limits.hasLowerLimit()); - EXPECT_EQ(2.1, limits.min()); - - EXPECT_FALSE(limits.isInRange(-std::numeric_limits<double>::infinity())); - EXPECT_FALSE(limits.isInRange(2.0)); - EXPECT_TRUE(limits.isInRange(2.1)); - - //[2.1, inf] - limits.removeUpperLimit(); - EXPECT_FALSE(limits.isLimited()); - EXPECT_FALSE(limits.hasUpperLimit()); - EXPECT_EQ(0.0, limits.max()); - - EXPECT_FALSE(limits.isInRange(-std::numeric_limits<double>::infinity())); - EXPECT_FALSE(limits.isInRange(2.0)); - EXPECT_TRUE(limits.isInRange(2.1)); - EXPECT_TRUE(limits.isInRange(20.0)); - EXPECT_TRUE(limits.isInRange(std::numeric_limits<double>::infinity())); - - // [2.1, 2.2[ - limits.setUpperLimit(2.2); - EXPECT_TRUE(limits.hasUpperLimit()); - EXPECT_EQ(2.2, limits.max()); - EXPECT_TRUE(limits.isLimited()); - EXPECT_TRUE(limits.isInRange(2.15)); - EXPECT_FALSE(limits.isInRange(2.2)); } TEST(RealLimitsTest, LimitsLowerLimited) diff --git a/auto/Wrap/libBornAgainFit.py b/auto/Wrap/libBornAgainFit.py index 294270097830ff6eae43edef9e1cbcb42011e45d..f9e17339a24530e24561448dc99267bc0593e5ad 100644 --- a/auto/Wrap/libBornAgainFit.py +++ b/auto/Wrap/libBornAgainFit.py @@ -1674,10 +1674,6 @@ class RealLimits(object): r"""__init__(RealLimits self) -> RealLimits""" _libBornAgainFit.RealLimits_swiginit(self, _libBornAgainFit.new_RealLimits()) - def hasLowerLimit(self): - r"""hasLowerLimit(RealLimits self) -> bool""" - return _libBornAgainFit.RealLimits_hasLowerLimit(self) - def min(self): r"""min(RealLimits self) -> double""" return _libBornAgainFit.RealLimits_min(self) @@ -1686,14 +1682,6 @@ class RealLimits(object): r"""setLowerLimit(RealLimits self, double value)""" return _libBornAgainFit.RealLimits_setLowerLimit(self, value) - def removeLowerLimit(self): - r"""removeLowerLimit(RealLimits self)""" - return _libBornAgainFit.RealLimits_removeLowerLimit(self) - - def hasUpperLimit(self): - r"""hasUpperLimit(RealLimits self) -> bool""" - return _libBornAgainFit.RealLimits_hasUpperLimit(self) - def max(self): r"""max(RealLimits self) -> double""" return _libBornAgainFit.RealLimits_max(self) @@ -1702,10 +1690,6 @@ class RealLimits(object): r"""setUpperLimit(RealLimits self, double value)""" return _libBornAgainFit.RealLimits_setUpperLimit(self, value) - def removeUpperLimit(self): - r"""removeUpperLimit(RealLimits self)""" - return _libBornAgainFit.RealLimits_removeUpperLimit(self) - def setLimits(self, xmin, xmax): r"""setLimits(RealLimits self, double xmin, double xmax)""" return _libBornAgainFit.RealLimits_setLimits(self, xmin, xmax) @@ -1760,6 +1744,14 @@ class RealLimits(object): r"""__ne__(RealLimits self, RealLimits other) -> bool""" return _libBornAgainFit.RealLimits___ne__(self, other) + def hasLowerLimit(self): + r"""hasLowerLimit(RealLimits self) -> bool""" + return _libBornAgainFit.RealLimits_hasLowerLimit(self) + + def hasUpperLimit(self): + r"""hasUpperLimit(RealLimits self) -> bool""" + return _libBornAgainFit.RealLimits_hasUpperLimit(self) + def isLimitless(self): r"""isLimitless(RealLimits self) -> bool""" return _libBornAgainFit.RealLimits_isLimitless(self) diff --git a/auto/Wrap/libBornAgainFit_wrap.cpp b/auto/Wrap/libBornAgainFit_wrap.cpp index 49bb967e8df77eec18cf5bd9576f656acb81d582..27097dcb658358902c8b669ad66ce707559d6ac0 100644 --- a/auto/Wrap/libBornAgainFit_wrap.cpp +++ b/auto/Wrap/libBornAgainFit_wrap.cpp @@ -24190,39 +24190,6 @@ fail: } -SWIGINTERN PyObject *_wrap_RealLimits_hasLowerLimit(PyObject *self, PyObject *args) { - PyObject *resultobj = 0; - RealLimits *arg1 = (RealLimits *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - bool result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RealLimits, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RealLimits_hasLowerLimit" "', argument " "1"" of type '" "RealLimits const *""'"); - } - arg1 = reinterpret_cast< RealLimits * >(argp1); - { - try { - result = (bool)((RealLimits const *)arg1)->hasLowerLimit(); - } catch (const std::exception& ex) { - // message shown in the Python interpreter - const std::string msg { - "BornAgain C++ Exception: " + std::string(ex.what()) - }; - SWIG_exception(SWIG_RuntimeError, msg.c_str()); - } - } - resultobj = SWIG_From_bool(static_cast< bool >(result)); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_RealLimits_min(PyObject *self, PyObject *args) { PyObject *resultobj = 0; RealLimits *arg1 = (RealLimits *) 0 ; @@ -24295,71 +24262,6 @@ fail: } -SWIGINTERN PyObject *_wrap_RealLimits_removeLowerLimit(PyObject *self, PyObject *args) { - PyObject *resultobj = 0; - RealLimits *arg1 = (RealLimits *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RealLimits, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RealLimits_removeLowerLimit" "', argument " "1"" of type '" "RealLimits *""'"); - } - arg1 = reinterpret_cast< RealLimits * >(argp1); - { - try { - (arg1)->removeLowerLimit(); - } catch (const std::exception& ex) { - // message shown in the Python interpreter - const std::string msg { - "BornAgain C++ Exception: " + std::string(ex.what()) - }; - SWIG_exception(SWIG_RuntimeError, msg.c_str()); - } - } - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_RealLimits_hasUpperLimit(PyObject *self, PyObject *args) { - PyObject *resultobj = 0; - RealLimits *arg1 = (RealLimits *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - bool result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RealLimits, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RealLimits_hasUpperLimit" "', argument " "1"" of type '" "RealLimits const *""'"); - } - arg1 = reinterpret_cast< RealLimits * >(argp1); - { - try { - result = (bool)((RealLimits const *)arg1)->hasUpperLimit(); - } catch (const std::exception& ex) { - // message shown in the Python interpreter - const std::string msg { - "BornAgain C++ Exception: " + std::string(ex.what()) - }; - SWIG_exception(SWIG_RuntimeError, msg.c_str()); - } - } - resultobj = SWIG_From_bool(static_cast< bool >(result)); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_RealLimits_max(PyObject *self, PyObject *args) { PyObject *resultobj = 0; RealLimits *arg1 = (RealLimits *) 0 ; @@ -24432,38 +24334,6 @@ fail: } -SWIGINTERN PyObject *_wrap_RealLimits_removeUpperLimit(PyObject *self, PyObject *args) { - PyObject *resultobj = 0; - RealLimits *arg1 = (RealLimits *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RealLimits, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RealLimits_removeUpperLimit" "', argument " "1"" of type '" "RealLimits *""'"); - } - arg1 = reinterpret_cast< RealLimits * >(argp1); - { - try { - (arg1)->removeUpperLimit(); - } catch (const std::exception& ex) { - // message shown in the Python interpreter - const std::string msg { - "BornAgain C++ Exception: " + std::string(ex.what()) - }; - SWIG_exception(SWIG_RuntimeError, msg.c_str()); - } - } - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_RealLimits_setLimits(PyObject *self, PyObject *args) { PyObject *resultobj = 0; RealLimits *arg1 = (RealLimits *) 0 ; @@ -24889,6 +24759,72 @@ fail: } +SWIGINTERN PyObject *_wrap_RealLimits_hasLowerLimit(PyObject *self, PyObject *args) { + PyObject *resultobj = 0; + RealLimits *arg1 = (RealLimits *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + bool result; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RealLimits, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RealLimits_hasLowerLimit" "', argument " "1"" of type '" "RealLimits const *""'"); + } + arg1 = reinterpret_cast< RealLimits * >(argp1); + { + try { + result = (bool)((RealLimits const *)arg1)->hasLowerLimit(); + } catch (const std::exception& ex) { + // message shown in the Python interpreter + const std::string msg { + "BornAgain C++ Exception: " + std::string(ex.what()) + }; + SWIG_exception(SWIG_RuntimeError, msg.c_str()); + } + } + resultobj = SWIG_From_bool(static_cast< bool >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_RealLimits_hasUpperLimit(PyObject *self, PyObject *args) { + PyObject *resultobj = 0; + RealLimits *arg1 = (RealLimits *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + bool result; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RealLimits, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RealLimits_hasUpperLimit" "', argument " "1"" of type '" "RealLimits const *""'"); + } + arg1 = reinterpret_cast< RealLimits * >(argp1); + { + try { + result = (bool)((RealLimits const *)arg1)->hasUpperLimit(); + } catch (const std::exception& ex) { + // message shown in the Python interpreter + const std::string msg { + "BornAgain C++ Exception: " + std::string(ex.what()) + }; + SWIG_exception(SWIG_RuntimeError, msg.c_str()); + } + } + resultobj = SWIG_From_bool(static_cast< bool >(result)); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_RealLimits_isLimitless(PyObject *self, PyObject *args) { PyObject *resultobj = 0; RealLimits *arg1 = (RealLimits *) 0 ; @@ -29850,14 +29786,10 @@ static PyMethodDef SwigMethods[] = { { "vector_pvacuum_double_t_swigregister", vector_pvacuum_double_t_swigregister, METH_O, NULL}, { "vector_pvacuum_double_t_swiginit", vector_pvacuum_double_t_swiginit, METH_VARARGS, NULL}, { "new_RealLimits", _wrap_new_RealLimits, METH_NOARGS, "new_RealLimits() -> RealLimits"}, - { "RealLimits_hasLowerLimit", _wrap_RealLimits_hasLowerLimit, METH_O, "RealLimits_hasLowerLimit(RealLimits self) -> bool"}, { "RealLimits_min", _wrap_RealLimits_min, METH_O, "RealLimits_min(RealLimits self) -> double"}, { "RealLimits_setLowerLimit", _wrap_RealLimits_setLowerLimit, METH_VARARGS, "RealLimits_setLowerLimit(RealLimits self, double value)"}, - { "RealLimits_removeLowerLimit", _wrap_RealLimits_removeLowerLimit, METH_O, "RealLimits_removeLowerLimit(RealLimits self)"}, - { "RealLimits_hasUpperLimit", _wrap_RealLimits_hasUpperLimit, METH_O, "RealLimits_hasUpperLimit(RealLimits self) -> bool"}, { "RealLimits_max", _wrap_RealLimits_max, METH_O, "RealLimits_max(RealLimits self) -> double"}, { "RealLimits_setUpperLimit", _wrap_RealLimits_setUpperLimit, METH_VARARGS, "RealLimits_setUpperLimit(RealLimits self, double value)"}, - { "RealLimits_removeUpperLimit", _wrap_RealLimits_removeUpperLimit, METH_O, "RealLimits_removeUpperLimit(RealLimits self)"}, { "RealLimits_setLimits", _wrap_RealLimits_setLimits, METH_VARARGS, "RealLimits_setLimits(RealLimits self, double xmin, double xmax)"}, { "RealLimits_isInRange", _wrap_RealLimits_isInRange, METH_VARARGS, "RealLimits_isInRange(RealLimits self, double value) -> bool"}, { "RealLimits_lowerLimited", _wrap_RealLimits_lowerLimited, METH_O, "RealLimits_lowerLimited(double bound_value) -> RealLimits"}, @@ -29870,6 +29802,8 @@ static PyMethodDef SwigMethods[] = { { "RealLimits_clamp", _wrap_RealLimits_clamp, METH_VARARGS, "RealLimits_clamp(RealLimits self, double value) -> double"}, { "RealLimits___eq__", _wrap_RealLimits___eq__, METH_VARARGS, "RealLimits___eq__(RealLimits self, RealLimits other) -> bool"}, { "RealLimits___ne__", _wrap_RealLimits___ne__, METH_VARARGS, "RealLimits___ne__(RealLimits self, RealLimits other) -> bool"}, + { "RealLimits_hasLowerLimit", _wrap_RealLimits_hasLowerLimit, METH_O, "RealLimits_hasLowerLimit(RealLimits self) -> bool"}, + { "RealLimits_hasUpperLimit", _wrap_RealLimits_hasUpperLimit, METH_O, "RealLimits_hasUpperLimit(RealLimits self) -> bool"}, { "RealLimits_isLimitless", _wrap_RealLimits_isLimitless, METH_O, "RealLimits_isLimitless(RealLimits self) -> bool"}, { "RealLimits_isPositive", _wrap_RealLimits_isPositive, METH_O, "RealLimits_isPositive(RealLimits self) -> bool"}, { "RealLimits_isNonnegative", _wrap_RealLimits_isNonnegative, METH_O, "RealLimits_isNonnegative(RealLimits self) -> bool"},