Public Types | Public Member Functions | List of all members
gtsam::LinearCost Class Reference

#include <LinearCost.h>

Inheritance diagram for gtsam::LinearCost:
Inheritance graph
[legend]

Public Types

typedef JacobianFactor Base
 Typedef to base class. More...
 
typedef boost::shared_ptr< Thisshared_ptr
 shared_ptr to this class More...
 
typedef LinearCost This
 Typedef to this class. More...
 
- Public Types inherited from gtsam::JacobianFactor
typedef VerticalBlockMatrix::Block ABlock
 
typedef GaussianFactor Base
 Typedef to base class. More...
 
typedef ABlock::ColXpr BVector
 
typedef VerticalBlockMatrix::constBlock constABlock
 
typedef constABlock::ConstColXpr constBVector
 
typedef boost::shared_ptr< Thisshared_ptr
 shared_ptr to this class More...
 
typedef JacobianFactor This
 Typedef to this class. More...
 
- Public Types inherited from gtsam::GaussianFactor
typedef Factor Base
 Our base class. More...
 
typedef boost::shared_ptr< Thisshared_ptr
 shared_ptr to this class More...
 
typedef GaussianFactor This
 This class. More...
 
- Public Types inherited from gtsam::Factor
typedef KeyVector::const_iterator const_iterator
 Const iterator over keys. More...
 
typedef KeyVector::iterator iterator
 Iterator over keys. More...
 

Public Member Functions

GaussianFactor::shared_ptr clone () const override
 
bool equals (const GaussianFactor &lf, double tol=1e-9) const override
 
double error (const VectorValues &c) const override
 
Vector error_vector (const VectorValues &c) const
 
 LinearCost ()
 
 LinearCost (const HessianFactor &hf)
 
 LinearCost (const JacobianFactor &jf)
 
 LinearCost (Key i1, const RowVector &A1)
 
 LinearCost (Key i1, const RowVector &A1, Key i2, const RowVector &A2, double b)
 
 LinearCost (Key i1, const RowVector &A1, Key i2, const RowVector &A2, Key i3, const RowVector &A3)
 
template<typename TERMS >
 LinearCost (const TERMS &terms)
 
void print (const std::string &s="", const KeyFormatter &formatter=DefaultKeyFormatter) const override
 
 ~LinearCost () override
 
- Public Member Functions inherited from gtsam::JacobianFactor
Matrix augmentedInformation () const override
 
Matrix augmentedJacobian () const override
 
Matrix augmentedJacobianUnweighted () const
 
size_t cols () const
 
std::pair< boost::shared_ptr< GaussianConditional >, shared_ptreliminate (const Ordering &keys)
 
bool empty () const override
 
Vector error_vector (const VectorValues &c) const
 
const SharedDiagonalget_model () const
 
SharedDiagonalget_model ()
 
constABlock getA (const_iterator variable) const
 
constABlock getA () const
 
ABlock getA (iterator variable)
 
ABlock getA ()
 
const constBVector getb () const
 
BVector getb ()
 
DenseIndex getDim (const_iterator variable) const override
 
Vector gradient (Key key, const VectorValues &x) const override
 Compute the gradient wrt a key at any values. More...
 
VectorValues gradientAtZero () const override
 A'*b for Jacobian. More...
 
void gradientAtZero (double *d) const override
 A'*b for Jacobian (raw memory version) More...
 
std::map< Key, MatrixhessianBlockDiagonal () const override
 Return the block diagonal of the Hessian for this factor. More...
 
void hessianDiagonal (double *d) const override
 Raw memory access version of hessianDiagonal. More...
 
void hessianDiagonalAdd (VectorValues &d) const override
 Add the current diagonal to a VectorValues instance. More...
 
Matrix information () const override
 
bool isConstrained () const
 
