Go to the documentation of this file.
38 class GaussianFactorGraph;
39 class SymbolicFactorGraph;
43 class ExpressionFactor;
70 template<
typename ITERATOR>
74 template<
class CONTAINER>
78 template<
class DERIVEDFACTOR>
87 const std::string&
str =
"NonlinearFactorGraph: ",
91 void printErrors(
const Values&
values,
const std::string&
str =
"NonlinearFactorGraph: ",
93 const std::function<
bool(
const Factor* ,
double ,
size_t )>&
94 printCondition = [](
const Factor *,
double,
size_t) {
return true;})
const;
97 bool equals(
const NonlinearFactorGraph&
other,
double tol = 1
e-9)
const;
112 std::shared_ptr<SymbolicFactorGraph> symbolic()
const;
117 Ordering orderingCOLAMD()
const;
127 Ordering orderingCOLAMDConstrained(
const FastMap<Key, int>& constraints)
const;
130 std::shared_ptr<GaussianFactorGraph> linearize(
const Values& linearizationPoint)
const;
133 typedef std::function<void(
const std::shared_ptr<HessianFactor>& hessianFactor)>
Dampen;
142 std::shared_ptr<HessianFactor> linearizeToHessianFactor(
153 std::shared_ptr<HessianFactor> linearizeToHessianFactor(
159 const Dampen& dampen =
nullptr)
const;
164 const Dampen& dampen =
nullptr)
const;
189 this->emplace_shared<ExpressionFactor<T>>(
R,
z,
h);
216 emplace_shared<PriorFactor<T>>(
key,
prior, covariance);
250 std::shared_ptr<HessianFactor> linearizeToHessianFactor(
253 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION
255 friend class boost::serialization::access;
256 template<
class ARCHIVE>
257 void serialize(ARCHIVE & ar,
const unsigned int ) {
258 ar & boost::serialization::make_nvp(
"NonlinearFactorGraph",
259 boost::serialization::base_object<Base>(*
this));
FactorGraph< NonlinearFactor > Base
Array< double, 1, 3 > e(1./3., 0.5, 2.)
const GaussianFactorGraph factors
void saveGraph(const std::string &filename, const KeyFormatter &keyFormatter=DefaultKeyFormatter, const DotWriter &writer=DotWriter()) const
output to file with graphviz format.
ofstream os("timeSchurFactors.csv")
KeyFormatter DefaultKeyFormatter
Assign default key formatter.
std::function< void(const std::shared_ptr< HessianFactor > &hessianFactor)> Dampen
typdef for dampen functions used below
NonlinearFactorGraph This
NonlinearFactorGraph(const CONTAINER &factors)
void print(const Matrix &A, const string &s, ostream &stream)
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
NonlinearFactorGraph(const FactorGraph< DERIVEDFACTOR > &graph)
void addPrior(Key key, const T &prior, const Matrix &covariance)
void addPrior(Key key, const T &prior, const SharedNoiseModel &model=nullptr)
double dot(const V1 &a, const V2 &b)
noiseModel::Base::shared_ptr SharedNoiseModel
NonlinearFactorGraph(ITERATOR firstFactor, ITERATOR lastFactor)
noiseModel::Diagonal::shared_ptr model
static enum @1096 ordering
const gtsam::Symbol key('X', 0)
Non-linear factor base classes.
void dot(std::ostream &os, const KeyFormatter &keyFormatter=DefaultKeyFormatter, const DotWriter &writer=DotWriter()) const
Output to graphviz format, stream version.
NonlinearFactorGraph graph
std::uint64_t Key
Integer nonlinear key type.
Rot2 R(Rot2::fromAngle(0.1))
void addExpressionFactor(const SharedNoiseModel &R, const T &z, const Expression< T > &h)
std::shared_ptr< This > shared_ptr
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:12:23