GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
Protected Attributes | List of all members
gtsam::HybridNonlinearISAM Class Reference

#include <HybridNonlinearISAM.h>

Collaboration diagram for gtsam::HybridNonlinearISAM:
Collaboration graph
[legend]

Public Member Functions

Standard Constructors
 HybridNonlinearISAM (int reorderInterval=1, const HybridGaussianFactorGraph::Eliminate &eliminationFunction=HybridGaussianFactorGraph::EliminationTraitsType::DefaultEliminate)
 
Standard Interface
Values estimate ()
 
const HybridGaussianISAMbayesTree () const
 
void prune (const size_t maxNumberLeaves)
 Prune the underlying Bayes tree. More...
 
const ValuesgetLinearizationPoint () const
 
const DiscreteValuesassignment () const
 
const HybridNonlinearFactorGraphgetFactorsUnsafe () const
 
int reorderInterval () const
 TODO: comment. More...
 
int reorderCounter () const
 TODO: comment.
 
void print (const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 
void printStats () const
 
void saveGraph (const std::string &s, const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 
Advanced Interface
void update (const HybridNonlinearFactorGraph &newFactors, const Values &initialValues, const std::optional< size_t > &maxNrLeaves={}, const std::optional< Ordering > &ordering={})
 
void reorder_relinearize ()
 

Protected Attributes

gtsam::HybridGaussianISAM isam_
 
Values linPoint_
 
DiscreteValues assignment_
 The discrete assignment.
 
HybridNonlinearFactorGraph factors_
 
int reorderInterval_
 
int reorderCounter_
 
HybridGaussianFactorGraph::Eliminate eliminationFunction_
 

Detailed Description

Wrapper class to manage ISAM in a nonlinear context

Constructor & Destructor Documentation

◆ HybridNonlinearISAM()

gtsam::HybridNonlinearISAM::HybridNonlinearISAM ( int  reorderInterval = 1,
const HybridGaussianFactorGraph::Eliminate eliminationFunction = HybridGaussianFactorGraph::EliminationTraitsType::DefaultEliminate 
)
inline

Periodically reorder and relinearize

Parameters
reorderIntervalis the number of updates between reorderings, 0 never reorders (and is dangerous for memory consumption) 1 (default) reorders every time, in worse case is batch every update typical values are 50 or 100

Member Function Documentation

◆ assignment()

const DiscreteValues& gtsam::HybridNonlinearISAM::assignment ( ) const
inline

Return the current discrete assignment

◆ bayesTree()

const HybridGaussianISAM& gtsam::HybridNonlinearISAM::bayesTree ( ) const
inline

find the marginal covariance for a single variable access the underlying bayes tree

◆ estimate()

Values gtsam::HybridNonlinearISAM::estimate ( )

Return the current solution estimate

◆ getFactorsUnsafe()

const HybridNonlinearFactorGraph& gtsam::HybridNonlinearISAM::getFactorsUnsafe ( ) const
inline

get underlying nonlinear graph

◆ getLinearizationPoint()

const Values& gtsam::HybridNonlinearISAM::getLinearizationPoint ( ) const
inline

Return the current linearization point

◆ print()

void gtsam::HybridNonlinearISAM::print ( const std::string &  s = "",
const KeyFormatter keyFormatter = DefaultKeyFormatter 
) const

prints out all contents of the system

◆ printStats()

void gtsam::HybridNonlinearISAM::printStats ( ) const

prints out clique statistics

◆ prune()

void gtsam::HybridNonlinearISAM::prune ( const size_t  maxNumberLeaves)
inline

Prune the underlying Bayes tree.

Parameters
maxNumberLeavesThe max number of leaf nodes to keep.

◆ reorder_relinearize()

void gtsam::HybridNonlinearISAM::reorder_relinearize ( )

Relinearization and reordering of variables

◆ reorderInterval()

int gtsam::HybridNonlinearISAM::reorderInterval ( ) const
inline

TODO: comment.

get counters

◆ saveGraph()

void gtsam::HybridNonlinearISAM::saveGraph ( const std::string &  s,
const KeyFormatter keyFormatter = DefaultKeyFormatter 
) const

saves the Tree to a text file in GraphViz format

◆ update()

void gtsam::HybridNonlinearISAM::update ( const HybridNonlinearFactorGraph newFactors,
const Values initialValues,
const std::optional< size_t > &  maxNrLeaves = {},
const std::optional< Ordering > &  ordering = {} 
)

Add new factors along with their initial linearization points

Member Data Documentation

◆ eliminationFunction_

HybridGaussianFactorGraph::Eliminate gtsam::HybridNonlinearISAM::eliminationFunction_
protected

The elimination function

◆ factors_

HybridNonlinearFactorGraph gtsam::HybridNonlinearISAM::factors_
protected

The original factors, used when relinearizing

◆ isam_

gtsam::HybridGaussianISAM gtsam::HybridNonlinearISAM::isam_
protected

The internal iSAM object

◆ linPoint_

Values gtsam::HybridNonlinearISAM::linPoint_
protected

The current linearization point

◆ reorderInterval_

int gtsam::HybridNonlinearISAM::reorderInterval_
protected

The reordering interval and counter


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