diff --git a/gtsam/hybrid/HybridGaussianConditional.cpp b/gtsam/hybrid/HybridGaussianConditional.cpp index d0f812d73..5e80f802a 100644 --- a/gtsam/hybrid/HybridGaussianConditional.cpp +++ b/gtsam/hybrid/HybridGaussianConditional.cpp @@ -62,21 +62,6 @@ struct HybridGaussianConditional::ConstructorHelper { } } - /// Construct from means and a single sigma. - ConstructorHelper(Key x, const DiscreteKey mode, - const std::vector &means, double sigma) - : nrFrontals(1), minNegLogConstant(0) { - std::vector gcs; - for (const auto &mean : means) { - auto c = GaussianConditional::sharedMeanAndStddev(x, mean, sigma); - gcs.push_back(c); - } - conditionals = Conditionals({mode}, gcs); - pairs = FactorValuePairs(conditionals, [](const auto &c) { - return GaussianFactorValuePair{c, 0.0}; - }); - } - /// Construct from means and a sigmas. ConstructorHelper(Key x, const DiscreteKey mode, const std::vector> ¶meters) @@ -110,12 +95,6 @@ HybridGaussianConditional::HybridGaussianConditional( : HybridGaussianConditional(DiscreteKeys{mode}, Conditionals({mode}, conditionals)) {} -HybridGaussianConditional::HybridGaussianConditional( - Key x, const DiscreteKey mode, const std::vector &means, - double sigma) - : HybridGaussianConditional(DiscreteKeys{mode}, - ConstructorHelper(x, mode, means, sigma)) {} - HybridGaussianConditional::HybridGaussianConditional( Key x, const DiscreteKey mode, const std::vector> ¶meters) diff --git a/gtsam/hybrid/HybridGaussianConditional.h b/gtsam/hybrid/HybridGaussianConditional.h index 662318837..79cafece7 100644 --- a/gtsam/hybrid/HybridGaussianConditional.h +++ b/gtsam/hybrid/HybridGaussianConditional.h @@ -87,17 +87,6 @@ class GTSAM_EXPORT HybridGaussianConditional const DiscreteKey &mode, const std::vector &conditionals); - /** - * @brief Construct from vector of means and a single sigma. - * - * @param x The continuous key. - * @param mode The discrete key. - * @param means The means for the Gaussian conditionals. - * @param sigma The standard deviation for the Gaussian conditionals. - */ - HybridGaussianConditional(Key x, const DiscreteKey mode, - const std::vector &means, double sigma); - /** * @brief Construct from vector of means and sigmas. * diff --git a/gtsam/hybrid/tests/testGaussianMixture.cpp b/gtsam/hybrid/tests/testGaussianMixture.cpp index 87ef5e25d..7d227f2d7 100644 --- a/gtsam/hybrid/tests/testGaussianMixture.cpp +++ b/gtsam/hybrid/tests/testGaussianMixture.cpp @@ -80,8 +80,9 @@ TEST(GaussianMixture, GaussianMixtureModel) { double sigma = 2.0; HybridBayesNet hbn; - std::vector means{Vector1(mu0), Vector1(mu1)}; - hbn.emplace_shared(Z(0), m, means, sigma); + std::vector> parameters{{Vector1(mu0), sigma}, + {Vector1(mu1), sigma}}; + hbn.emplace_shared(Z(0), m, parameters); hbn.push_back(mixing); // At the halfway point between the means, we should get P(m|z)=0.5