gtsam 4.1.1
gtsam
Vector.h File Reference

typedef and functions to augment Eigen's VectorXd More...

Go to the source code of this file.

Namespaces

namespace  gtsam
 Global functions in a separate testing namespace.
 

Macros

#define MKL_BLAS   MKL_DOMAIN_BLAS
 
#define GTSAM_MAKE_VECTOR_DEFS(N)
 

Typedefs

typedef Eigen::VectorXd gtsam::Vector
 
typedef Eigen::Matrix< double, 1, 1 > gtsam::Vector1
 
typedef Eigen::Vector2d gtsam::Vector2
 
typedef Eigen::Vector3d gtsam::Vector3
 
typedef Eigen::VectorBlock< Vector > gtsam::SubVector
 
typedef Eigen::VectorBlock< const Vector > gtsam::ConstSubVector
 

Functions

bool gtsam::fpEqual (double a, double b, double tol, bool check_relative_also=true)
 Ensure we are not including a different version of Eigen in user code than while compiling gtsam, since it can lead to hard-to-understand runtime crashes. More...
 
void gtsam::print (const Vector &v, const std::string &s, std::ostream &stream)
 print without optional string, must specify cout yourself
 
void gtsam::print (const Vector &v, const std::string &s="")
 print with optional string to cout
 
void gtsam::save (const Vector &A, const std::string &s, const std::string &filename)
 save a vector to file, which can be loaded by matlab
 
bool gtsam::operator== (const Vector &vec1, const Vector &vec2)
 operator==()
 
bool gtsam::greaterThanOrEqual (const Vector &v1, const Vector &v2)
 Greater than or equal to operation returns true if all elements in v1 are greater than corresponding elements in v2.
 
bool gtsam::equal_with_abs_tol (const Vector &vec1, const Vector &vec2, double tol=1e-9)
 VecA == VecB up to tolerance.
 
bool gtsam::equal_with_abs_tol (const SubVector &vec1, const SubVector &vec2, double tol)
 
bool gtsam::equal (const Vector &vec1, const Vector &vec2, double tol)
 Override of equal in Lie.h.
 
bool gtsam::equal (const Vector &vec1, const Vector &vec2)
 Override of equal in Lie.h.
 
bool gtsam::assert_equal (const Vector &vec1, const Vector &vec2, double tol=1e-9)
 Same, prints if error. More...
 
bool gtsam::assert_inequal (const Vector &vec1, const Vector &vec2, double tol=1e-9)
 Not the same, prints if error. More...
 
bool gtsam::assert_equal (const SubVector &vec1, const SubVector &vec2, double tol=1e-9)
 Same, prints if error. More...
 
bool gtsam::assert_equal (const ConstSubVector &expected, const ConstSubVector &actual, double tol)
 
bool gtsam::linear_dependent (const Vector &vec1, const Vector &vec2, double tol=1e-9)
 check whether two vectors are linearly dependent More...
 
Vector gtsam::ediv_ (const Vector &a, const Vector &b)
 elementwise division, but 0/0 = 0, not inf More...
 
template<class V1 , class V2 >
double gtsam::dot (const V1 &a, const V2 &b)
 Dot product.
 
template<class V1 , class V2 >
double gtsam::inner_prod (const V1 &a, const V2 &b)
 compatibility version for ublas' inner_prod()
 
void GTSAM_DEPRECATED gtsam::scal (double alpha, Vector &x)
 BLAS Level 1 scal: x <- alpha*x. More...
 
template<class V1 , class V2 >
void GTSAM_DEPRECATED gtsam::axpy (double alpha, const V1 &x, V2 &y)
 BLAS Level 1 axpy: y <- alpha*x + y. More...
 
void gtsam::axpy (double alpha, const Vector &x, SubVector y)
 
pair< double, Vector > gtsam::house (const Vector &x)
 house(x,j) computes HouseHolder vector v and scaling factor beta from x, such that the corresponding Householder reflection zeroes out all but x. More...
 
double gtsam::houseInPlace (Vector &x)
 beta = house(x) computes the HouseHolder vector in place
 
pair< Vector, double > gtsam::weightedPseudoinverse (const Vector &v, const Vector &weights)
 Weighted Householder solution vector, a.k.a., the pseudoinverse of the column NOTE: if any sigmas are zero (indicating a constraint) the pseudoinverse will be a selection vector, and the variance will be zero. More...
 
double gtsam::weightedPseudoinverse (const Vector &a, const Vector &weights, Vector &pseudo)
 
Vector gtsam::concatVectors (const std::list< Vector > &vs)
 concatenate Vectors
 
Vector gtsam::concatVectors (size_t nrVectors,...)
 concatenate Vectors
 
template<class Archive >
void boost::serialization::save (Archive &ar, const gtsam::Vector &v, unsigned int)
 
template<class Archive >
void boost::serialization::load (Archive &ar, gtsam::Vector &v, unsigned int)
 
template<class Archive , int D>
void boost::serialization::save (Archive &ar, const Eigen::Matrix< double, D, 1 > &v, unsigned int)
 
template<class Archive , int D>
void boost::serialization::load (Archive &ar, Eigen::Matrix< double, D, 1 > &v, unsigned int)
 

Detailed Description

typedef and functions to augment Eigen's VectorXd

Author
Kai Ni
Frank Dellaert
Alex Hagiopol
Varun Agrawal

Macro Definition Documentation

◆ GTSAM_MAKE_VECTOR_DEFS

#define GTSAM_MAKE_VECTOR_DEFS (   N)
Value:
using Vector##N = Eigen::Matrix<double, N, 1>; \
static const Eigen::MatrixBase<Vector##N>::ConstantReturnType Z_##N##x1 = Vector##N::Zero();