C:/programs/SCPPNT/src/include/matop.h File Reference

Template functions which implement matrix operations. More...

#include "scppnt/scppnt.h"
#include "scppnt/slice_pointer.h"
#include "scppnt/vec.h"
#include "scppnt/scppnt_error.h"

Include dependency graph for matop.h:

Go to the source code of this file.

Namespaces

namespace  SCPPNT

Functions

template<class MAT>
MAT SCPPNT::transpose (const MAT &A)
 Return a new matrix containing the transpose of A.
template<class MA, class MB>
void SCPPNT::matcopy (MA &A, const MB &B)
 Copy all elements of matrix B to matrix A (B must be the same size as A).
template<class MA, class MB, class MC>
void SCPPNT::matadd (const MA &A, const MB &B, MC &C)
 Add matrices A and B and place sum in C.
template<class MA, class MB>
void SCPPNT::matadd (MA &A, const MB &B)
 Add matrices A and B and replace A with result.
template<class MA, class MB, class MC>
void SCPPNT::matsub (const MA &A, const MB &B, MC &C)
 Substract B from A and place difference in C.
template<class MA, class MB>
void SCPPNT::matsub (MA &A, const MB &B)
 Subtract B from A and replace A with result.
template<class MR, class MA, class MB>
MR SCPPNT::mult_element (const MA &A, const MB &B)
 Return new matrix containing the products of the corresponding elements of A and B (element-by-element product).
template<class MR, class MA, class MB>
MR SCPPNT::matmult (const MA &A, const MB &B)
 Return a new matrix containing the matrix product A*B.
template<class MC, class MA, class MB>
void SCPPNT::matmult (MC &C, const MA &A, const MB &B)
 Calculate matrix product A*B and put result in C.
template<class MA, class MB>
void SCPPNT::matmult_assign (MA &A, const MB &B)
 Matrix multiplication of A*B where A is overwritten to store result (requires A*B and A to be same size).
template<class MAT, class IT1, class IT2>
void SCPPNT::MatTimesVec (const MAT &A, IT1 begin, IT2 result)
 Multiply a matrix times a vector using iterators to access the vector elements.
template<class M, class V>
SCPPNT::matrix_times_vector (const M &A, const V &x)
 Multiply a matrix times a vector and return the result in a new vector.


Detailed Description

Template functions which implement matrix operations.

Definition of template functions transpose, matadd, matsub, mult_element, matmult, matmult_assign, matrix_times_vector, and MatTimesVec. These functions are used in matrix classes to implement matrix operations such as addition, subtraction, and multiplication.

Definition in file matop.h.


Generated on Tue Dec 18 23:34:14 2007 for SCPPNT by  doxygen 1.5.4