#include <DiscreteJunctionTree.h>
Constructors | |
DiscreteJunctionTree (const DiscreteEliminationTree &eliminationTree) | |
Testable | |
void | print (const std::string &name="DiscreteJunctionTree: ", const KeyFormatter &formatter=DefaultKeyFormatter) const |
An EliminatableClusterTree, i.e., a set of variable clusters with factors, arranged in a tree, with the additional property that it represents the clique tree associated with a Bayes net.
In GTSAM a junction tree is an intermediate data structure in multifrontal variable elimination. Each node is a cluster of factors, along with a clique of variables that are eliminated all at once. In detail, every node k represents a clique (maximal fully connected subset) of an associated chordal graph, such as a chordal Bayes net resulting from elimination.
The difference with the BayesTree is that a JunctionTree stores factors, whereas a BayesTree stores conditionals, that are the product of eliminating the factors in the corresponding JunctionTree cliques.
The tree structure and elimination method are exactly analogous to the EliminationTree, except that in the JunctionTree, at each node multiple variables are eliminated at a time.
Definition at line 53 of file DiscreteJunctionTree.h.
Base class.
Definition at line 57 of file DiscreteJunctionTree.h.
typedef std::shared_ptr<This> gtsam::DiscreteJunctionTree::shared_ptr |
Shared pointer to this class.
Definition at line 59 of file DiscreteJunctionTree.h.
This class.
Definition at line 58 of file DiscreteJunctionTree.h.
gtsam::DiscreteJunctionTree::DiscreteJunctionTree | ( | const DiscreteEliminationTree & | eliminationTree | ) |
Build the elimination tree of a factor graph using precomputed 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. |
Definition at line 30 of file DiscreteJunctionTree.cpp.
void gtsam::DiscreteJunctionTree::print | ( | const std::string & | name = "DiscreteJunctionTree: " , |
const KeyFormatter & | formatter = DefaultKeyFormatter |
||
) | const |
Print the tree to cout
Definition at line 35 of file DiscreteJunctionTree.cpp.