From af6d98253f1d461dd5b5db0332207760bdbcad71 Mon Sep 17 00:00:00 2001 From: Frank Dellaert Date: Thu, 27 Aug 2009 01:23:05 +0000 Subject: [PATCH] solve is now const --- .cproject | 8 ++++++++ cpp/ConditionalGaussian.cpp | 22 ++++++++++------------ cpp/ConditionalGaussian.h | 2 +- 3 files changed, 19 insertions(+), 13 deletions(-) diff --git a/.cproject b/.cproject index 798e3502d..063d544b5 100644 --- a/.cproject +++ b/.cproject @@ -335,6 +335,14 @@ true true + +make + +testConditionalGaussian.run +true +true +true + make diff --git a/cpp/ConditionalGaussian.cpp b/cpp/ConditionalGaussian.cpp index fa7dc0b46..e681ba500 100644 --- a/cpp/ConditionalGaussian.cpp +++ b/cpp/ConditionalGaussian.cpp @@ -54,18 +54,16 @@ void ConditionalGaussian::print(const string &s) const } /* ************************************************************************* */ -Vector ConditionalGaussian::solve(const FGConfig& x) -{ - Vector rhs = d_; - for(map::const_iterator it = parents_.begin() ; it != parents_.end() ; it++ ) { - const string& j = it->first; - const Matrix& Aj = it->second; - rhs -= Aj*x[j]; - - } - Vector result = backsubstitution(R_, rhs); - return result; - +Vector ConditionalGaussian::solve(const FGConfig& x) const { + Vector rhs = d_; + for (map::const_iterator it = parents_.begin(); it + != parents_.end(); it++) { + const string& j = it->first; + const Matrix& Aj = it->second; + rhs -= Aj * x[j]; + } + Vector result = backsubstitution(R_, rhs); + return result; } /* ************************************************************************* */ diff --git a/cpp/ConditionalGaussian.h b/cpp/ConditionalGaussian.h index 1fca89b5f..84d5e5560 100644 --- a/cpp/ConditionalGaussian.h +++ b/cpp/ConditionalGaussian.h @@ -107,7 +107,7 @@ namespace gtsam { * @param x configuration in which the parents values (y,z,...) are known * @return solution x = R \ (d - Sy - Tz - ...) */ - Vector solve(const FGConfig& x); + Vector solve(const FGConfig& x) const; /** * adds a parent