From 74f7e3e16a2794042f1f2a42b79571baef7eafad Mon Sep 17 00:00:00 2001 From: Natesh Srinivasan Date: Fri, 2 Aug 2013 16:59:46 +0000 Subject: [PATCH] added a funtion for computing log-Determinant --- gtsam/linear/GaussianBayesTree.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gtsam/linear/GaussianBayesTree.cpp b/gtsam/linear/GaussianBayesTree.cpp index 7011524e4..17d54635c 100644 --- a/gtsam/linear/GaussianBayesTree.cpp +++ b/gtsam/linear/GaussianBayesTree.cpp @@ -82,10 +82,15 @@ void gradientAtZero(const GaussianBayesTree& bayesTree, VectorValues& g) { /* ************************************************************************* */ double determinant(const GaussianBayesTree& bayesTree) { + return exp(logDeterminant(bayesTree)); +} + +/* ************************************************************************* */ +double logDeterminant(const GaussianBayesTree& bayesTree) { if (!bayesTree.root()) return 0.0; - return exp(internal::logDeterminant(bayesTree.root())); + return internal::logDeterminant(bayesTree.root()); } /* ************************************************************************* */