diff --git a/Core/Fitting/FitObjective.cpp b/Core/Fitting/FitObjective.cpp index 365bb6d9e7769506ab62d7009e133fc4c1ef3f29..8cfdf21b33b1c63405e3ffdb2a58ea4a6a5dacf6 100644 --- a/Core/Fitting/FitObjective.cpp +++ b/Core/Fitting/FitObjective.cpp @@ -195,13 +195,6 @@ std::vector<double> FitObjective::evaluate_residuals(const mumufit::Parameters& return result; } -size_t FitObjective::numberOfFitElements() const -{ - return std::accumulate( - m_fit_objects.begin(), m_fit_objects.end(), 0u, - [](size_t acc, auto& obj) -> size_t { return acc + obj.numberOfFitElements(); }); -} - //! Returns simulation result in the form of SimulationResult. SimulationResult FitObjective::simulationResult(size_t i_item) const { @@ -394,7 +387,6 @@ std::vector<double> FitObjective::composeArray(DataPairAccessor getter) const return (m_fit_objects[0].*getter)(); std::vector<double> result; - result.reserve(numberOfFitElements()); for (auto& pair : m_fit_objects) { std::vector<double> array = (pair.*getter)(); std::move(array.begin(), array.end(), std::back_inserter(result)); diff --git a/Core/Fitting/FitObjective.h b/Core/Fitting/FitObjective.h index 83c92816c0c7b392200231287741377da54e8a6c..7279a309d92c4d9e6b8fcdfcbe0f7b5ca476ce34 100644 --- a/Core/Fitting/FitObjective.h +++ b/Core/Fitting/FitObjective.h @@ -73,8 +73,6 @@ public: virtual std::vector<double> evaluate_residuals(const mumufit::Parameters& params); - size_t numberOfFitElements() const; - SimulationResult simulationResult(size_t i_item = 0) const; SimulationResult experimentalData(size_t i_item = 0) const; SimulationResult uncertaintyData(size_t i_item = 0) const; diff --git a/Core/Fitting/SimDataPair.cpp b/Core/Fitting/SimDataPair.cpp index d7040678e57de23712a4088e534628b1eb08aae9..303c645553e5b9791e621000043dc86aba132559 100644 --- a/Core/Fitting/SimDataPair.cpp +++ b/Core/Fitting/SimDataPair.cpp @@ -152,11 +152,6 @@ bool SimDataPair::containsUncertainties() const return static_cast<bool>(m_raw_uncertainties); } -size_t SimDataPair::numberOfFitElements() const -{ - return m_simulation ? m_simulation->intensityMapSize() : 0; -} - SimulationResult SimDataPair::simulationResult() const { if (m_sim_data.empty()) diff --git a/Core/Fitting/SimDataPair.h b/Core/Fitting/SimDataPair.h index a852a11a837b2b786ef1b4b7a546c7626b06b671..2c980066fcc80d80f23fa52898487d2e8592e3db 100644 --- a/Core/Fitting/SimDataPair.h +++ b/Core/Fitting/SimDataPair.h @@ -44,9 +44,6 @@ public: bool containsUncertainties() const; - //! Returns the number of elements in the fit area - size_t numberOfFitElements() const; - //! Returns the result of last computed simulation SimulationResult simulationResult() const; diff --git a/Tests/Functional/PyFit/fitobjective_api.py b/Tests/Functional/PyFit/fitobjective_api.py index b3f2bbe5fd82d6b006e540905c041201145b4056..153f47856bedcf13f9fc409d91eff3d0b7d556d6 100644 --- a/Tests/Functional/PyFit/fitobjective_api.py +++ b/Tests/Functional/PyFit/fitobjective_api.py @@ -64,12 +64,10 @@ class FitObjectiveAPITest(unittest.TestCase): objective = ba.FitObjective() objective.addSimulationAndData(builder.build_simulation, data, 1) self.assertEqual(builder.m_ncalls, 0) - self.assertEqual(objective.numberOfFitElements(), 0) # running objective function objective.evaluate(pars) self.assertEqual(builder.m_ncalls, 1) - self.assertEqual(objective.numberOfFitElements(), builder.size()) self.assertEqual(builder.m_pars["par0"], 0) self.assertEqual(builder.m_pars["par1"], 1) diff --git a/Tests/Unit/Core/FitObjectiveTest.cpp b/Tests/Unit/Core/FitObjectiveTest.cpp index f0f1503efca0ae2e7ebd969daf2e8bec106aa466..b6f9620a14682289c40cbdde894ed1575cdda09f 100644 --- a/Tests/Unit/Core/FitObjectiveTest.cpp +++ b/Tests/Unit/Core/FitObjectiveTest.cpp @@ -33,11 +33,6 @@ TEST_F(FitObjectiveTest, twoDatasets) mumufit::Parameters params; objective.evaluate(params); - // number of fit elements should be the sum of two dataset sizes - EXPECT_EQ(helper1.m_builder_calls, 1u); - EXPECT_EQ(helper2.m_builder_calls, 1u); - EXPECT_EQ(objective.numberOfFitElements(), helper1.size() + helper2.size()); - // checking flat array with experimental data made of two OutputData std::vector<double> expected_exp1(helper1.size(), exp_value1); std::vector<double> expected_exp2(helper2.size(), exp_value2); diff --git a/Tests/Unit/Core/SimDataPairTest.cpp b/Tests/Unit/Core/SimDataPairTest.cpp index 4b61c95c1421447ca5824b8727631fa60449c501..0b574c467106f421ba33215d90b885c57bca6dfe 100644 --- a/Tests/Unit/Core/SimDataPairTest.cpp +++ b/Tests/Unit/Core/SimDataPairTest.cpp @@ -19,7 +19,6 @@ TEST_F(SimDataPairTest, standardPair) SimDataPair obj(builder, *helper.createData(exp_value), nullptr, dataset_weight); // default state, no simulation has been called yet - EXPECT_EQ(obj.numberOfFitElements(), 0u); EXPECT_THROW(obj.uncertainties_array(), std::runtime_error); EXPECT_THROW(obj.user_weights_array(), std::runtime_error); EXPECT_THROW(obj.simulation_array(), std::runtime_error); @@ -33,19 +32,10 @@ TEST_F(SimDataPairTest, standardPair) obj.execSimulation(params); EXPECT_EQ(helper.m_builder_calls, 1u); - // checking simulated and experimental data - const size_t expected_size = helper.m_nx * helper.m_ny; - EXPECT_EQ(obj.numberOfFitElements(), expected_size); - EXPECT_EQ(obj.simulationResult().size(), expected_size); - EXPECT_EQ(obj.experimentalData().size(), expected_size); - // checking arrays auto array = obj.simulation_array(); - EXPECT_EQ(array.size(), expected_size); EXPECT_DOUBLE_EQ(std::accumulate(array.begin(), array.end(), 0), 0.0); array = obj.experimental_array(); - EXPECT_EQ(obj.experimental_array().size(), expected_size); - EXPECT_DOUBLE_EQ(std::accumulate(array.begin(), array.end(), 0), expected_size * exp_value); // calling builder second time obj.execSimulation(params); @@ -53,11 +43,8 @@ TEST_F(SimDataPairTest, standardPair) // checking arrays array = obj.simulation_array(); - EXPECT_EQ(array.size(), expected_size); EXPECT_DOUBLE_EQ(std::accumulate(array.begin(), array.end(), 0), 0.0); array = obj.experimental_array(); - EXPECT_EQ(obj.experimental_array().size(), expected_size); - EXPECT_DOUBLE_EQ(std::accumulate(array.begin(), array.end(), 0), expected_size * exp_value); } TEST_F(SimDataPairTest, moveTest) @@ -78,30 +65,10 @@ TEST_F(SimDataPairTest, moveTest) obj.execSimulation(params); EXPECT_EQ(helper.m_builder_calls, 1u); - // checking simulated and experimental data - const size_t expected_size = helper.m_nx * helper.m_ny; - EXPECT_EQ(obj.numberOfFitElements(), expected_size); - EXPECT_EQ(obj.simulationResult().size(), expected_size); - EXPECT_EQ(obj.experimentalData().size(), expected_size); - // Making clone. SimDataPair moved = std::move(obj); - // Checking clone properties - EXPECT_EQ(moved.numberOfFitElements(), expected_size); - EXPECT_EQ(moved.uncertainties_array().size(), expected_size); - EXPECT_EQ(moved.user_weights_array().size(), expected_size); - EXPECT_EQ(moved.simulation_array().size(), expected_size); - EXPECT_EQ(moved.experimental_array().size(), expected_size); - EXPECT_EQ(moved.simulationResult().size(), expected_size); - EXPECT_EQ(moved.experimentalData().size(), expected_size); - // calling clone's builder once moved.execSimulation(params); EXPECT_EQ(helper.m_builder_calls, 2u); - - // checking simulated and experimental data - EXPECT_EQ(moved.numberOfFitElements(), expected_size); - EXPECT_EQ(moved.simulationResult().size(), expected_size); - EXPECT_EQ(moved.experimentalData().size(), expected_size); } diff --git a/auto/Wrap/doxygenCore.i b/auto/Wrap/doxygenCore.i index 3e8b335425f0808b55694a902aaeb1b70898534e..cbd5b073f4100bafbee516878fe2b60b9f375ff4 100644 --- a/auto/Wrap/doxygenCore.i +++ b/auto/Wrap/doxygenCore.i @@ -446,9 +446,6 @@ weight of dataset in metric calculations %feature("docstring") FitObjective::evaluate_residuals "std::vector< double > FitObjective::evaluate_residuals(const mumufit::Parameters ¶ms) "; -%feature("docstring") FitObjective::numberOfFitElements "size_t FitObjective::numberOfFitElements() const -"; - %feature("docstring") FitObjective::simulationResult "SimulationResult FitObjective::simulationResult(size_t i_item=0) const Returns simulation result in the form of SimulationResult. @@ -1780,11 +1777,6 @@ C++ includes: SimDataPair.h %feature("docstring") SimDataPair::containsUncertainties "bool SimDataPair::containsUncertainties() const "; -%feature("docstring") SimDataPair::numberOfFitElements "size_t SimDataPair::numberOfFitElements() const - -Returns the number of elements in the fit area. -"; - %feature("docstring") SimDataPair::simulationResult "SimulationResult SimDataPair::simulationResult() const Returns the result of last computed simulation. diff --git a/auto/Wrap/libBornAgainCore.py b/auto/Wrap/libBornAgainCore.py index 836afc8be4eff24530adec25e234711ca5ed7d7f..40cc556e6f19589159c64e39f5b522ca4d032144 100644 --- a/auto/Wrap/libBornAgainCore.py +++ b/auto/Wrap/libBornAgainCore.py @@ -2947,14 +2947,6 @@ class FitObjective(object): """ return _libBornAgainCore.FitObjective_evaluate_residuals_cpp(self, params) - def numberOfFitElements(self): - r""" - numberOfFitElements(FitObjective self) -> size_t - size_t FitObjective::numberOfFitElements() const - - """ - return _libBornAgainCore.FitObjective_numberOfFitElements(self) - def simulationResult(self, i_item=0): r""" simulationResult(FitObjective self, size_t i_item=0) -> SimulationResult diff --git a/auto/Wrap/libBornAgainCore_wrap.cpp b/auto/Wrap/libBornAgainCore_wrap.cpp index f37a4a94266b37c53c4355b6227ec3246d64c250..45ab2d483db70841e4d1ffd7bf6fdf3852e824b9 100644 --- a/auto/Wrap/libBornAgainCore_wrap.cpp +++ b/auto/Wrap/libBornAgainCore_wrap.cpp @@ -36224,29 +36224,6 @@ fail: } -SWIGINTERN PyObject *_wrap_FitObjective_numberOfFitElements(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - FitObjective *arg1 = (FitObjective *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - size_t result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_FitObjective, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FitObjective_numberOfFitElements" "', argument " "1"" of type '" "FitObjective const *""'"); - } - arg1 = reinterpret_cast< FitObjective * >(argp1); - result = ((FitObjective const *)arg1)->numberOfFitElements(); - resultobj = SWIG_From_size_t(static_cast< size_t >(result)); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_FitObjective_simulationResult__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; FitObjective *arg1 = (FitObjective *) 0 ; @@ -43942,11 +43919,6 @@ static PyMethodDef SwigMethods[] = { "std::vector< double > FitObjective::evaluate_residuals(const mumufit::Parameters ¶ms)\n" "\n" ""}, - { "FitObjective_numberOfFitElements", _wrap_FitObjective_numberOfFitElements, METH_O, "\n" - "FitObjective_numberOfFitElements(FitObjective self) -> size_t\n" - "size_t FitObjective::numberOfFitElements() const\n" - "\n" - ""}, { "FitObjective_simulationResult", _wrap_FitObjective_simulationResult, METH_VARARGS, "\n" "FitObjective_simulationResult(FitObjective self, size_t i_item=0) -> SimulationResult\n" "SimulationResult FitObjective::simulationResult(size_t i_item=0) const\n"