Protected Attributes | List of all members
gtsam::HybridNonlinearISAM Class Reference

#include <HybridNonlinearISAM.h>

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. More...
 
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

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

Detailed Description

Wrapper class to manage ISAM in a nonlinear context

Definition at line 28 of file HybridNonlinearISAM.h.

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

Definition at line 60 of file HybridNonlinearISAM.h.

Member Function Documentation

◆ assignment()

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

Return the current discrete assignment

Definition at line 94 of file HybridNonlinearISAM.h.

◆ bayesTree()

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

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

Definition at line 81 of file HybridNonlinearISAM.h.

◆ estimate()

Values gtsam::HybridNonlinearISAM::estimate ( )

Return the current solution estimate

Definition at line 82 of file HybridNonlinearISAM.cpp.

◆ getFactorsUnsafe()

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

get underlying nonlinear graph

Definition at line 97 of file HybridNonlinearISAM.h.

◆ getLinearizationPoint()

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

Return the current linearization point

Definition at line 91 of file HybridNonlinearISAM.h.

◆ print()

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

prints out all contents of the system

Definition at line 99 of file HybridNonlinearISAM.cpp.

◆ printStats()

void gtsam::HybridNonlinearISAM::printStats ( ) const

prints out clique statistics

Definition at line 111 of file HybridNonlinearISAM.cpp.

◆ prune()

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

Prune the underlying Bayes tree.

Parameters
maxNumberLeavesThe max number of leaf nodes to keep.

Definition at line 88 of file HybridNonlinearISAM.h.

◆ reorder_relinearize()

void gtsam::HybridNonlinearISAM::reorder_relinearize ( )

Relinearization and reordering of variables

Definition at line 63 of file HybridNonlinearISAM.cpp.

◆ reorderCounter()

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

TODO: comment.

Definition at line 103 of file HybridNonlinearISAM.h.

◆ reorderInterval()

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

TODO: comment.

get counters

Definition at line 102 of file HybridNonlinearISAM.h.

◆ saveGraph()

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

saves the Tree to a text file in GraphViz format

Definition at line 29 of file HybridNonlinearISAM.cpp.

◆ 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

Definition at line 35 of file HybridNonlinearISAM.cpp.

Member Data Documentation

◆ assignment_

DiscreteValues gtsam::HybridNonlinearISAM::assignment_
protected

The discrete assignment.

Definition at line 37 of file HybridNonlinearISAM.h.

◆ eliminationFunction_

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

The elimination function

Definition at line 47 of file HybridNonlinearISAM.h.

◆ factors_

HybridNonlinearFactorGraph gtsam::HybridNonlinearISAM::factors_
protected

The original factors, used when relinearizing

Definition at line 40 of file HybridNonlinearISAM.h.

◆ isam_

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

The internal iSAM object

Definition at line 31 of file HybridNonlinearISAM.h.

◆ linPoint_

Values gtsam::HybridNonlinearISAM::linPoint_
protected

The current linearization point

Definition at line 34 of file HybridNonlinearISAM.h.

◆ reorderCounter_

int gtsam::HybridNonlinearISAM::reorderCounter_
protected

Definition at line 44 of file HybridNonlinearISAM.h.

◆ reorderInterval_

int gtsam::HybridNonlinearISAM::reorderInterval_
protected

The reordering interval and counter

Definition at line 43 of file HybridNonlinearISAM.h.


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


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