diff --git a/gtsam/hybrid/GaussianMixture.cpp b/gtsam/hybrid/GaussianMixture.cpp index 435410358..52f1a3f0a 100644 --- a/gtsam/hybrid/GaussianMixture.cpp +++ b/gtsam/hybrid/GaussianMixture.cpp @@ -174,18 +174,6 @@ KeyVector GaussianMixture::continuousParents() const { return continuousParentKeys; } -/* ************************************************************************* */ -boost::shared_ptr GaussianMixture::normalizationConstants() - const { - DecisionTree constants( - conditionals_, [&](const GaussianConditional::shared_ptr &conditional) { - return conditional->normalizationConstant(); - }); - // If all constants the same, return nullptr: - if (constants.nrLeaves() == 1) return nullptr; - return boost::make_shared(discreteKeys(), constants); -} - /* ************************************************************************* */ bool GaussianMixture::allFrontalsGiven(const VectorValues &given) const { for (auto &&kv : given) { diff --git a/gtsam/hybrid/GaussianMixture.h b/gtsam/hybrid/GaussianMixture.h index 64eda218e..eef0419a2 100644 --- a/gtsam/hybrid/GaussianMixture.h +++ b/gtsam/hybrid/GaussianMixture.h @@ -160,10 +160,6 @@ class GTSAM_EXPORT GaussianMixture /// log-normalization constants. double logNormalizationConstant() const override { return logConstant_; } - /// Return a discrete factor with possibly varying normalization constants. - /// If there is no variation, return nullptr. - boost::shared_ptr normalizationConstants() const; - /** * Create a likelihood factor for a Gaussian mixture, return a Mixture factor * on the parents. diff --git a/gtsam/hybrid/tests/testGaussianMixture.cpp b/gtsam/hybrid/tests/testGaussianMixture.cpp index edc585704..7a4439e21 100644 --- a/gtsam/hybrid/tests/testGaussianMixture.cpp +++ b/gtsam/hybrid/tests/testGaussianMixture.cpp @@ -61,9 +61,6 @@ const GaussianMixture mixture({Z(0)}, {X(0)}, {mode}, conditionals); TEST(GaussianMixture, Invariants) { using namespace equal_constants; - // Check that normalizationConstants returns nullptr, as all constants equal. - CHECK(!mixture.normalizationConstants()); - // Check that the mixture normalization constant is the max of all constants // which are all equal, in this case, hence: const double K = mixture.logNormalizationConstant(); @@ -170,19 +167,6 @@ TEST(GaussianMixture, ContinuousParents) { EXPECT(continuousParentKeys[0] == X(0)); } -/* ************************************************************************* */ -/// Check we can create a DecisionTreeFactor with all normalization constants. -TEST(GaussianMixture, NormalizationConstants) { - using namespace mode_dependent_constants; - - const auto factor = mixture.normalizationConstants(); - - // Test with 1D Gaussian normalization constants for sigma 0.5 and 3: - auto c = [](double sigma) { return 1.0 / (sqrt(2 * M_PI) * sigma); }; - const DecisionTreeFactor expected({M(0), 2}, {c(0.5), c(3)}); - EXPECT(assert_equal(expected, *factor)); -} - /* ************************************************************************* */ /// Check that the likelihood is proportional to the conditional density given /// the measurements.