23 #include <gtsam_unstable/dllexport.h> 42 typedef std::multimap<double, Key> TimestampKeyMap;
54 Result() : iterations(0), intermediateSteps(0), nonlinearVariables(0), linearVariables(0), error(0) {};
58 size_t getIntermediateSteps()
const {
return intermediateSteps; }
59 size_t getNonlinearVariables()
const {
return nonlinearVariables; }
60 size_t getLinearVariables()
const {
return linearVariables; }
61 double getError()
const {
return error; }
73 const std::string& s =
"FixedLagSmoother:\n",
74 const KeyFormatter& keyFormatter = DefaultKeyFormatter)
const;
91 return keyTimestampMap_;
97 const KeyTimestampMap& timestamps = KeyTimestampMap(),
104 virtual Values calculateEstimate()
const = 0;
114 KeyTimestampMap keyTimestampMap_;
117 void updateKeyTimestampMap(
const KeyTimestampMap& newTimestamps);
120 void eraseKeyTimestampMap(
const KeyVector& keys);
123 double getCurrentTimestamp()
const;
126 KeyVector findKeysBefore(
double timestamp)
const;
129 KeyVector findKeysAfter(
double timestamp)
const;
135 typedef FixedLagSmootherKeyTimestampMap::value_type FixedLagSmootherKeyTimestampMapValue;
size_t iterations
The number of optimizer iterations performed.
Definition: FixedLagSmoother.h:49
std::map< Key, double > KeyTimestampMap
Typedef for a Key-Timestamp map/database.
Definition: FixedLagSmoother.h:41
size_t linearVariables
The number of variables that must keep a constant linearization point.
Definition: FixedLagSmoother.h:52
A non-templated config holding any types of Manifold-group elements.
Factor Graph consisting of non-linear factors.
double error
The final factor graph error.
Definition: FixedLagSmoother.h:53
FastVector< FactorIndex > FactorIndices
Define collection types:
Definition: Factor.h:36
size_t getIterations() const
Getter methods.
Definition: FixedLagSmoother.h:57
double smootherLag_
Definition: FixedLagSmoother.h:110
size_t intermediateSteps
The number of intermediate steps performed within the optimization. For L-M, this is the number of la...
Definition: FixedLagSmoother.h:50
Definition: Testable.h:112
Definition: FixedLagSmoother.h:33
Definition: FixedLagSmoother.h:48
GTSAM_EXPORT void print(const Matrix &A, const std::string &s, std::ostream &stream)
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
virtual ~FixedLagSmoother()
Definition: FixedLagSmoother.h:69
size_t nonlinearVariables
The number of variables that can be relinearized.
Definition: FixedLagSmoother.h:51
double smootherLag() const
Definition: FixedLagSmoother.h:80
Definition: chartTesting.h:28
FixedLagSmoother(double smootherLag=0.0)
Definition: FixedLagSmoother.h:66
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
Definition: Key.h:86
const KeyTimestampMap & timestamps() const
Definition: FixedLagSmoother.h:90
TimestampKeyMap timestampKeyMap_
Definition: FixedLagSmoother.h:113
FixedLagSmoother::KeyTimestampMap FixedLagSmootherKeyTimestampMap
Typedef for matlab wrapping.
Definition: FixedLagSmoother.h:134
double & smootherLag()
Definition: FixedLagSmoother.h:85
std::shared_ptr< FixedLagSmoother > shared_ptr
Typedef for a shared pointer to an Incremental Fixed-Lag Smoother.
Definition: FixedLagSmoother.h:38