Rivet  1.8.0
Public Member Functions | Static Public Member Functions | Protected Types | Friends
Rivet::Matrix< N > Class Template Reference

General $ N $-dimensional mathematical matrix object. More...

#include <MatrixN.hh>

List of all members.

Public Member Functions

 Matrix (const Matrix< N > &other)
Matrixset (const size_t i, const size_t j, const double value)
double get (const size_t i, const size_t j) const
Vector< N > getRow (const size_t row) const
Matrix< N > & setRow (const size_t row, const Vector< N > &r)
Vector< N > getColumn (const size_t col) const
Matrix< N > & setColumn (const size_t col, const Vector< N > &c)
Matrix< N > transpose () const
Matrix< N > inverse () const
 Calculate inverse.
double det () const
 Calculate determinant.
double trace () const
 Calculate trace.
Matrix< N > operator- () const
 Negate.
size_t size () const
 Get dimensionality.
bool isZero (double tolerance=1E-5) const
 Index-wise check for nullness, allowing for numerical precision.
bool isEqual (Matrix< N > other) const
 Check for index-wise equality, allowing for numerical precision.
bool isSymm () const
 Check for symmetry under transposition.
bool isDiag () const
 Check that all off-diagonal elements are zero, allowing for numerical precision.
bool operator== (const Matrix< N > &a) const
bool operator!= (const Matrix< N > &a) const
bool operator< (const Matrix< N > &a) const
bool operator<= (const Matrix< N > &a) const
bool operator> (const Matrix< N > &a) const
bool operator>= (const Matrix< N > &a) const
Matrix< N > & operator*= (const Matrix< N > &m)
Matrix< N > & operator*= (const double a)
Matrix< N > & operator/= (const double a)
Matrix< N > & operator+= (const Matrix< N > &m)
Matrix< N > & operator-= (const Matrix< N > &m)

Static Public Member Functions

static Matrix< N > mkZero ()
static Matrix< N > mkDiag (Vector< N > diag)
static Matrix< N > mkIdentity ()

Protected Types

typedef Eigen::Matrix< double, N > EMatrix

Friends

template<size_t M>
Matrix< M > add (const Matrix< M > &, const Matrix< M > &)
template<size_t M>
Matrix< M > multiply (const double, const Matrix< M > &)
template<size_t M>
Matrix< M > multiply (const Matrix< M > &, const Matrix< M > &)
template<size_t M>
Vector< M > multiply (const Matrix< M > &, const Vector< M > &)
template<size_t M>
Matrix< M > divide (const Matrix< M > &, const double)

Detailed Description

template<size_t N>
class Rivet::Matrix< N >

General $ N $-dimensional mathematical matrix object.


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