gtsam 4.1.1
gtsam
gtsam::FixedLagSmoother Class Referenceabstract
+ Inheritance diagram for gtsam::FixedLagSmoother:

Public Member Functions

 FixedLagSmoother (double smootherLag=0.0)
 default constructor
 
virtual ~FixedLagSmoother ()
 destructor
 
virtual void print (const std::string &s="FixedLagSmoother:\n", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 Print the factor for debugging and testing (implementing Testable) More...
 
virtual bool equals (const FixedLagSmoother &rhs, double tol=1e-9) const
 Check if two IncrementalFixedLagSmoother Objects are equal. More...
 
double smootherLag () const
 read the current smoother lag
 
double & smootherLag ()
 write to the current smoother lag
 
const KeyTimestampMaptimestamps () const
 Access the current set of timestamps associated with each variable.
 
virtual Result update (const NonlinearFactorGraph &newFactors=NonlinearFactorGraph(), const Values &newTheta=Values(), const KeyTimestampMap &timestamps=KeyTimestampMap(), const FactorIndices &factorsToRemove=FactorIndices())=0
 Add new factors, updating the solution and relinearizing as needed. More...
 
virtual Values calculateEstimate () const =0
 Compute an estimate from the incomplete linear delta computed during the last update. More...
 

Public Types

typedef boost::shared_ptr< FixedLagSmoothershared_ptr
 Typedef for a shared pointer to an Incremental Fixed-Lag Smoother.
 
typedef std::map< Key, double > KeyTimestampMap
 Typedef for a Key-Timestamp map/database.
 
typedef std::multimap< double, KeyTimestampKeyMap
 

Classes

struct  Result
 Meta information returned about the update. More...
 

Protected Member Functions

void updateKeyTimestampMap (const KeyTimestampMap &newTimestamps)
 Update the Timestamps associated with the keys.
 
void eraseKeyTimestampMap (const KeyVector &keys)
 Erase keys from the Key-Timestamps database.
 
double getCurrentTimestamp () const
 Find the most recent timestamp of the system.
 
KeyVector findKeysBefore (double timestamp) const
 Find all of the keys associated with timestamps before the provided time.
 
KeyVector findKeysAfter (double timestamp) const
 Find all of the keys associated with timestamps before the provided time.
 

Protected Attributes

double smootherLag_
 The length of the smoother lag. More...
 
TimestampKeyMap timestampKeyMap_
 The current timestamp associated with each tracked key.
 
KeyTimestampMap keyTimestampMap_
 

Member Function Documentation

◆ calculateEstimate()

virtual Values gtsam::FixedLagSmoother::calculateEstimate ( ) const
pure virtual

Compute an estimate from the incomplete linear delta computed during the last update.

This delta is incomplete because it was not updated below wildfire_threshold. If only a single variable is needed, it is faster to call calculateEstimate(const KEY&).

Implemented in gtsam::BatchFixedLagSmoother, and gtsam::IncrementalFixedLagSmoother.

◆ equals()

bool gtsam::FixedLagSmoother::equals ( const FixedLagSmoother rhs,
double  tol = 1e-9 
) const
virtual

◆ print()

void gtsam::FixedLagSmoother::print ( const std::string &  s = "FixedLagSmoother:\n",
const KeyFormatter keyFormatter = DefaultKeyFormatter 
) const
virtual

Print the factor for debugging and testing (implementing Testable)

Reimplemented in gtsam::BatchFixedLagSmoother, and gtsam::IncrementalFixedLagSmoother.

◆ update()

virtual Result gtsam::FixedLagSmoother::update ( const NonlinearFactorGraph newFactors = NonlinearFactorGraph(),
const Values newTheta = Values(),
const KeyTimestampMap timestamps = KeyTimestampMap(),
const FactorIndices factorsToRemove = FactorIndices() 
)
pure virtual

Add new factors, updating the solution and relinearizing as needed.

Implemented in gtsam::BatchFixedLagSmoother, and gtsam::IncrementalFixedLagSmoother.

Member Data Documentation

◆ smootherLag_

double gtsam::FixedLagSmoother::smootherLag_
protected

The length of the smoother lag.

Any variable older than this amount will be marginalized out.


The documentation for this class was generated from the following files: