From bcd663244ad68648cbb70191de9dbbddf6e2ed4d Mon Sep 17 00:00:00 2001 From: Richard Roberts Date: Fri, 23 Mar 2012 03:38:58 +0000 Subject: [PATCH] Moved printing to NonlinearOptimizer base class --- gtsam/nonlinear/GaussNewtonOptimizer.cpp | 4 ---- gtsam/nonlinear/LevenbergMarquardtOptimizer.cpp | 4 ---- gtsam/nonlinear/NonlinearOptimizer.cpp | 8 ++++++++ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/gtsam/nonlinear/GaussNewtonOptimizer.cpp b/gtsam/nonlinear/GaussNewtonOptimizer.cpp index a603131ad..e3dd49461 100644 --- a/gtsam/nonlinear/GaussNewtonOptimizer.cpp +++ b/gtsam/nonlinear/GaussNewtonOptimizer.cpp @@ -54,10 +54,6 @@ NonlinearOptimizer::auto_ptr GaussNewtonOptimizer::iterate() const { SharedValues newValues(new Values(values_->retract(*delta, *ordering_))); double newError = graph_->error(*newValues); - // Maybe show output - if (params_->verbosity >= NonlinearOptimizerParams::VALUES) newValues->print("newValues"); - if (params_->verbosity >= NonlinearOptimizerParams::ERROR) cout << "error: " << newError << endl; - // Create new optimizer with new values and new error NonlinearOptimizer::auto_ptr newOptimizer(new GaussNewtonOptimizer( *this, newValues, newError)); diff --git a/gtsam/nonlinear/LevenbergMarquardtOptimizer.cpp b/gtsam/nonlinear/LevenbergMarquardtOptimizer.cpp index 177c72c36..b8ba0b6a4 100644 --- a/gtsam/nonlinear/LevenbergMarquardtOptimizer.cpp +++ b/gtsam/nonlinear/LevenbergMarquardtOptimizer.cpp @@ -132,10 +132,6 @@ NonlinearOptimizer::auto_ptr LevenbergMarquardtOptimizer::iterate() const { } } // end while - // Maybe show output - if (params_->verbosity >= NonlinearOptimizerParams::VALUES) next_values->print("newValues"); - if (params_->verbosity >= NonlinearOptimizerParams::ERROR) cout << "error: " << next_error << endl; - // Create new optimizer with new values and new error NonlinearOptimizer::auto_ptr newOptimizer(new LevenbergMarquardtOptimizer( *this, next_values, next_error, lambda)); diff --git a/gtsam/nonlinear/NonlinearOptimizer.cpp b/gtsam/nonlinear/NonlinearOptimizer.cpp index ed5542df3..758216bb4 100644 --- a/gtsam/nonlinear/NonlinearOptimizer.cpp +++ b/gtsam/nonlinear/NonlinearOptimizer.cpp @@ -36,6 +36,10 @@ NonlinearOptimizer::auto_ptr NonlinearOptimizer::defaultOptimize() const { return this->clone(); } + // Maybe show output + if (params_->verbosity >= NonlinearOptimizerParams::VALUES) this->values()->print("newValues"); + if (params_->verbosity >= NonlinearOptimizerParams::ERROR) cout << "newError: " << this->error() << endl; + // Return if we already have too many iterations if(this->iterations() >= params_->maxIterations) return this->clone(); @@ -49,6 +53,10 @@ NonlinearOptimizer::auto_ptr NonlinearOptimizer::defaultOptimize() const { // Do next iteration currentError = next->error(); next = next->iterate(); + + // Maybe show output + if (params_->verbosity >= NonlinearOptimizerParams::VALUES) next->values()->print("newValues"); + if (params_->verbosity >= NonlinearOptimizerParams::ERROR) cout << "newError: " << next->error() << endl; } // Printing if verbose