#include <G.hpp>
Collaboration diagram for H:
Purpose: Define the concept of a Givens Matrix The Givens matrix is a transformation matrix which reduces a vector to a single dimension. The resulting vector has only one non zero item. (sigma, 0,...,0) The Givens matrix allows to capture the transformation of the vector. Because it is symmetric and orthogonal, the transposition and inversions are equal. Another advantage: It can be represented by a single vector, and all transformations of vectors or matrices are cheap. (No explicit matix is needed) Implementation remark: We did not inherit the Givens matrix, because it is expected to be fast and cheap. Also, we must remember that it may be used heavily on very large images.(Windowed ICA) It is invloved in QR methods(triangulisation and eigenvectors), bidiagonalisation for SVD, and Hessenberg matrix building.
@ Copyrights: Bernard De Cuyper & Eddy Fraiha 2003, Eggs & Pictures. MIT/Open BSD copyright model.
Public Methods | |
H (int n, double value=0.0) | |
H (int n, double *x, bool xUpdate=false) | |
H (RealVector &x, bool xUpdate=false) | |
H (const H &m) | |
H | operator= (const H &m) |
~H () | |
H * | copy () |
double | computeHx (RealVector &x, bool xUpdate=false) |
double | computeHx (double *x) |
int | size () |
int | getWidth () const |
int | getHeight () const |
double | getBeta () |
void | setU0 (int i, double value) |
double | getU0 (int i) const |
void | setU (int i, double value) |
double | getU (int i) const |
double | getSigma () |
RealVector & | getU () |
RealVector * | Hx (RealVector &v, RealVector *dest=0) |
double * | Hx (double *v, double *dest=0) |
RealSMatrix * | HA (RealSMatrix &A, RealSMatrix *dest=0) |
RealSMatrix * | AH (RealSMatrix &A, RealSMatrix *dest=0) |
void | output () |
void | output (FILE *file) |
Public Attributes | |
H | t () |
H | inverse () |
Private Attributes | |
int | width |
RealVector | u |
double | sigma |
Friends | |
RealVector | operator * (H &h, RealVector &v) |
RealSMatrix | operator * (RealSMatrix &m, H &h) |
RealSMatrix | operator * (H &h, RealSMatrix &m) |