#include <ISAM2UpdateParams.h>
Public Member Functions | |
ISAM2UpdateParams ()=default | |
Public Attributes | |
std::optional< FastMap< Key, int > > | constrainedKeys |
std::optional< FastList< Key > > | extraReelimKeys |
bool | force_relinearize {false} |
bool | forceFullSolve {false} |
std::optional< FastMap< FactorIndex, KeySet > > | newAffectedKeys |
std::optional< FastList< Key > > | noRelinKeys |
FactorIndices | removeFactorIndices |
This struct is used by ISAM2::update() to pass additional parameters to give the user a fine-grained control on how factors and relinearized, etc.
Definition at line 32 of file ISAM2UpdateParams.h.
|
default |
An optional map of keys to group labels, such that a variable can be constrained to a particular grouping in the BayesTree
Definition at line 40 of file ISAM2UpdateParams.h.
An optional set of nonlinear keys that iSAM2 will re-eliminate, regardless of the size of the linear delta. This allows the provided keys to be reordered.
Definition at line 49 of file ISAM2UpdateParams.h.
bool gtsam::ISAM2UpdateParams::force_relinearize {false} |
Relinearize any variables whose delta magnitude is sufficiently large (Params::relinearizeThreshold), regardless of the relinearization interval (Params::relinearizeSkip).
Definition at line 54 of file ISAM2UpdateParams.h.
bool gtsam::ISAM2UpdateParams::forceFullSolve {false} |
By default, iSAM2 uses a wildfire update scheme that stops updating when the deltas become too small down in the tree. This flagg forces a full solve instead.
Definition at line 71 of file ISAM2UpdateParams.h.
std::optional<FastMap<FactorIndex, KeySet> > gtsam::ISAM2UpdateParams::newAffectedKeys |
An optional set of new Keys that are now affected by factors, indexed by factor indices (as returned by ISAM2::update()). Use when working with smart factors. For example:
i
: ISAM2::update() called with a new smart factor depending on Keys X(0)
and X(1)
. It returns that the factor index for the new smart factor (inside ISAM2) is 13
.i+1
: The same smart factor has been augmented to now also depend on Keys X(2)
, X(3)
. Next call to ISAM2::update() must include its newAffectedKeys
field with the map 13 -> {X(2), X(3)}
. Definition at line 66 of file ISAM2UpdateParams.h.
An optional set of nonlinear keys that iSAM2 will hold at a constant linearization point, regardless of the size of the linear delta
Definition at line 44 of file ISAM2UpdateParams.h.
FactorIndices gtsam::ISAM2UpdateParams::removeFactorIndices |
Indices of factors to remove from system (default: empty)
Definition at line 36 of file ISAM2UpdateParams.h.