Overview | Modules | Class Hierarchy | Classes | Members

# tlp::Matrix< Obj, SIZE > Class Template Reference
[Basic]

`#include <Matrix.h>`

Inherits tlp::Vector< Vector< Obj, SIZE >, SIZE >.

Inheritance diagram for tlp::Matrix< Obj, SIZE >:

[legend]
Collaboration diagram for tlp::Matrix< Obj, SIZE >:

[legend]
List of all members.

## Detailed Description

### template<typename Obj, unsigned int SIZE>
class tlp::Matrix< Obj, SIZE >

class for mathematical square matrix

Enables to create a Square Matrix of Obj with a limited size and provides Mathematical operation. Mathematical operators must be defined for Obj. Out of bound accesses are only checked in debug mode.

Author:
  : David Auber auber@tulip-software.org

  Contributor : Maxime Delorme

Version:
  0.0.2 27/04/2005

## Public Member Functions

- Matrix ()
- Matrix (const Vector< Vector< Obj, SIZE >, SIZE > &a)
- Matrix (const std::vector< std::vector< Obj > > &covarianceMatrix)
- MATRIX & fill (Obj obj)
- Obj determinant () const
- MATRIX & transpose ()
- MATRIX & inverse ()
- MATRIX & operator *= (const MATRIX &mat)
- MATRIX & operator *= (const Obj &obj)
- MATRIX & operator/= (const MATRIX &mat)
- MATRIX & operator/= (const Obj &obj)
- MATRIX cofactor () const
- MATRIX operator/ (const MATRIX &mat2) const
- MATRIX operator/ (const Obj &obj) const
- Vector< Obj, SIZE > powerIteration (const int nIterations) const

## Constructor & Destructor Documentation

template<typename Obj, unsigned int SIZE>
tlp::Matrix< Obj, SIZE >::Matrix | ( |  | ) | `[inline]`

template<typename Obj, unsigned int SIZE>
tlp::Matrix< Obj, SIZE >::Matrix | ( | const Vector< Vector< Obj, SIZE >, SIZE > & | a | ) | `[inline]`

template<typename Obj, unsigned int SIZE>
tlp::Matrix< Obj, SIZE >::Matrix | ( | const std::vector< std::vector< Obj > > & | covarianceMatrix | ) |

## Member Function Documentation

template<typename Obj, unsigned int SIZE>
MATRIX tlp::Matrix< Obj, SIZE >::cofactor | ( |  | ) | const

| Returns the cofactor Matrix of this

template<typename Obj, unsigned int SIZE>
Obj tlp::Matrix< Obj, SIZE >::determinant | ( |  | ) | const

| Compute the determinant of the matrix,

template<typename Obj, unsigned int SIZE>
MATRIX& tlp::Matrix< Obj, SIZE >::fill | ( | Obj | obj | ) | `[inline]`

| Fill the matrix with the value of obj

template<typename Obj, unsigned int SIZE>
MATRIX& tlp::Matrix< Obj, SIZE >::inverse | ( |  | ) |

| Inverse the matrix and return "&(*this)"

template<typename Obj, unsigned int SIZE>
MATRIX& tlp::Matrix< Obj, SIZE >::operator *= | ( | const Obj & | obj | ) | `[inline]`

| Multiply all elements of the matrix by obj, return "&(*this)"

template<typename Obj, unsigned int SIZE>
MATRIX& tlp::Matrix< Obj, SIZE >::operator *= | ( | const MATRIX & | mat | ) | `[inline]`

| Multiply the matrix by another matrix and return "&(*this)"

template<typename Obj, unsigned int SIZE>
MATRIX tlp::Matrix< Obj, SIZE >::operator/ | ( | const Obj & | obj | ) | const

| Returns a new matrix equal to the division of the matrix by obj"

template<typename Obj, unsigned int SIZE>
MATRIX tlp::Matrix< Obj, SIZE >::operator/ | ( | const MATRIX & | mat2 | ) | const

| Returns a new matrix equal to the division of the matrix by another matrix"

template<typename Obj, unsigned int SIZE>
MATRIX& tlp::Matrix< Obj, SIZE >::operator/= | ( | const Obj & | obj | ) | `[inline]`

| Divide all elements of the matrix by obj, return "&(*this)"

template<typename Obj, unsigned int SIZE>
MATRIX& tlp::Matrix< Obj, SIZE >::operator/= | ( | const MATRIX & | mat | ) | `[inline]`

| Divide the matrix by another one return "&(*this)"

template<typename Obj, unsigned int SIZE>
Vector<Obj,SIZE> tlp::Matrix< Obj, SIZE >::powerIteration | ( | const int | nIterations | ) | const`[inline]`

| Returns a new vector equal to the most influent eigenvector of the matrix

template<typename Obj, unsigned int SIZE>
MATRIX& tlp::Matrix< Obj, SIZE >::transpose | ( |  | ) |

| Transpose the matrix and return "&(*this)".

Tulip Software by LaBRI Visualization Team 2001 - 2010