std::pair< Matrix, Vectorjacobian () const override
 Returns (dense) A,b pair associated with factor, bakes in the weights. More...
 
 JacobianFactor (const GaussianFactor &gf)
 
 JacobianFactor (const JacobianFactor &jf)
 
 JacobianFactor (const HessianFactor &hf)
 
 JacobianFactor ()
 
 JacobianFactor (const Vector &b_in)
 
 JacobianFactor (Key i1, const Matrix &A1, const Vector &b, const SharedDiagonal &model=SharedDiagonal())
 
 JacobianFactor (Key i1, const Matrix &A1, Key i2, const Matrix &A2, const Vector &b, const SharedDiagonal &model=SharedDiagonal())
 
 JacobianFactor (Key i1, const Matrix &A1, Key i2, const Matrix &A2, Key i3, const Matrix &A3, const Vector &b, const SharedDiagonal &model=SharedDiagonal())
 
template<typename TERMS >
 JacobianFactor (const TERMS &terms, const Vector &b, const SharedDiagonal &model=SharedDiagonal())
 
template<typename KEYS >
 JacobianFactor (const KEYS &keys, const VerticalBlockMatrix &augmentedMatrix, const SharedDiagonal &sigmas=SharedDiagonal())
 
 JacobianFactor (const GaussianFactorGraph &graph)
 
 JacobianFactor (const GaussianFactorGraph &graph, const VariableSlots &p_variableSlots)
 
 JacobianFactor (const GaussianFactorGraph &graph, const Ordering &ordering)
 
 JacobianFactor (const GaussianFactorGraph &graph, const Ordering &ordering, const VariableSlots &p_variableSlots)
 
std::pair< Matrix, VectorjacobianUnweighted () const
 Returns (dense) A,b pair associated with factor, does not bake in weights. More...
 
const VerticalBlockMatrixmatrixObject () const
 
VerticalBlockMatrixmatrixObject ()
 
void multiplyHessianAdd (double alpha, const VectorValues &x, VectorValues &y) const override
 
void multiplyHessianAdd (double alpha, const double *x, double *y, const std::vector< size_t > &accumulatedDims) const
 
GaussianFactor::shared_ptr negate () const override
 
Vector operator* (const VectorValues &x) const
 
size_t rows () const
 
void setModel (bool anyConstrained, const Vector &sigmas)
 
boost::shared_ptr< GaussianConditionalsplitConditional (size_t nrFrontals)
 
void transposeMultiplyAdd (double alpha, const Vector &e, VectorValues &x) const
 
Vector unweighted_error (const VectorValues &c) const
 
void updateHessian (const KeyVector &keys, SymmetricBlockMatrix *info) const override
 
JacobianFactor whiten () const
 
 ~JacobianFactor () override
 
- Public Member Functions inherited from gtsam::GaussianFactor
 GaussianFactor ()
 
template<typename CONTAINER >
 GaussianFactor (const CONTAINER &keys)
 
VectorValues hessianDiagonal () const
 Return the diagonal of the Hessian for this factor. More...
 
virtual ~GaussianFactor ()
 
- Public Member Functions inherited from gtsam::Factor
virtual ~Factor ()=default
 Default destructor. More...
 
Key front () const
 First key. More...
 
Key back () const
 Last key. More...
 
const_iterator find (Key key) const
 find More...
 
const KeyVectorkeys () const
 Access the factor's involved variable keys. More...
 
const_iterator begin () const
 
const_iterator end () const
 
size_t size () const
 
virtual void printKeys (const std::string &s="Factor", const KeyFormatter &formatter=DefaultKeyFormatter) const
 print only keys More...
 
KeyVectorkeys ()
 
iterator begin ()
 
iterator end ()
 

Additional Inherited Members

- Static Public Member Functions inherited from gtsam::GaussianFactor
template<typename CONTAINER >
static DenseIndex Slot (const CONTAINER &keys, Key key)
 
- Protected Member Functions inherited from gtsam::JacobianFactor
template<typename TERMS >
void fillTerms (const TERMS &terms, const Vector &b, const SharedDiagonal &noiseModel)
 Internal function to fill blocks and set dimensions. More...
 
- Protected Member Functions inherited from gtsam::Factor
 Factor ()
 
template<typename CONTAINER >
 Factor (const CONTAINER &keys)
 
