Go to the documentation of this file.
40 using namespace gtsam;
46 std::vector<double>
measurements = {0, 1, 2, 2, 2, 2, 3, 4, 5, 6, 6,
47 7, 8, 9, 9, 9, 10, 11, 11, 11, 11};
49 std::vector<size_t>
discrete_seq = {1, 1, 0, 0, 0, 1, 1, 1, 1, 0,
50 1, 1, 1, 0, 0, 1, 1, 0, 0, 0};
53 const size_t K,
const double between_sigma,
const double measurement_sigma,
55 const std::string& transitionProbabilityTable,
58 transitionProbabilityTable);
87 constexpr
size_t maxNrLeaves = 5;
90 for (
size_t k = 1; k <
K; k++) {
104 #ifdef GTSAM_DT_MERGING
116 for (
size_t k = 0; k <
K - 1; k++) {
123 Values expected_continuous;
124 for (
size_t k = 0; k <
K; k++) {
145 constexpr
size_t maxNrLeaves = 3;
146 for (
size_t k = 1; k <
K; k++) {
160 #ifdef GTSAM_DT_MERGING
191 constexpr
size_t maxNrLeaves = 3;
192 for (
size_t k = 1; k <
K; k++) {
211 for (
size_t k = 0; k <
K - 1; k++) {
218 Values expected_continuous;
219 for (
size_t k = 0; k <
K; k++) {
static int runAllTests(TestResult &result)
const HybridBayesNet & hybridBayesNet() const
Return the Bayes Net posterior.
const Switching switching(3)
Linear Factor Graph where all factors are Gaussians.
void update(const HybridNonlinearFactorGraph &graph, const Values &initial, std::optional< size_t > maxNrLeaves={}, const std::optional< Ordering > givenOrdering={})
Array< double, 1, 3 > e(1./3., 0.5, 2.)
#define EXPECT_LONGS_EQUAL(expected, actual)
#define EXPECT(condition)
Nonlinear hybrid factor graph that uses type erasure.
std::vector< size_t > discrete_seq
Chordal Bayes Net, the result of eliminating a factor graph.
An incremental smoother for hybrid factor graphs.
ϕ(X(0)) .. ϕ(X(k),X(k+1)) .. ϕ(X(k);z_k) .. ϕ(M(0)) .. ϕ(M(K-3),M(K-2))
const sharedFactor at(size_t i) const
HybridValues optimize() const
Solve the HybridBayesNet by first computing the MPE of all the discrete variables and then optimizing...
const ValueType at(Key j) const
virtual void resize(size_t size)
AlgebraicDecisionTree< Key > errorTree(const VectorValues &continuousValues) const
Compute the negative log posterior log P'(M|x) of all assignments up to a constant,...
#define EXPECT_DOUBLES_EQUAL(expected, actual, threshold)
std::vector< double > measurements
HybridNonlinearFactorGraph modeChain
Factor Graph consisting of non-linear factors.
IsDerived< DERIVEDFACTOR > push_back(std::shared_ptr< DERIVEDFACTOR > factor)
Add a factor directly using a shared_ptr.
Values linearizationPoint
void insert(Key j, const Value &val)
Gaussian Bayes Tree, the result of eliminating a GaussianJunctionTree.
bool assert_equal(const Matrix &expected, const Matrix &actual, double tol)
HybridNonlinearFactorGraph binaryFactors
NonlinearFactorGraph graph
Switching InitializeEstimationProblem(const size_t K, const double between_sigma, const double measurement_sigma, const std::vector< double > &measurements, const std::string &transitionProbabilityTable, HybridNonlinearFactorGraph *graph, Values *initial)
HybridNonlinearFactorGraph unaryFactors
TEST(HybridSmoother, IncrementalSmoother)
Matrix< RealScalar, Dynamic, Dynamic > M
gtsam
Author(s):
autogenerated on Wed Mar 19 2025 03:06:50