Public Types | Public Member Functions | List of all members

#include <HybridJunctionTree.h>

Inheritance diagram for gtsam::HybridJunctionTree:
Inheritance graph
[legend]

Public Types

typedef JunctionTree< HybridBayesTree, HybridGaussianFactorGraphBase
 Base class. More...
 
typedef std::shared_ptr< Thisshared_ptr
 Shared pointer to this class. More...
 
typedef HybridJunctionTree This
 This class. More...
 
- Public Types inherited from gtsam::JunctionTree< HybridBayesTree, HybridGaussianFactorGraph >
typedef EliminatableClusterTree< HybridBayesTree, HybridGaussianFactorGraphBase
 Our base class. More...
 
typedef std::shared_ptr< Thisshared_ptr
 Shared pointer to this class. More...
 
typedef JunctionTree< HybridBayesTree, HybridGaussianFactorGraphThis
 This class. More...
 
- Public Types inherited from gtsam::EliminatableClusterTree< HybridBayesTree, HybridGaussianFactorGraph >
typedef HybridBayesTree BayesTreeType
 The BayesTree type produced by elimination. More...
 
typedef HybridBayesTree ::ConditionalType ConditionalType
 The type of conditionals. More...
 
typedef HybridGaussianFactorGraph ::Eliminate Eliminate
 Typedef for an eliminate subroutine. More...
 
typedef HybridGaussianFactorGraph FactorGraphType
 The factor graph type. More...
 
typedef HybridGaussianFactorGraph ::FactorType FactorType
 The type of factors. More...
 
typedef std::shared_ptr< Thisshared_ptr
 Shared pointer to this class. More...
 
typedef std::shared_ptr< ConditionalTypesharedConditional
 Shared pointer to a conditional. More...
 
typedef std::shared_ptr< FactorTypesharedFactor
 Shared pointer to a factor. More...
 
typedef EliminatableClusterTree< HybridBayesTree, HybridGaussianFactorGraphThis
 This class. More...
 
- Public Types inherited from gtsam::ClusterTree< HybridGaussianFactorGraph >
typedef HybridGaussianFactorGraph FactorGraphType
 The factor graph type. More...
 
typedef HybridGaussianFactorGraph ::FactorType FactorType
 The type of factors. More...
 
typedef Cluster Node
 
typedef std::shared_ptr< Thisshared_ptr
 Shared pointer to this class. More...
 
typedef std::shared_ptr< Cluster > sharedCluster
 Shared pointer to Cluster. More...
 
typedef std::shared_ptr< FactorTypesharedFactor
 Shared pointer to a factor. More...
 
typedef sharedCluster sharedNode
 
typedef ClusterTree< HybridGaussianFactorGraphThis
 This class. More...
 

Public Member Functions

 HybridJunctionTree (const HybridEliminationTree &eliminationTree)
 
- Public Member Functions inherited from gtsam::EliminatableClusterTree< HybridBayesTree, HybridGaussianFactorGraph >
std::pair< std::shared_ptr< BayesTreeType >, std::shared_ptr< FactorGraphType > > eliminate (const Eliminate &function) const
 
const FastVector< sharedFactor > & remainingFactors () const
 
- Public Member Functions inherited from gtsam::ClusterTree< HybridGaussianFactorGraph >
 ClusterTree ()
 Default constructor. More...
 
 ~ClusterTree ()
 
void print (const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 
void addRoot (const std::shared_ptr< Cluster > &cluster)
 
void addChildrenAsRoots (const std::shared_ptr< Cluster > &cluster)
 
size_t nrRoots () const
 
const FastVector< sharedNode > & roots () const
 
const Cluster & operator[] (size_t i) const
 

Additional Inherited Members

- Protected Member Functions inherited from gtsam::JunctionTree< HybridBayesTree, HybridGaussianFactorGraph >
 JunctionTree ()
 
 JunctionTree (const EliminationTree< ETREE_BAYESNET, ETREE_GRAPH > &eliminationTree)
 
- Protected Member Functions inherited from gtsam::EliminatableClusterTree< HybridBayesTree, HybridGaussianFactorGraph >
 EliminatableClusterTree (const This &other)
 
 EliminatableClusterTree ()
 Default constructor to be used in derived classes. More...
 
Thisoperator= (const This &other)
 
- Protected Member Functions inherited from gtsam::ClusterTree< HybridGaussianFactorGraph >
 ClusterTree (const This &other)
 
Thisoperator= (const This &other)
 
- Static Protected Member Functions inherited from gtsam::JunctionTree< HybridBayesTree, HybridGaussianFactorGraph >
static This FromEliminationTree (const ETREE &eliminationTree)
 
- Protected Attributes inherited from gtsam::EliminatableClusterTree< HybridBayesTree, HybridGaussianFactorGraph >
FastVector< sharedFactorremainingFactors_
 
- Protected Attributes inherited from gtsam::ClusterTree< HybridGaussianFactorGraph >
FastVector< sharedNoderoots_
 

Detailed Description

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 52 of file HybridJunctionTree.h.

Member Typedef Documentation

◆ Base

Base class.

Definition at line 57 of file HybridJunctionTree.h.

◆ shared_ptr

typedef std::shared_ptr<This> gtsam::HybridJunctionTree::shared_ptr

Shared pointer to this class.

Definition at line 59 of file HybridJunctionTree.h.

◆ This

This class.

Definition at line 58 of file HybridJunctionTree.h.

Constructor & Destructor Documentation

◆ HybridJunctionTree()

gtsam::HybridJunctionTree::HybridJunctionTree ( const HybridEliminationTree eliminationTree)

Build the elimination tree of a factor graph using precomputed column structure.

Parameters
factorGraphThe factor graph for which to build the elimination tree
structureThe set of factors involving each variable. If this is not precomputed, you can call the Create(const FactorGraph<DERIVEDFACTOR>&) named constructor instead.
Returns
The elimination tree

Definition at line 148 of file HybridJunctionTree.cpp.


The documentation for this class was generated from the following files:


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:46:20