41 typedef std::shared_ptr<This> shared_ptr;
42 typedef std::weak_ptr<This> weak_ptr;
46 Base::FactorType::shared_ptr cachedFactor_;
47 Vector gradientContribution_;
48 #ifdef USE_BROKEN_FAST_BACKSUBSTITUTE 59 cachedFactor_(other.cachedFactor_),
60 gradientContribution_(other.gradientContribution_) {}
65 Base::operator=(other);
66 cachedFactor_ = other.cachedFactor_;
67 gradientContribution_ = other.gradientContribution_;
72 void setEliminationResult(
76 Base::FactorType::shared_ptr&
cachedFactor() {
return cachedFactor_; }
84 bool equals(
const This& other,
double tol = 1e-9)
const;
87 void print(
const std::string& s =
"",
88 const KeyFormatter& formatter = DefaultKeyFormatter)
const override;
94 bool optimizeWildfireNode(
const KeySet& replaced,
double threshold,
102 void nnz_internal(
size_t* result)
const;
103 size_t calculate_nnz()
const;
120 void findAll(
const KeySet& markedMask,
KeySet* keys)
const;
127 bool isDirty(
const KeySet& replaced,
const KeySet& changed)
const;
139 bool valuesChanged(
const KeySet& replaced,
const Vector& originalValues,
143 void markFrontalsAsChanged(
KeySet* changed)
const;
146 void restoreFromOriginals(
const Vector& originalValues,
149 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 151 friend class boost::serialization::access;
152 template <
class ARCHIVE>
153 void serialize(ARCHIVE& ar,
const unsigned int ) {
154 ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(Base);
155 ar& BOOST_SERIALIZATION_NVP(cachedFactor_);
156 ar& BOOST_SERIALIZATION_NVP(gradientContribution_);
172 size_t optimizeWildfire(
const ISAM2Clique::shared_ptr& root,
double threshold,
175 size_t optimizeWildfireNonRecursive(
const ISAM2Clique::shared_ptr& root,
176 double threshold,
const KeySet& replaced,
std::shared_ptr< This > shared_ptr
shared_ptr to this class
Definition: GaussianConditional.h:44
std::string serialize(const T &input)
serializes to a string
Definition: serialization.h:113
size_t optimizeWildfire(const ISAM2Clique::shared_ptr &root, double threshold, const KeySet &replaced, VectorValues *delta)
Definition: VectorValues.h:74
Definition: BayesTreeCliqueBase.h:49
Definition: GaussianConditional.h:38
Definition: Testable.h:112
ISAM2Clique()
Default constructor.
Definition: ISAM2Clique.h:53
GTSAM_EXPORT void print(const Matrix &A, const std::string &s, std::ostream &stream)
std::pair< std::shared_ptr< ConditionalType >, std::shared_ptr< _FactorType > > EliminationResult
Definition: EliminateableFactorGraph.h:85
ISAM2Clique(const ISAM2Clique &other)
Definition: ISAM2Clique.h:57
Conditional Gaussian Base class.
Linear Factor Graph where all factors are Gaussians.
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Definition: Key.h:35
Base::FactorType::shared_ptr & cachedFactor()
Definition: ISAM2Clique.h:76
Definition: chartTesting.h:28
Chordal Bayes Net, the result of eliminating a factor graph.
ISAM2Clique & operator=(const ISAM2Clique &other)
Definition: ISAM2Clique.h:64
Definition: ISAM2Clique.h:36
Base class for cliques of a BayesTree.
const Vector & gradientContribution() const
Access the gradient contribution.
Definition: ISAM2Clique.h:79