GaussianBayesTree.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 
20 #pragma once
21 
26 
27 namespace gtsam {
28 
29  // Forward declarations
30  class GaussianConditional;
31  class VectorValues;
32 
33  /* ************************************************************************* */
35  class GTSAM_EXPORT GaussianBayesTreeClique :
36  public BayesTreeCliqueBase<GaussianBayesTreeClique, GaussianFactorGraph>
37  {
38  public:
41  typedef std::shared_ptr<This> shared_ptr;
42  typedef std::weak_ptr<This> weak_ptr;
44  GaussianBayesTreeClique(const std::shared_ptr<GaussianConditional>& conditional) : Base(conditional) {}
45  };
46 
47  /* ************************************************************************* */
49  class GTSAM_EXPORT GaussianBayesTree :
50  public BayesTree<GaussianBayesTreeClique>
51  {
52  private:
54 
55  public:
57  typedef std::shared_ptr<This> shared_ptr;
58 
61 
63  bool equals(const This& other, double tol = 1e-9) const;
64 
66  VectorValues optimize() const;
67 
93  VectorValues optimizeGradientSearch() const;
94 
100  VectorValues gradient(const VectorValues& x0) const;
101 
107  VectorValues gradientAtZero() const;
108 
110  double error(const VectorValues& x) const;
111 
117  double determinant() const;
118 
124  double logDeterminant() const;
125 
128  Matrix marginalCovariance(Key key) const;
129  };
130 
132  template<>
133  struct traits<GaussianBayesTree> : public Testable<GaussianBayesTree> {
134  };
135 
136 } //\ namespace gtsam
VectorValues
gtsam::GaussianBayesTreeClique::weak_ptr
std::weak_ptr< This > weak_ptr
Definition: GaussianBayesTree.h:42
GaussianFactorGraph.h
Linear Factor Graph where all factors are Gaussians.
e
Array< double, 1, 3 > e(1./3., 0.5, 2.)
gtsam::GaussianBayesTreeClique::GaussianBayesTreeClique
GaussianBayesTreeClique()
Definition: GaussianBayesTree.h:43
gtsam::GaussianBayesTree::This
GaussianBayesTree This
Definition: GaussianBayesTree.h:56
BayesTree.h
Bayes Tree is a tree of cliques of a Bayes Chain.
gtsam::optimize
Point3 optimize(const NonlinearFactorGraph &graph, const Values &values, Key landmarkKey)
Definition: triangulation.cpp:177
x
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
Definition: gnuplot_common_settings.hh:12
BayesTreeCliqueBase.h
Base class for cliques of a BayesTree.
gtsam::Matrix
Eigen::MatrixXd Matrix
Definition: base/Matrix.h:39
GaussianBayesNet.h
Chordal Bayes Net, the result of eliminating a factor graph.
determinant
void determinant(const MatrixType &m)
Definition: determinant.cpp:14
gtsam::GaussianBayesTree::GaussianBayesTree
GaussianBayesTree()
Definition: GaussianBayesTree.h:60
GaussianConditional
gtsam::VectorValues
Definition: VectorValues.h:74
gtsam::BayesTreeCliqueBase
Definition: BayesTreeCliqueBase.h:49
gtsam::internal::logDeterminant
double logDeterminant(const typename BAYESTREE::sharedClique &clique)
Definition: GaussianBayesTree-inl.h:42
gtsam::GaussianBayesTreeClique::This
GaussianBayesTreeClique This
Definition: GaussianBayesTree.h:39
x0
static Symbol x0('x', 0)
gtsam::GaussianBayesTreeClique
Definition: GaussianBayesTree.h:35
gtsam::equals
Definition: Testable.h:112
key
const gtsam::Symbol key('X', 0)
gtsam
traits
Definition: chartTesting.h:28
gtsam::Testable
Definition: Testable.h:152
gtsam::BayesTree
Definition: BayesTree.h:66
gtsam::GaussianBayesTree
Definition: GaussianBayesTree.h:49
error
static double error
Definition: testRot3.cpp:37
gtsam::traits
Definition: Group.h:36
This
#define This
Definition: ActiveSetSolver-inl.h:27
gtsam::GaussianBayesTree::Base
BayesTree< GaussianBayesTreeClique > Base
Definition: GaussianBayesTree.h:53
gtsam::GaussianBayesTreeClique::Base
BayesTreeCliqueBase< GaussianBayesTreeClique, GaussianFactorGraph > Base
Definition: GaussianBayesTree.h:40
gtsam::tol
const G double tol
Definition: Group.h:79
gtsam::GaussianBayesTree::shared_ptr
std::shared_ptr< This > shared_ptr
Definition: GaussianBayesTree.h:57
gtsam::Key
std::uint64_t Key
Integer nonlinear key type.
Definition: types.h:97
gtsam::GaussianBayesTreeClique::GaussianBayesTreeClique
GaussianBayesTreeClique(const std::shared_ptr< GaussianConditional > &conditional)
Definition: GaussianBayesTree.h:44
pybind_wrapper_test_script.other
other
Definition: pybind_wrapper_test_script.py:42
gtsam::GaussianBayesTreeClique::shared_ptr
std::shared_ptr< This > shared_ptr
Definition: GaussianBayesTree.h:41


gtsam
Author(s):
autogenerated on Thu Jun 13 2024 03:02:23