50 throw std::runtime_error(
51 "Cannot convert an unconstrained JacobianFactor to LinearEquality");
57 throw std::runtime_error(
"Cannot convert HessianFactor to LinearEquality");
74 const Matrix& A3,
const Vector& b,
Key dualKey) :
82 template<
typename TERMS>
98 DefaultKeyFormatter)
const override {
105 > (boost::make_shared < LinearEquality > (*
this));
120 return unweighted_error(c);
Global functions in a separate testing namespace.
Definition chartTesting.h:28
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
std::uint64_t Key
Integer nonlinear key type.
Definition types.h:100
All noise models live in the noiseModel namespace.
Definition LossFunctions.cpp:27
A manifold defines a space in which there is a notion of a linear tangent space that can be centered ...
Definition concepts.h:30
A helper that implements the traits interface for GTSAM types.
Definition Testable.h:151
An abstract virtual base class for JacobianFactor and HessianFactor.
Definition GaussianFactor.h:39
boost::shared_ptr< This > shared_ptr
shared_ptr to this class
Definition GaussianFactor.h:42
A Gaussian factor using the canonical parameters (information form).
Definition HessianFactor.h:101
void print(const std::string &s="", const KeyFormatter &formatter=DefaultKeyFormatter) const override
print
Definition JacobianFactor.cpp:414
JacobianFactor(const GaussianFactor &gf)
Convert from other GaussianFactor.
Definition JacobianFactor.cpp:60
bool equals(const GaussianFactor &lf, double tol=1e-9) const override
Equals for testable.
Definition JacobianFactor.cpp:431
bool isConstrained() const
is noise model constrained ?
Definition JacobianFactor.h:269
size_t rows() const
return the number of rows in the corresponding linear system
Definition JacobianFactor.h:283
VectorValues represents a collection of vector-valued variables associated each with a unique integer...
Definition VectorValues.h:74
This class defines a linear equality constraints, inheriting JacobianFactor with the special Constrai...
Definition LinearEquality.h:29
Key dualKey() const
dual key
Definition LinearEquality.h:109
LinearEquality(const HessianFactor &hf)
Conversion from HessianFactor (does Cholesky to obtain Jacobian matrix).
Definition LinearEquality.h:56
bool active() const
for active set method: equality constraints are always active
Definition LinearEquality.h:114
void print(const std::string &s="", const KeyFormatter &formatter=DefaultKeyFormatter) const override
print
Definition LinearEquality.h:97
GaussianFactor::shared_ptr clone() const override
Clone this LinearEquality.
Definition LinearEquality.h:103
bool equals(const GaussianFactor &lf, double tol=1e-9) const override
equals
Definition LinearEquality.h:92
double error(const VectorValues &c) const override
Special error for constraints.
Definition LinearEquality.h:127
LinearEquality(const TERMS &terms, const Vector &b, Key dualKey)
Construct an n-ary factor.
Definition LinearEquality.h:83
boost::shared_ptr< This > shared_ptr
shared_ptr to this class
Definition LinearEquality.h:33
~LinearEquality() override
Virtual destructor.
Definition LinearEquality.h:88
Vector error_vector(const VectorValues &c) const
Special error_vector for constraints (A*x-b).
Definition LinearEquality.h:119
LinearEquality(const JacobianFactor &jf, Key dualKey)
Construct from a constrained noisemodel JacobianFactor with a dual key.
Definition LinearEquality.h:47
LinearEquality This
Typedef to this class.
Definition LinearEquality.h:31
LinearEquality(Key i1, const Matrix &A1, Key i2, const Matrix &A2, Key i3, const Matrix &A3, const Vector &b, Key dualKey)
Construct ternary factor.
Definition LinearEquality.h:73
LinearEquality(Key i1, const Matrix &A1, Key i2, const Matrix &A2, const Vector &b, Key dualKey)
Construct binary factor.
Definition LinearEquality.h:66
JacobianFactor Base
Typedef to base class.
Definition LinearEquality.h:32
LinearEquality()
default constructor for I/O
Definition LinearEquality.h:40
LinearEquality(Key i1, const Matrix &A1, const Vector &b, Key dualKey)
Construct unary factor.
Definition LinearEquality.h:61