Loading...
Searching...
No Matches
Matrix.cpp File Reference

matrix class More...

## Namespaces

namespace | gtsam
| Global functions in a separate testing namespace.

## Functions

bool | gtsam::assert_equal (const Matrix &A, const Matrix &B, double tol=1e-9)
| equals with an tolerance, prints out message if unequal
bool | gtsam::assert_inequal (const Matrix &A, const Matrix &B, double tol=1e-9)
| inequals with an tolerance, prints out message if within tolerance
bool | gtsam::assert_equal (const std::list< Matrix > &As, const std::list< Matrix > &Bs, double tol=1e-9)
| equals with an tolerance, prints out message if unequal
bool | gtsam::linear_independent (const Matrix &A, const Matrix &B, double tol=1e-9)
| check whether the rows of two matrices are linear independent
bool | gtsam::linear_dependent (const Matrix &A, const Matrix &B, double tol=1e-9)
| check whether the rows of two matrices are linear dependent
Vector | gtsam::operator^ (const Matrix &A, const Vector &v)
| overload ^ for trans(A)*v We transpose the vectors for speed.
const Eigen::IOFormat & | gtsam::matlabFormat ()
void | gtsam::print (const Matrix &A, const std::string &s, std::ostream &stream)
| print without optional string, must specify cout yourself
void | gtsam::print (const Matrix &A, const std::string &s="")
| print with optional string to cout
void | gtsam::save (const Matrix &A, const std::string &s, const std::string &filename)
| save a matrix to file, which can be loaded by matlab
istream & | gtsam::operator>> (std::istream &inputStream, Matrix &destinationMatrix)
| Read a matrix from an input stream, such as a file.
Matrix | gtsam::diag (const std::vector< Matrix > &Hs)
| Create a matrix with submatrices along its diagonal.
Vector | gtsam::columnNormSquare (const Matrix &A)
pair< Matrix, Matrix > | gtsam::qr (const Matrix &A)
| Householder QR factorization, Golub & Van Loan p 224, explicit version.
list< boost::tuple< Vector, double, double > > | gtsam::weighted_eliminate (Matrix &A, Vector &b, const Vector &sigmas)
| Imperative algorithm for in-place full elimination with weights and constraint handling.
void | gtsam::householder_ (Matrix &A, size_t k, bool copy_vectors)
| Imperative version of Householder QR factorization, Golub & Van Loan p 224 version with Householder vectors below diagonal, as in GVL.
void | gtsam::householder (Matrix &A, size_t k)
| Householder tranformation, zeros below diagonal.
Vector | gtsam::backSubstituteLower (const Matrix &L, const Vector &b, bool unit=false)
| backSubstitute L*x=b
Vector | gtsam::backSubstituteUpper (const Matrix &U, const Vector &b, bool unit=false)
| backSubstitute U*x=b
Vector | gtsam::backSubstituteUpper (const Vector &b, const Matrix &U, bool unit=false)
| backSubstitute x'*U=b'
Matrix | gtsam::stack (size_t nrMatrices,...)
| create a matrix by stacking other matrices Given a set of matrices: A1, A2, A3...
Matrix | gtsam::stack (const std::vector< Matrix > &blocks)
Matrix | gtsam::collect (const std::vector< const Matrix * > &matrices, size_t m=0, size_t n=0)
| create a matrix by concatenating Given a set of matrices: A1, A2, A3... If all matrices have the same size, specifying single matrix dimensions will avoid the lookup of dimensions
Matrix | gtsam::collect (size_t nrMatrices,...)
void | gtsam::vector_scale_inplace (const Vector &v, Matrix &A, bool inf_mask=false)
| scales a matrix row or column by the values in a vector Arguments (Matrix, Vector) scales the columns, (Vector, Matrix) scales the rows
Matrix | gtsam::vector_scale (const Vector &v, const Matrix &A, bool inf_mask)
Matrix | gtsam::vector_scale (const Matrix &A, const Vector &v, bool inf_mask)
Matrix | gtsam::LLt (const Matrix &A)
Matrix | gtsam::RtR (const Matrix &A)
Matrix | gtsam::cholesky_inverse (const Matrix &A)
| Return the inverse of a S.P.D.
Matrix | gtsam::inverse_square_root (const Matrix &A)
| Use Cholesky to calculate inverse square root of a matrix.
void | gtsam::svd (const Matrix &A, Matrix &U, Vector &S, Matrix &V)
| SVD computes economy SVD A=U*S*V'.
boost::tuple< int, double, Vector > | gtsam::DLT (const Matrix &A, double rank_tol=1e-9)
| Direct linear transform algorithm that calls svd to find a vector v that minimizes the algebraic error A*v.
Matrix | gtsam::expm (const Matrix &A, size_t K=7)
| Numerical exponential map, naive approach, not industrial strength !
std::string | gtsam::formatMatrixIndented (const std::string &label, const Matrix &matrix, bool makeVectorHorizontal)
void | gtsam::inplace_QR (Matrix &A)
| QR factorization using Eigen's internal block QR algorithm.

## Detailed Description

matrix class

Author
  Christian Potthast