Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   Related Pages  

H Class Reference

#include <G.hpp>

Collaboration diagram for H:

Collaboration graph
[legend]
List of all members.

Detailed Description

Givens Matrix.

Author:
Bernard De Cuyper
Version:
0.05
Date:
30/12/2003
 
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)
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 ()
RealVectorgetU ()
RealVectorHx (RealVector &v, RealVector *dest=0)
double * Hx (double *v, double *dest=0)
RealSMatrixHA (RealSMatrix &A, RealSMatrix *dest=0)
RealSMatrixAH (RealSMatrix &A, RealSMatrix *dest=0)
void output ()
void output (FILE *file)

Public Attributes

t ()
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)


The documentation for this class was generated from the following files:
SourceForge.net Logo
Restoreinpaint sourceforge project `C++/Java Image Processing, Restoration, Inpainting Project'.

Bernard De Cuyper: Open Project Leader: Concept, design and development.
Bernard De Cuyper & Eddy Fraiha 2002, 2003. Bernard De Cuyper 2004. Open and free, for friendly usage only.
Modifications on Belgium ground of this piece of artistic work, by governement institutions or companies, must be notified to Bernard De Cuyper.
bern_bdc@hotmail.com