template<typename ITERATOR >
 Factor (ITERATOR first, ITERATOR last)
 
bool equals (const This &other, double tol=1e-9) const
 check equality More...
 
- Static Protected Member Functions inherited from gtsam::Factor
template<typename CONTAINER >
static Factor FromKeys (const CONTAINER &keys)
 
template<typename ITERATOR >
static Factor FromIterators (ITERATOR first, ITERATOR last)
 
- Protected Attributes inherited from gtsam::JacobianFactor
VerticalBlockMatrix Ab_
 
noiseModel::Diagonal::shared_ptr model_
 
- Protected Attributes inherited from gtsam::Factor
KeyVector keys_
 The keys involved in this factor. More...
 

Detailed Description

This class defines a linear cost function c'x which is a JacobianFactor with only one row

Definition at line 31 of file LinearCost.h.

Member Typedef Documentation

Typedef to base class.

Definition at line 34 of file LinearCost.h.

typedef boost::shared_ptr<This> gtsam::LinearCost::shared_ptr

shared_ptr to this class

Definition at line 35 of file LinearCost.h.

Typedef to this class.

Definition at line 33 of file LinearCost.h.

Constructor & Destructor Documentation

gtsam::LinearCost::LinearCost ( )
inline

default constructor for I/O

Definition at line 39 of file LinearCost.h.

gtsam::LinearCost::LinearCost ( const HessianFactor hf)
inlineexplicit

Conversion from HessianFactor

Definition at line 44 of file LinearCost.h.

gtsam::LinearCost::LinearCost ( const JacobianFactor jf)
inlineexplicit

Conversion from JacobianFactor

Definition at line 49 of file LinearCost.h.

gtsam::LinearCost::LinearCost ( Key  i1,
const RowVector A1 
)
inline

Construct unary factor

Definition at line 63 of file LinearCost.h.

gtsam::LinearCost::LinearCost ( Key  i1,
const RowVector A1,
Key  i2,
const RowVector A2,
double  b 
)
inline

Construct binary factor

Definition at line 68 of file LinearCost.h.

gtsam::LinearCost::LinearCost ( Key  i1,
const RowVector A1,
Key  i2,
const RowVector A2,
Key  i3,
const RowVector A3 
)
inline

Construct ternary factor

Definition at line 73 of file LinearCost.h.

template<typename TERMS >
gtsam::LinearCost::LinearCost ( const TERMS &  terms)
inline

Construct an n-ary factor

Template Parameters
TERMSA container whose value type is std::pair<Key, Matrix>, specifying the collection of keys and matrices making up the factor.

Definition at line 82 of file LinearCost.h.

gtsam::LinearCost::~LinearCost ( )
inlineoverride

Virtual destructor

Definition at line 87 of file LinearCost.h.

Member Function Documentation

GaussianFactor::shared_ptr gtsam::LinearCost::clone ( ) const
inlineoverridevirtual

Clone this LinearCost

Reimplemented from gtsam::JacobianFactor.

Definition at line 102 of file LinearCost.h.

bool gtsam::LinearCost::equals ( const GaussianFactor lf,
double  tol = 1e-9 
) const
inlineoverridevirtual

equals

Reimplemented from gtsam::JacobianFactor.

Definition at line 91 of file LinearCost.h.

double gtsam::LinearCost::error ( const VectorValues c) const
inlineoverridevirtual

Special error for single-valued inequality constraints.

Reimplemented from gtsam::JacobianFactor.

Definition at line 113 of file LinearCost.h.

Vector gtsam::LinearCost::error_vector ( const VectorValues c) const
inline

Special error_vector for constraints (A*x-b)

Definition at line 108 of file LinearCost.h.

void gtsam::LinearCost::print ( const std::string &  s = "",
const KeyFormatter formatter = DefaultKeyFormatter 
) const
inlineoverridevirtual

print

Reimplemented from gtsam::JacobianFactor.

Definition at line 96 of file LinearCost.h.


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


gtsam
Author(s):
autogenerated on Sat May 8 2021 02:58:18