gtsam 4.2
gtsam
Loading...
Searching...
No Matches
HybridGaussianISAM.h
Go to the documentation of this file.
1/* ----------------------------------------------------------------------------
2
3 * GTSAM Copyright 2010, Georgia Tech Research Corporation,
4 * Atlanta, Georgia 30332-0415
5 * All Rights Reserved
6 * Authors: Frank Dellaert, et al. (see THANKS for the full author list)
7
8 * See LICENSE for the license information
9
10 * -------------------------------------------------------------------------- */
11
19
20#pragma once
21
22#include <gtsam/base/Testable.h>
26
27namespace gtsam {
28
34class GTSAM_EXPORT HybridGaussianISAM : public ISAM<HybridBayesTree> {
35 public:
36 typedef ISAM<HybridBayesTree> Base;
37 typedef HybridGaussianISAM This;
38 typedef boost::shared_ptr<This> shared_ptr;
39
42
45
47 HybridGaussianISAM(const HybridBayesTree& bayesTree);
48
50
51 private:
53 void updateInternal(
54 const HybridGaussianFactorGraph& newFactors,
56 const boost::optional<size_t>& maxNrLeaves = boost::none,
57 const boost::optional<Ordering>& ordering = boost::none,
58 const HybridBayesTree::Eliminate& function =
60
61 public:
70 void update(const HybridGaussianFactorGraph& newFactors,
71 const boost::optional<size_t>& maxNrLeaves = boost::none,
72 const boost::optional<Ordering>& ordering = boost::none,
73 const HybridBayesTree::Eliminate& function =
75
85 const HybridGaussianFactorGraph& newFactors);
86};
87
89template <>
90struct traits<HybridGaussianISAM> : public Testable<HybridGaussianISAM> {};
91
92} // namespace gtsam
Concept check for values that can be used in unit tests.
Linearized Hybrid factor graph that uses type erasure.
Hybrid Bayes Tree, the result of eliminating a HybridJunctionTree.
Incremental update functionality (iSAM) for BayesTree.
Global functions in a separate testing namespace.
Definition chartTesting.h:28
A manifold defines a space in which there is a notion of a linear tangent space that can be centered ...
Definition concepts.h:30
A helper that implements the traits interface for GTSAM types.
Definition Testable.h:151
A Bayes tree representing a Hybrid density.
Definition HybridBayesTree.h:64
static std::pair< boost::shared_ptr< ConditionalType >, boost::shared_ptr< FactorType > > DefaultEliminate(const FactorGraphType &factors, const Ordering &keys)
The default dense elimination function.
Definition HybridGaussianFactorGraph.h:82
Definition HybridGaussianFactorGraph.h:102
Definition HybridGaussianISAM.h:34
void update(const HybridGaussianFactorGraph &newFactors, const boost::optional< size_t > &maxNrLeaves=boost::none, const boost::optional< Ordering > &ordering=boost::none, const HybridBayesTree::Eliminate &function=HybridBayesTree::EliminationTraitsType::DefaultEliminate)
Perform update step with new factors.
Definition HybridGaussianISAM.cpp:118
HybridGaussianISAM()
Create an empty Bayes Tree.
Definition HybridGaussianISAM.cpp:35
static Ordering GetOrdering(HybridGaussianFactorGraph &factors, const HybridGaussianFactorGraph &newFactors)
Helper method to get an ordering given the existing factors and any new factors added.
Definition HybridGaussianISAM.cpp:42
FastList< sharedClique > Cliques
Definition BayesTree.h:89
ISAM()
Definition ISAM.h:49
Definition Ordering.h:34