Go to the documentation of this file.
34 typedef std::shared_ptr<ConcurrentIncrementalFilter>
shared_ptr;
54 Result() : iterations(0), nonlinearVariables(0), linearVariables(0),
error(0) {}
77 return isam2_.getFactorsUnsafe();
87 return isam2_.getLinearizationPoint();
92 return isam2_.getDelta();
99 return isam2_.calculateEstimate();
107 template<
class VALUE>
109 return isam2_.calculateEstimate<
VALUE>(
key);
127 const std::optional< FactorIndices >& removeFactorIndices = {});
133 void presync()
override;
142 void getSummarizedFactors(NonlinearFactorGraph& filterSummarization,
Values& filterSummarizationValues)
override;
152 void getSmootherFactors(NonlinearFactorGraph& smootherFactors,
Values& smootherValues)
override;
159 void synchronize(
const NonlinearFactorGraph& smootherSummarization,
const Values& smootherSummarizationValues)
override;
165 void postsync()
override;
const VectorValues & getDelta() const
const ISAM2 & getISAM2() const
Array< double, 1, 3 > e(1./3., 0.5, 2.)
size_t nonlinearVariables
The number of variables that can be relinearized.
void synchronize(ConcurrentFilter &filter, ConcurrentSmoother &smoother)
size_t variablesRelinearized
Values smootherValues_
A temporary holding place for the linearization points of all keys being sent to the smoother.
double error
The final factor graph error.
NonlinearFactorGraph smootherShortcut_
A set of conditional factors from the old separator to the current separator (recursively calculated ...
FactorIndices newFactorsIndices
KeyFormatter DefaultKeyFormatter
Assign default key formatter.
ISAM2 isam2_
The iSAM2 inference engine.
void print(const Matrix &A, const string &s, ostream &stream)
NonlinearFactorGraph smootherFactors_
A temporary holding place for the set of full nonlinear factors being sent to the smoother.
ConcurrentFilter Base
typedef for base class
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
static ConjugateGradientParameters parameters
Values calculateEstimate() const
~ConcurrentIncrementalFilter() override
std::shared_ptr< ConcurrentIncrementalFilter > shared_ptr
FactorIndices currentSmootherSummarizationSlots_
The slots in factor graph that correspond to the current smoother summarization on the current separa...
ConcurrentIncrementalFilter::Result ConcurrentIncrementalFilterResult
Typedef for Matlab wrapping.
NonlinearFactorGraph previousSmootherSummarization_
The smoother summarization on the old separator sent by the smoother during the last synchronization.
VALUE calculateEstimate(Key key) const
const gtsam::Symbol key('X', 0)
Incremental update functionality (ISAM2) for BayesTree, with fluid relinearization.
std::shared_ptr< This > shared_ptr
size_t variablesReeliminated
size_t getNonlinearVariables() const
const Values & getLinearizationPoint() const
std::vector< float > Values
ConcurrentIncrementalFilter(const ISAM2Params ¶meters=ISAM2Params())
size_t linearVariables
The number of variables that must keep a constant linearization point.
size_t iterations
The number of optimizer iterations performed.
Base classes for the 'filter' and 'smoother' portion of the Concurrent Filtering and Smoothing archit...
const NonlinearFactorGraph & getFactors() const
std::uint64_t Key
Integer nonlinear key type.
size_t getLinearVariables() const
size_t getIterations() const
Getter methods.
FastVector< FactorIndex > FactorIndices
Define collection types:
gtsam
Author(s):
autogenerated on Fri Nov 1 2024 03:32:09