GTSAM
4.0.2
C++ library for smoothing and mapping (SAM)
|
#include <HybridEliminationTree.h>
Public Types | |
typedef EliminationTree< HybridBayesNet, HybridGaussianFactorGraph > | Base |
Base class. | |
typedef HybridEliminationTree | This |
This class. | |
typedef std::shared_ptr< This > | shared_ptr |
Shared pointer to this class. | |
typedef HybridGaussianFactorGraph | FactorGraphType |
The factor graph type. | |
typedef HybridGaussianFactorGraph ::FactorType | FactorType |
The type of factors. | |
typedef std::shared_ptr< FactorType > | sharedFactor |
Shared pointer to a factor. | |
typedef HybridBayesNet | BayesNetType |
The BayesNet corresponding to FACTOR. | |
typedef BayesNetType::ConditionalType | ConditionalType |
The type of conditionals. | |
typedef std::shared_ptr< ConditionalType > | sharedConditional |
Shared pointer to a conditional. | |
typedef HybridGaussianFactorGraph ::Eliminate | Eliminate |
typedef std::shared_ptr< Node > | sharedNode |
Shared pointer to Node. | |
Public Member Functions | |
bool | equals (const This &other, double tol=1e-9) const |
Constructors | |
HybridEliminationTree (const HybridGaussianFactorGraph &factorGraph, const VariableIndex &structure, const Ordering &order) | |
HybridEliminationTree (const HybridGaussianFactorGraph &factorGraph, const Ordering &order) | |
Standard Interface | |
std::pair< std::shared_ptr< BayesNetType >, std::shared_ptr< FactorGraphType > > | eliminate (Eliminate function) const |
Advanced Interface | |
const FastVector< sharedNode > & | roots () const |
const FastVector< sharedFactor > & | remainingFactors () const |
void | swap (This &other) |
Protected Attributes | |
FastVector< sharedNode > | roots_ |
FastVector< sharedFactor > | remainingFactors_ |
Friends | |
class | ::EliminationTreeTester |
Testable | |
void | print (const std::string &name="EliminationTree: ", const KeyFormatter &formatter=DefaultKeyFormatter) const |
bool | equals (const This &other, double tol=1e-9) const |
Elimination Tree type for Hybrid Factor Graphs.
gtsam::HybridEliminationTree::HybridEliminationTree | ( | const HybridGaussianFactorGraph & | factorGraph, |
const VariableIndex & | structure, | ||
const Ordering & | order | ||
) |
Build the elimination tree of a factor graph using pre-computed column structure.
factorGraph | The factor graph for which to build the elimination tree |
structure | The set of factors involving each variable. If this is not precomputed, you can call the Create(const FactorGraph<DERIVEDFACTOR>&) named constructor instead. |
gtsam::HybridEliminationTree::HybridEliminationTree | ( | const HybridGaussianFactorGraph & | factorGraph, |
const Ordering & | order | ||
) |
Build the elimination tree of a factor graph. Note that this has to compute the column structure as a VariableIndex, so if you already have this precomputed, use the other constructor instead.
factorGraph | The factor graph for which to build the elimination tree |
|
inherited |
Eliminate the factors to a Bayes net and remaining factor graph
function | The function to use to eliminate, see the namespace functions in GaussianFactorGraph.h |
bool gtsam::HybridEliminationTree::equals | ( | const This & | other, |
double | tol = 1e-9 |
||
) | const |
Test whether the tree is equal to another
|
protectedinherited |
Test whether the tree is equal to another
|
inherited |
Print the tree to cout
|
inlineinherited |
Return the remaining factors that are not pulled into elimination
|
inlineinherited |
Return the set of roots (one for a tree, multiple for a forest)
|
inherited |
Swap the data of this tree with another one, this operation is very fast.
|
protectedinherited |
concept check