From 4f7f2c239904be0af4ee96d1565dd336d2e287a9 Mon Sep 17 00:00:00 2001 From: astrojhgu Date: Wed, 28 Oct 2009 16:32:42 +0000 Subject: git-svn-id: file:///home/svn/opt_utilities@88 ed2142bd-67ad-457f-ba7c-d818d4011675 --- core/fitter.hpp | 18 ++++++++++++++++-- example/Makefile | 4 ++-- example/test_fitter.cpp | 2 +- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/core/fitter.hpp b/core/fitter.hpp index cb2c799..bea0d5c 100644 --- a/core/fitter.hpp +++ b/core/fitter.hpp @@ -1033,7 +1033,7 @@ namespace opt_utilities } if(rhs.p_data_set!=0) { - load_data(*(rhs.p_data_set)); + set_data_set(*(rhs.p_data_set)); } optengine=rhs.optengine; } @@ -1058,7 +1058,7 @@ namespace opt_utilities } if(rhs.p_data_set!=0) { - load_data(*(rhs.p_data_set)); + set_data_set(*(rhs.p_data_set)); } optengine=rhs.optengine; @@ -1230,6 +1230,20 @@ namespace opt_utilities } } + void set_data_set(const data_set& da) + { + if(p_data_set!=0) + { + //delete p_data_set; + p_data_set->destroy(); + } + p_data_set=da.clone(); + if(p_statistic!=0) + { + p_statistic->set_fitter(*this); + } + } + /** get the data set that have been loaded \return the const reference of inner data_set diff --git a/example/Makefile b/example/Makefile index dc05276..fe3e168 100644 --- a/example/Makefile +++ b/example/Makefile @@ -4,10 +4,10 @@ all:$(target) test_optimizer:test_optimizer.cpp - g++ -o $@ $< -I ../ -O2 -g + g++ -o $@ $< -I ../ -O3 -g test_fitter:test_fitter.cpp - g++ -o $@ $< -I ../ -O2 -g + g++ -o $@ $< -I ../ -O3 -g clean: rm -f $(target) diff --git a/example/test_fitter.cpp b/example/test_fitter.cpp index 48c4d8c..8da9d86 100644 --- a/example/test_fitter.cpp +++ b/example/test_fitter.cpp @@ -44,7 +44,7 @@ int main() fitter,double,std::string> f; f.set_model(lin1d()); //f.set_method(powell_method >()); - f.set_method(aga_method >()); + f.set_opt_method(aga_method >()); default_data_set ds; for(int i=0;i<100;++i) -- cgit v1.2.2