25#include <gtsam/linear/Preconditioner.h>
27#include <gtsam/dllexport.h>
29#include <boost/shared_ptr.hpp>
36 class GaussianBayesNet;
37 class GaussianFactorGraph;
41 typedef boost::shared_ptr<SubgraphPreconditionerParameters> shared_ptr;
57 typedef boost::shared_ptr<SubgraphPreconditioner> shared_ptr;
84 void print(
const std::string& s =
"SubgraphPreconditioner")
const;
113 void transposeMultiplyAdd2(
double alpha, Errors::const_iterator begin,
141 void solve(
const Vector& y, Vector &x)
const override;
144 void transposeSolve(
const Vector& y, Vector& x)
const override;
148 const GaussianFactorGraph &gfg,
150 const std::map<Key,Vector> &lambda
Some support classes for iterative solvers.
Linear Factor Graph where all factors are Gaussians.
Chordal Bayes Net, the result of eliminating a factor graph.
Global functions in a separate testing namespace.
Definition: chartTesting.h:28
Vector operator^(const Matrix &A, const Vector &v)
overload ^ for trans(A)*v We transpose the vectors for speed.
Definition: Matrix.cpp:131
void print(const Matrix &A, const string &s, ostream &stream)
print without optional string, must specify cout yourself
Definition: Matrix.cpp:156
Point2 operator*(double s, const Point2 &p)
multiply with scalar
Definition: Point2.h:47
FastList< Vector > Errors
Errors is a vector of errors.
Definition: Errors.h:34
GaussianBayesNet is a Bayes net made from linear-Gaussian conditionals.
Definition: GaussianBayesNet.h:36
A Linear Factor Graph is a factor graph where all factors are Gaussian, i.e.
Definition: GaussianFactorGraph.h:75
Handy data structure for iterative solvers.
Definition: IterativeSolver.h:126
Definition: Preconditioner.h:24
Definition: Preconditioner.h:64
Definition: SubgraphBuilder.h:96
Definition: SubgraphPreconditioner.h:40
Subgraph conditioner class, as explained in the RSS 2010 submission.
Definition: SubgraphPreconditioner.h:54
const GaussianFactorGraph & Ab2() const
Access Ab2.
Definition: SubgraphPreconditioner.h:87
const Errors b2bar() const
Access b2bar.
Definition: SubgraphPreconditioner.h:93
const GaussianBayesNet & Rc1() const
Access Rc1.
Definition: SubgraphPreconditioner.h:90
VectorValues represents a collection of vector-valued variables associated each with a unique integer...
Definition: VectorValues.h:74
static VectorValues Zero(const VectorValues &other)
Create a VectorValues with the same structure as other, but filled with zeros.
Definition: VectorValues.cpp:78
The Factor::error simply extracts the.