diff --git a/gtsam/discrete/discrete.i b/gtsam/discrete/discrete.i index a1731f8e5..0deeb8033 100644 --- a/gtsam/discrete/discrete.i +++ b/gtsam/discrete/discrete.i @@ -104,6 +104,9 @@ virtual class DiscreteConditional : gtsam::DecisionTreeFactor { DiscreteConditional(const gtsam::DecisionTreeFactor& joint, const gtsam::DecisionTreeFactor& marginal, const gtsam::Ordering& orderedKeys); + DiscreteConditional(const gtsam::DiscreteKey& key, + const gtsam::DiscreteKeys& parents, + const std::vector& table); // Standard interface double logNormalizationConstant() const; diff --git a/gtsam/hybrid/GaussianMixtureFactor.cpp b/gtsam/hybrid/GaussianMixtureFactor.cpp index 4e138acfa..fd7cec066 100644 --- a/gtsam/hybrid/GaussianMixtureFactor.cpp +++ b/gtsam/hybrid/GaussianMixtureFactor.cpp @@ -66,7 +66,7 @@ void GaussianMixtureFactor::print(const std::string &s, [&](const sharedFactor &gf) -> std::string { RedirectCout rd; std::cout << ":\n"; - if (gf && !gf->empty()) { + if (gf) { gf->print("", formatter); return rd.str(); } else { diff --git a/gtsam/hybrid/hybrid.i b/gtsam/hybrid/hybrid.i index c1d57715e..85c34e575 100644 --- a/gtsam/hybrid/hybrid.i +++ b/gtsam/hybrid/hybrid.i @@ -92,7 +92,10 @@ class GaussianMixture : gtsam::HybridFactor { const std::vector& conditionalsList); - gtsam::GaussianMixtureFactor* likelihood(const gtsam::VectorValues &frontals) const; + gtsam::GaussianMixtureFactor* likelihood( + const gtsam::VectorValues& frontals) const; + double logProbability(const gtsam::HybridValues& values) const; + double evaluate(const gtsam::HybridValues& values) const; void print(string s = "GaussianMixture\n", const gtsam::KeyFormatter& keyFormatter = diff --git a/gtsam/linear/linear.i b/gtsam/linear/linear.i index 6862646ae..8bd3dcb88 100644 --- a/gtsam/linear/linear.i +++ b/gtsam/linear/linear.i @@ -489,7 +489,7 @@ virtual class GaussianConditional : gtsam::JacobianFactor { GaussianConditional(size_t key, Vector d, Matrix R, size_t name1, Matrix S, size_t name2, Matrix T, const gtsam::noiseModel::Diagonal* sigmas); - GaussianConditional(const vector> terms, + GaussianConditional(const std::vector> terms, size_t nrFrontals, Vector d, const gtsam::noiseModel::Diagonal* sigmas); @@ -751,4 +751,4 @@ class KalmanFilter { Vector z, Matrix Q); }; -} \ No newline at end of file +} diff --git a/gtsam/slam/README.md b/gtsam/slam/README.md index ae5edfdac..018126a66 100644 --- a/gtsam/slam/README.md +++ b/gtsam/slam/README.md @@ -63,6 +63,6 @@ A RegularJacobianFactor that uses some badly documented reduction on the Jacobia A RegularJacobianFactor that eliminates a point using sequential elimination. -### JacobianFactorQR +### JacobianFactorSVD -A RegularJacobianFactor that uses the "Nullspace Trick" by Mourikis et al. See the documentation in the file, which *is* well documented. \ No newline at end of file +A RegularJacobianFactor that uses the "Nullspace Trick" by Mourikis et al. See the documentation in the file, which *is* well documented.