VISH  0.2
Classes | Functions
Small Matrix Classes

Tiny matrix classes with optimized numerical operations which make use of vectorization features through the VVector class. More...

Classes

Functions


Detailed Description

Tiny matrix classes with optimized numerical operations which make use of vectorization features through the VVector class.


Function Documentation

template<int R, int C, class value >
Column< R, value > operator* ( const Matrix< R, C, value > &  A,
const Column< C, value > &  V 
) [related]

Multiply r (rows) by c (columns) matrix A on the left by column vector V of dimension c on the right to produce a (column) vector C output of dimension r.

\[ \begin{pmatrix} C_{0} \\ \dots \\ C_{r-1} \end{pmatrix} = \begin{pmatrix} A_{0,0} & \dots & A_{c-1,0} \\ \hdotsfor{3} \\ A_{0,r-1} & \dots & A_{c-1,r-1} \end{pmatrix} \cdot \begin{pmatrix} V_{0} \\ \dots \\ V_{c-1} \end{pmatrix} \]

template<int N, class value >
void UnsortedEigenVectors ( LowerTriangular< N, value > &  A,
Quadratic< N, value > &  RRmatrix,
Row< N, value > &  E,
double  precision = 1E-10 
) [related]

Eigenvalues and eigenvectors of a real symmetric matrix.

Parameters:
AThe input matrix, will be destroyed during computation
RRThe eigenvectors, stored column-wise in the quadratic matrics; use the column(i) function to get the i'th eigenvector
EThe eigenvalues, stored in a row
precisionError control parameter. After diagonalization, the off-diagonal elements of A will have been reduced by this factor.

The algorithm is due to J. von Neumann. Classified by WB from C sources of the cephes library by Stephen L. Moshier.

See also:
LowerTriangular, Quadratic, Row

Example code:

   // Input data
   LowerTriangular<3, double>   InputMatrix;

   // Output data
   Quadratic<3, double>         EVectors; 
   Row<3,double>                EValues; 
   double                       precision = 1E-8;

        EigenVectors( InputMatrix, Evectors, Evalues, precision);