34 typedef std::shared_ptr<BatchFixedLagSmoother>
shared_ptr;
38 FixedLagSmoother(smootherLag), parameters_(parameters), enforceConsistency_(enforceConsistency) { };
44 void print(
const std::string& s =
"BatchFixedLagSmoother:\n",
const KeyFormatter& keyFormatter = DefaultKeyFormatter)
const override;
71 const Vector delta = delta_.at(key);
106 Matrix marginalCovariance(
Key key)
const;
158 void removeFactors(
const std::set<size_t>& deleteFactors);
170 void marginalize(
const KeyVector& marginalizableKeys);
174 static void PrintKeySet(
const std::set<Key>& keys,
const std::string& label);
176 static void PrintSymbolicFactor(
const NonlinearFactor::shared_ptr& factor);
179 static void PrintSymbolicGraph(
const GaussianFactorGraph& graph,
const std::string& label);
Definition: LevenbergMarquardtParams.h:35
std::map< Key, double > KeyTimestampMap
Typedef for a Key-Timestamp map/database.
Definition: FixedLagSmoother.h:41
const VectorValues & getDelta() const
Definition: BatchFixedLagSmoother.h:101
std::queue< size_t > availableSlots_
Definition: BatchFixedLagSmoother.h:149
VALUE calculateEstimate(Key key) const
Definition: BatchFixedLagSmoother.h:70
Base class for a fixed-lag smoother. This mimics the basic interface to iSAM2.
FastVector< FactorIndex > FactorIndices
Define collection types:
Definition: Factor.h:36
Values theta_
Definition: BatchFixedLagSmoother.h:137
BatchFixedLagSmoother(double smootherLag=0.0, const LevenbergMarquardtParams ¶meters=LevenbergMarquardtParams(), bool enforceConsistency=true)
Definition: BatchFixedLagSmoother.h:37
const Ordering & getOrdering() const
Definition: BatchFixedLagSmoother.h:96
Definition: Ordering.h:37
const NonlinearFactorGraph & getFactors() const
Definition: BatchFixedLagSmoother.h:86
FactorIndex factorIndex_
Definition: BatchFixedLagSmoother.h:152
Values retract(const VectorValues &delta) const
Definition: VectorValues.h:74
const LevenbergMarquardtParams & params() const
Definition: BatchFixedLagSmoother.h:76
const Values & getLinearizationPoint() const
Definition: BatchFixedLagSmoother.h:91
Definition: BatchFixedLagSmoother.h:29
Definition: Testable.h:112
VectorValues delta_
Definition: BatchFixedLagSmoother.h:146
GTSAM_EXPORT Point3 optimize(const NonlinearFactorGraph &graph, const Values &values, Key landmarkKey)
Definition: FixedLagSmoother.h:33
bool enforceConsistency_
Definition: BatchFixedLagSmoother.h:131
Definition: FixedLagSmoother.h:48
~BatchFixedLagSmoother() override
Definition: BatchFixedLagSmoother.h:41
std::function< EliminationResult(const FactorGraphType &, const Ordering &)> Eliminate
The function type that does a single dense elimination step on a subgraph.
Definition: EliminateableFactorGraph.h:88
GTSAM_EXPORT void print(const Matrix &A, const std::string &s, std::ostream &stream)
LevenbergMarquardtParams & params()
Definition: BatchFixedLagSmoother.h:81
A nonlinear optimizer that uses the Levenberg-Marquardt trust-region scheme.
Ordering ordering_
Definition: BatchFixedLagSmoother.h:143
std::shared_ptr< BatchFixedLagSmoother > shared_ptr
Typedef for a shared pointer to an Incremental Fixed-Lag Smoother.
Definition: BatchFixedLagSmoother.h:34
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Definition: Key.h:35
Definition: NonlinearFactorGraph.h:55
std::shared_ptr< This > shared_ptr
shared_ptr to this class
Definition: GaussianFactor.h:42
Definition: chartTesting.h:28
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
Definition: Key.h:86
Values calculateEstimate() const override
Definition: BatchFixedLagSmoother.h:59
GTSAM_EXPORT std::pair< std::shared_ptr< GaussianConditional >, std::shared_ptr< GaussianFactor > > EliminatePreferCholesky(const GaussianFactorGraph &factors, const Ordering &keys)
Values linearValues_
Definition: BatchFixedLagSmoother.h:140
NonlinearFactorGraph factors_
Definition: BatchFixedLagSmoother.h:134
std::map< Key, std::set< Key > > FactorIndex
Definition: BatchFixedLagSmoother.h:123
std::uint64_t Key
Integer nonlinear key type.
Definition: types.h:102
LevenbergMarquardtParams parameters_
Definition: BatchFixedLagSmoother.h:126
Definition: GaussianFactorGraph.h:73
GTSAM_EXPORT void PrintKeySet(const KeySet &keys, const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter)
Utility function to print sets of keys with optional prefix.