Go to the documentation of this file.
35 :
Base(continuousKeys, discreteKeys), factors_(
factors) {}
39 const This *
e =
dynamic_cast<const This *
>(&lf);
40 if (
e ==
nullptr)
return false;
50 return f1->equals(*f2, tol);
60 std::cout <<
" empty" << std::endl;
67 if (gf && !gf->empty()) {
75 std::cout <<
"}" << std::endl;
108 auto errorFunc = [&continuousValues](
const sharedFactor &gf) {
109 return gf->error(continuousValues);
118 return gf->error(
values.continuous());
Implementation of a discrete conditional mixture factor. Implements a joint discrete-continuous facto...
Linear Factor Graph where all factors are Gaussians.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
virtual bool equals(const HybridFactor &lf, double tol=1e-9) const
equals
bool empty() const
Check if tree is empty.
bool equals(const DecisionTree &other, const CompareFunc &compare=&DefaultCompare) const
double error(const HybridValues &values) const override
Compute the log-likelihood, including the log-normalizing constant.
const GaussianFactorGraph factors
mxArray * wrap(const Class &value)
NonlinearFactorGraph graph2()
const KeyFormatter & formatter
double f2(const Vector2 &x)
DiscreteKeys is a set of keys that can be assembled using the & operator.
void print(const std::string &s, const LabelFormatter &labelFormatter, const ValueFormatter &valueFormatter) const
GTSAM-style print.
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
std::shared_ptr< GaussianFactor > sharedFactor
GaussianMixtureFactor()=default
Default constructor, mainly for serialization.
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Decision Tree for use in DiscreteFactors.
GaussianFactorGraphTree add(const GaussianFactorGraphTree &sum) const
Combine the Gaussian Factor Graphs in sum and this while maintaining the original tree structure.
sharedFactor operator()(const DiscreteValues &assignment) const
Get factor at a given discrete assignment.
DecisionTree apply(const Unary &op) const
void print(const std::string &s="GaussianMixtureFactor\n", const KeyFormatter &formatter=DefaultKeyFormatter) const override
print
void print(const std::string &s="HybridFactor\n", const KeyFormatter &formatter=DefaultKeyFormatter) const override
print
GaussianFactorGraphTree asGaussianFactorGraphTree() const
Helper function to return factors and functional to create a DecisionTree of Gaussian Factor Graphs.
Factors factors_
Decision tree of Gaussian factors indexed by discrete keys.
AlgebraicDecisionTree< Key > errorTree(const VectorValues &continuousValues) const
Compute error of the GaussianMixtureFactor as a tree.
bool equals(const HybridFactor &lf, double tol=1e-9) const override
equals
A factor with a quadratic error function - a Gaussian.
Point2 f1(const Point3 &p, OptionalJacobian< 2, 3 > H)
std::uint64_t Key
Integer nonlinear key type.
std::string str() const
return the string
A set of GaussianFactors, indexed by a set of discrete keys.
gtsam
Author(s):
autogenerated on Tue Jun 25 2024 03:00:54