Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
gtsam::FixedLagSmoother Class Referenceabstract

#include <FixedLagSmoother.h>

Inheritance diagram for gtsam::FixedLagSmoother:
Inheritance graph
[legend]

Classes

struct  Result
 

Public Types

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

Public Member Functions

virtual Values calculateEstimate () const =0
 
virtual bool equals (const FixedLagSmoother &rhs, double tol=1e-9) const
 
 FixedLagSmoother (double smootherLag=0.0)
 
virtual void print (const std::string &s="FixedLagSmoother:\, const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 
double smootherLag () const
 
double & smootherLag ()
 
const KeyTimestampMaptimestamps () const
 
virtual Result update (const NonlinearFactorGraph &newFactors=NonlinearFactorGraph(), const Values &newTheta=Values(), const KeyTimestampMap &timestamps=KeyTimestampMap(), const FactorIndices &factorsToRemove=FactorIndices())=0
 
virtual ~FixedLagSmoother ()
 

Protected Member Functions

void eraseKeyTimestampMap (const KeyVector &keys)
 
KeyVector findKeysAfter (double timestamp) const
 
KeyVector findKeysBefore (double timestamp) const
 
double getCurrentTimestamp () const
 
void updateKeyTimestampMap (const KeyTimestampMap &newTimestamps)
 

Protected Attributes

KeyTimestampMap keyTimestampMap_
 
double smootherLag_
 
TimestampKeyMap timestampKeyMap_
 

Detailed Description

Definition at line 33 of file nonlinear/FixedLagSmoother.h.

Member Typedef Documentation

◆ KeyTimestampMap

typedef std::map<Key, double> gtsam::FixedLagSmoother::KeyTimestampMap

Typedef for a Key-Timestamp map/database.

Definition at line 41 of file nonlinear/FixedLagSmoother.h.

◆ shared_ptr

Typedef for a shared pointer to an Incremental Fixed-Lag Smoother.

Definition at line 38 of file nonlinear/FixedLagSmoother.h.

◆ TimestampKeyMap

typedef std::multimap<double, Key> gtsam::FixedLagSmoother::TimestampKeyMap

Definition at line 42 of file nonlinear/FixedLagSmoother.h.

Constructor & Destructor Documentation

◆ FixedLagSmoother()

gtsam::FixedLagSmoother::FixedLagSmoother ( double  smootherLag = 0.0)
inline

default constructor

Definition at line 66 of file nonlinear/FixedLagSmoother.h.

◆ ~FixedLagSmoother()

virtual gtsam::FixedLagSmoother::~FixedLagSmoother ( )
inlinevirtual

destructor

Definition at line 69 of file nonlinear/FixedLagSmoother.h.

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::IncrementalFixedLagSmoother, and gtsam::BatchFixedLagSmoother.

◆ equals()

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

Check if two IncrementalFixedLagSmoother Objects are equal

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

Definition at line 40 of file FixedLagSmoother.cpp.

◆ eraseKeyTimestampMap()

void gtsam::FixedLagSmoother::eraseKeyTimestampMap ( const KeyVector keys)
protected

Erase keys from the Key-Timestamps database

Definition at line 76 of file FixedLagSmoother.cpp.

◆ findKeysAfter()

KeyVector gtsam::FixedLagSmoother::findKeysAfter ( double  timestamp) const
protected

Find all of the keys associated with timestamps before the provided time

Definition at line 114 of file FixedLagSmoother.cpp.

◆ findKeysBefore()

KeyVector gtsam::FixedLagSmoother::findKeysBefore ( double  timestamp) const
protected

Find all of the keys associated with timestamps before the provided time

Definition at line 104 of file FixedLagSmoother.cpp.

◆ getCurrentTimestamp()

double gtsam::FixedLagSmoother::getCurrentTimestamp ( ) const
protected

Find the most recent timestamp of the system

Definition at line 95 of file FixedLagSmoother.cpp.

◆ 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::IncrementalFixedLagSmoother, and gtsam::BatchFixedLagSmoother.

Definition at line 34 of file FixedLagSmoother.cpp.

◆ smootherLag() [1/2]

double gtsam::FixedLagSmoother::smootherLag ( ) const
inline

read the current smoother lag

Definition at line 80 of file nonlinear/FixedLagSmoother.h.

◆ smootherLag() [2/2]

double& gtsam::FixedLagSmoother::smootherLag ( )
inline

write to the current smoother lag

Definition at line 85 of file nonlinear/FixedLagSmoother.h.

◆ timestamps()

const KeyTimestampMap& gtsam::FixedLagSmoother::timestamps ( ) const
inline

Access the current set of timestamps associated with each variable

Definition at line 90 of file nonlinear/FixedLagSmoother.h.

◆ 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::IncrementalFixedLagSmoother, and gtsam::BatchFixedLagSmoother.

◆ updateKeyTimestampMap()

void gtsam::FixedLagSmoother::updateKeyTimestampMap ( const KeyTimestampMap newTimestamps)
protected

Update the Timestamps associated with the keys

Definition at line 46 of file FixedLagSmoother.cpp.

Member Data Documentation

◆ keyTimestampMap_

KeyTimestampMap gtsam::FixedLagSmoother::keyTimestampMap_
protected

Definition at line 114 of file nonlinear/FixedLagSmoother.h.

◆ smootherLag_

double gtsam::FixedLagSmoother::smootherLag_
protected

The length of the smoother lag. Any variable older than this amount will be marginalized out.

Definition at line 110 of file nonlinear/FixedLagSmoother.h.

◆ timestampKeyMap_

TimestampKeyMap gtsam::FixedLagSmoother::timestampKeyMap_
protected

The current timestamp associated with each tracked key

Definition at line 113 of file nonlinear/FixedLagSmoother.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:46:18