OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Classes | Functions
Matrix.h File Reference
#include "Algebra/Array2D.h"
#include "Algebra/Vector.h"
#include "Utilities/SizeError.h"
#include <algorithm>
#include <numeric>
Include dependency graph for Matrix.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Matrix< T >
 Matrix. More...
 

Functions

template<class T >
Matrix< Toperator+ (const Matrix< T > &, const Matrix< T > &)
 Matrix addition. More...
 
template<class T >
Matrix< Toperator- (const Matrix< T > &, const Matrix< T > &)
 Matrix subtraction. More...
 
template<class T >
Matrix< Toperator- (const Matrix< T > &)
 Matrix unary minus. More...
 
template<class T >
Matrix< Toperator* (const Matrix< T > &, const Matrix< T > &)
 Matrix multiply. More...
 
template<class T >
Vector< Toperator* (const Matrix< T > &, const Vector< T > &)
 Matrix times column vector. More...
 
template<class T >
Vector< Toperator* (const Vector< T > &, const Matrix< T > &)
 Row vector times matrix. More...
 
template<class T >
Matrix< Toperator* (const Matrix< T > &, const T &)
 Matrix times scalar. More...
 
template<class T >
Matrix< Toperator* (const T &, const Matrix< T > &)
 Scalar times matrix. More...
 
template<class T >
Matrix< Toperator/ (const Matrix< T > &, const T &)
 Matrix divided by scalar. More...
 
template<class T >
Matrix< Toperator- (const Matrix< T > arg)
 

Function Documentation

template<class T >
Matrix< T > operator* ( const Matrix< T > &  lhs,
const Matrix< T > &  rhs 
)

Matrix multiply.

Definition at line 297 of file Matrix.h.

References Matrix< T >::dotm().

Here is the call graph for this function:

template<class T >
Vector< T > operator* ( const Matrix< T > &  M,
const Vector< T > &  V 
)

Matrix times column vector.

Definition at line 303 of file Matrix.h.

References Matrix< T >::dotcv().

Here is the call graph for this function:

template<class T >
Vector< T > operator* ( const Vector< T > &  V,
const Matrix< T > &  M 
)

Row vector times matrix.

Definition at line 309 of file Matrix.h.

References Matrix< T >::dotrv().

Here is the call graph for this function:

template<class T >
Matrix< T > operator* ( const Matrix< T > &  M,
const T val 
)

Matrix times scalar.

Definition at line 315 of file Matrix.h.

References Attrib::Distribution::R.

template<class T >
Matrix< T > operator* ( const T val,
const Matrix< T > &  M 
)

Scalar times matrix.

Definition at line 322 of file Matrix.h.

References Attrib::Distribution::R.

template<class T >
Matrix< T > operator+ ( const Matrix< T > &  lhs,
const Matrix< T > &  rhs 
)

Matrix addition.

Definition at line 275 of file Matrix.h.

template<class T >
Matrix< T > operator- ( const Matrix< T > &  lhs,
const Matrix< T > &  rhs 
)

Matrix subtraction.

Definition at line 282 of file Matrix.h.

template<class T >
Matrix<T> operator- ( const Matrix< T > &  )

Matrix unary minus.

template<class T >
Matrix<T> operator- ( const Matrix< T arg)

Definition at line 289 of file Matrix.h.

References Array2D< T >::begin(), Array2D< T >::end(), Array2D< T >::ncols(), and Array2D< T >::nrows().

Here is the call graph for this function:

template<class T >
Matrix< T > operator/ ( const Matrix< T > &  M,
const T val 
)

Matrix divided by scalar.

Definition at line 329 of file Matrix.h.

References Attrib::Distribution::R.