23 #include <gtsam_unstable/dllexport.h> 54 Result() : iterations(0), intermediateSteps(0), nonlinearVariables(0), linearVariables(0), error(0) {};
73 const std::string&
s =
"FixedLagSmoother:\n",
91 return keyTimestampMap_;
97 const KeyTimestampMap& timestamps = KeyTimestampMap(),
104 virtual Values calculateEstimate()
const = 0;
117 void updateKeyTimestampMap(
const KeyTimestampMap& newTimestamps);
123 double getCurrentTimestamp()
const;
126 KeyVector findKeysBefore(
double timestamp)
const;
129 KeyVector findKeysAfter(
double timestamp)
const;
void print(const Matrix &A, const string &s, ostream &stream)
size_t iterations
The number of optimizer iterations performed.
std::map< Key, double > KeyTimestampMap
Typedef for a Key-Timestamp map/database.
size_t linearVariables
The number of variables that must keep a constant linearization point.
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.
KeyTimestampMap keyTimestampMap_
FixedLagSmootherKeyTimestampMap::value_type FixedLagSmootherKeyTimestampMapValue
FastVector< FactorIndex > FactorIndices
Define collection types:
size_t getIterations() const
Getter methods.
static const KeyFormatter DefaultKeyFormatter
size_t intermediateSteps
The number of intermediate steps performed within the optimization. For L-M, this is the number of la...
size_t getIntermediateSteps() const
std::multimap< double, Key > TimestampKeyMap
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
const KeyTimestampMap & timestamps() const
FixedLagSmoother::Result FixedLagSmootherResult
boost::shared_ptr< FixedLagSmoother > shared_ptr
Typedef for a shared pointer to an Incremental Fixed-Lag Smoother.
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
size_t getLinearVariables() const
virtual ~FixedLagSmoother()
size_t nonlinearVariables
The number of variables that can be relinearized.
FixedLagSmoother(double smootherLag=0.0)
std::vector< float > Values
TimestampKeyMap timestampKeyMap_
FixedLagSmoother::KeyTimestampMap FixedLagSmootherKeyTimestampMap
Typedef for matlab wrapping.
double smootherLag() const
size_t getNonlinearVariables() const