34 class GaussianFactorGraph;
36 class GaussianConditional;
37 class GaussianBayesNet;
38 class GaussianEliminationTree;
39 class GaussianBayesTree;
40 class GaussianJunctionTree;
52 static std::pair<boost::shared_ptr<ConditionalType>, boost::shared_ptr<FactorType> >
80 template<
typename ITERATOR>
84 template<
class CONTAINER>
88 template<
class DERIVEDFACTOR>
97 bool equals(
const This& fg,
double tol = 1
e-9)
const;
130 template<
class TERMS>
142 std::map<Key, size_t> getKeyDimMap()
const;
146 double total_error = 0.;
149 total_error += factor->error(x);
193 std::vector<std::tuple<int, int, double> > sparseJacobian(
197 std::vector<std::tuple<int, int, double> > sparseJacobian()
const;
205 Matrix sparseJacobian_()
const;
223 Matrix augmentedJacobian()
const;
232 std::pair<Matrix,Vector> jacobian(
const Ordering& ordering)
const;
241 std::pair<Matrix,Vector> jacobian()
const;
267 Matrix augmentedHessian()
const;
275 std::pair<Matrix,Vector> hessian(
const Ordering& ordering)
const;
283 std::pair<Matrix,Vector> hessian()
const;
289 virtual std::map<Key,Matrix> hessianBlockDiagonal()
const;
296 const Eliminate&
function = EliminationTraitsType::DefaultEliminate)
const;
303 const Eliminate&
function = EliminationTraitsType::DefaultEliminate)
const;
369 void multiplyHessianAdd(
double alpha,
const VectorValues& x,
376 void multiplyInPlace(
const VectorValues& x,
const Errors::iterator& e)
const;
382 friend class boost::serialization::access;
383 template<
class ARCHIVE>
385 ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(Base);
392 const Eliminate&
function = EliminationTraitsType::DefaultEliminate)
const;
GaussianFactorGraph FactorGraphType
Type of the factor graph (e.g. GaussianFactorGraph)
virtual ~GaussianFactorGraph()
EIGEN_DEVICE_FUNC const ExpReturnType exp() const
Variable elimination algorithms for factor graphs.
noiseModel::Diagonal::shared_ptr model
static enum @843 ordering
boost::shared_ptr< This > shared_ptr
shared_ptr to this class
GaussianEliminationTree EliminationTreeType
Type of elimination tree.
static std::pair< boost::shared_ptr< ConditionalType >, boost::shared_ptr< FactorType > > DefaultEliminate(const FactorGraphType &factors, const Ordering &keys)
The default dense elimination function.
A factor with a quadratic error function - a Gaussian.
GaussianFactorGraph factors(list_of(factor1)(factor2)(factor3))
GaussianFactorGraph(const FactorGraph< DERIVEDFACTOR > &graph)
virtual GaussianFactor::shared_ptr clone() const =0
Point2 operator*(double s, const Point2 &p)
multiply with scalar
NonlinearFactorGraph graph
std::pair< boost::shared_ptr< GaussianConditional >, boost::shared_ptr< GaussianFactor > > EliminatePreferCholesky(const GaussianFactorGraph &factors, const Ordering &keys)
graph add(boost::make_shared< UnaryFactor >(1, 0.0, 0.0, unaryNoise))
double error(const VectorValues &x) const
const Symbol key1('v', 1)
void add(const GaussianFactor &factor)
Point3 optimize(const NonlinearFactorGraph &graph, const Values &values, Key landmarkKey)
GaussianJunctionTree JunctionTreeType
GaussianFactorGraph(ITERATOR firstFactor, ITERATOR lastFactor)
EliminateableFactorGraph< This > BaseEliminateable
Typedef to base elimination class.
void serialize(ARCHIVE &ar, const unsigned int)
void add(Key key1, const Matrix &A1, Key key2, const Matrix &A2, Key key3, const Matrix &A3, const Vector &b, const SharedDiagonal &model=SharedDiagonal())
boost::shared_ptr< GaussianFactor > sharedFactor
Shared pointer to a factor.
Contains the HessianFactor class, a general quadratic factor.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
noiseModel::Diagonal::shared_ptr SharedDiagonal
GaussianFactorGraph(const CONTAINER &factors)
GaussianConditional ConditionalType
Type of conditionals from elimination.
bool hasConstraints(const GaussianFactorGraph &factors)
GaussianBayesTree BayesTreeType
Type of Bayes tree.
void add(Key key1, const Matrix &A1, Key key2, const Matrix &A2, const Vector &b, const SharedDiagonal &model=SharedDiagonal())
const Symbol key3('v', 3)
const Symbol key2('v', 2)
void add(Key key1, const Matrix &A1, const Vector &b, const SharedDiagonal &model=SharedDiagonal())
GaussianBayesNet BayesNetType
Type of Bayes net from sequential elimination.
boost::function< EliminationResult(const FactorGraphType &, const Ordering &)> Eliminate
The function type that does a single dense elimination step on a subgraph.
GaussianFactor FactorType
Type of factors in factor graph.
GaussianFactorGraph This
Typedef to this class.
void add(const Vector &b)
FactorGraph< GaussianFactor > Base
Typedef to base factor graph type.
void add(const sharedFactor &factor)
double probPrime(const VectorValues &c) const
void add(const TERMS &terms, const Vector &b, const SharedDiagonal &model=SharedDiagonal())
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
std::uint64_t Key
Integer nonlinear key type.