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

RealSMatrix Class Reference

#include <RealSMatrix.hpp>

Collaboration diagram for RealSMatrix:

Collaboration graph
[legend]
List of all members.

Detailed Description

Symmetric Matrix.

Author:
Bernard De Cuyper
Version:
0.05
Date:
10/01/2004
 
Purpose:        Define the concept of Symmetric Matrix,....

Books:  "Matrix Computations", Gene H. Golub, Charles F. Van Loan, second edition,
                Johns Hopkins University Press, 1989.

                "Numerical Linear Algebra and Application.", 
                Biswa Nath Datta, Brooks/Cole Publishing Co., 1995.

                "Decision Estimation and Classification: An Introduction to Pattern Recognition and Related Topics.",
                Charles W. Therrien, John Wiley and Sons, 1989.

                "Principal Component Neural Networks: Theory and Applications.",
                K.I.Diamantaras, S.Y.Kung, John Wiley&Sons edition, 1996.

Paper:  "Fast Dimensionality Reduction and Simple PCA.", 
                Matthew Partridge and Rafael Calvo, Dep. Electrical Eng., Report University of Sydney, Australia.

                

@ Copyrights: Bernard De Cuyper & Eddy Fraiha 2002-2004 Eggs & Pictures. MIT/Open BSD copyright model.


Public Methods

 RealSMatrix (int n, double value=0.0)
 RealSMatrix (I &ident)
 RealSMatrix (H &h)
 RealSMatrix (const RealSMatrix &m)
RealSMatrix operator= (const RealSMatrix &m)
 ~RealSMatrix ()
RealSMatrix * copy ()
RealSMatrix * identity ()
RealSMatrix * AtA (RealSMatrix *dest=0)
int size ()
int getWidth () const
int getHeight () const
void set0 (int i, int j, double value)
double get0 (int i, int j) const
void set (int i, int j, double value)
double get (int i, int j) const
void setAll (double value=0.0)
void set (RealSMatrix *from)
void setIdentity ()
RealSMatrix * multA_X (RealSMatrix *dest)
void addA_kX (RealSMatrix &dest, double k=1.0)
void addA_k_vvT (RealVector &v, double k=1.0)
double vTAv (RealVector &v)
double rayleighQuotient (RealVector &v)
double det ()
double trace ()
double cond ()
double normeMin ()
double normeInfinite ()
double norme2 ()
double normeF ()
double sum ()
double minimum ()
double maximum ()
double mean ()
double sigma ()
RealSMatrix * jacobiEV (RealVector *dEigenValue, RealSMatrix *vEigenVector)
RealSMatrix pow (double pow)
RealSMatrix log (double base)
void HA_inplace (H &h)
void HA_inplace (H &h, int nI)
void AH_inplace (H &h)
void AH_inplace (H &h, int nI)
void AH_inplace (H &h, int nI, int ny)
RealSMatrix * qrHouseholderR (RealSMatrix *r=0)
void qrHouseholder (RealSMatrix *q, RealSMatrix *r)
void qrGivens (RealSMatrix *q, RealSMatrix *r)
void qrCGS (RealSMatrix *q, RealSMatrix *r)
void qrMGS (RealSMatrix *q, RealSMatrix *r)
RealSMatrix * upperHessenberg (RealSMatrix *uH=0)
RealSMatrix * pseudoInverse (RealSMatrix *x=0)
RealSMatrix * varianceCovariance (RealSMatrix *aT_aInverse=0)
RealVectoroja (int nmax=100, double beta=0.1, RealVector *oldFirstPCA=0)
RealSMatrix * mOja (double nmax=100, double beta=0.1, RealSMatrix *oldPCA=0)
RealSMatrix * apex (double nmax=100, double beta=0.1, RealSMatrix *oldPCA=0)
double ojaEigenvalue (int nmax=100, int ns=10, double beta=0.1, RealVector *oldFirstPCA=0)
RealVectorapexEigenvalues (int nmax=100, int ns=10, double beta=0.1, RealSMatrix *oldPCA=0)
RealVectorfirstPcSPCA (int type=2, bool batch=false, int nmax=100, RealVector *oldFirstPCA=0)
double firstEigenvalueSPCA (int type=2, bool batch=false, int nmax=100, RealVector *oldFirstPCA=0)
RealVectorkiemePcSPCA (int type=2, int k=0, bool batch=false, int nmax=100, RealVector *oldFirstPCA=0)
double kiemeEigenvalueSPCA (int type=2, int k=0, bool batch=false, int nmax=100, RealVector *oldFirstPCA=0)
RealSMatrix * fullSPCA (int type=2, bool batch=false, double nmax=100, RealSMatrix *oldPCA=0)
RealVectoreigenvaluesSPCA (int type=2, bool batch=false, double nmax=100, RealSMatrix *oldPCA=0)
RealVectorinverseIteration (double eigenvalue, int nmax=3, RealVector *ev=0)
RealSMatrix * bidiagonalisation (RealSMatrix *biDiag=0)
RealSMatrix * svdGolubKahan (RealSMatrix *biDiag=0)
RealSMatrix * qrIteration (int iterMax=3, RealSMatrix *Ak=0)
RealSMatrix * qrHessenbergIteration (int iterMax=3, RealSMatrix *r=0)
RealSMatrix * qrShift (int iterMax=3, RealSMatrix *r=0)
RealSMatrix * qrDoubleShift (int iterMax=3, RealSMatrix *r=0)
RealSMatrix * qrSymmetric (int iterMax=3, RealSMatrix *r=0)
RTriDiagonalMatrixlanczosSymmetric (RTriDiagonalMatrix *t=0)
RTriDiagonalMatrixlanczosMGS (RTriDiagonalMatrix *t=0)
void luDoolittle (RealSMatrix *l1, RealSMatrix *u)
void luCrout (RealSMatrix *l, RealSMatrix *u1)
RealSMatrix * ilu0 ()
RealSMatrix * iluth (double threshold=0.001)
RealVectorbackwardSubstitution (RealVector &b, RealVector *x=0)
RealVectorbackwardSubstitutionU1 (RealVector &b, RealVector *x=0)
RealVectorforwardElimination (RealVector &b, RealVector *x=0)
RealVectorforwardEliminationL1 (RealVector &b, RealVector *x=0)
RealVectorlinearSolverU (RealVector &b, RealVector *x=0)
RealVectorlinearSolverU1 (RealVector &b, RealVector *x=0)
RealVectorlinearSolverL (RealVector &b, RealVector *x=0)
RealVectorlinearSolverL1 (RealVector &b, RealVector *x=0)
RealSMatrix * inverseOfU (RealSMatrix *uinv=0)
RealSMatrix * inverseOfU1 (RealSMatrix *uinv=0)
void operator+= (double value)
void operator-= (double value)
void operator *= (double value)
void operator/= (double value)
void operator+= (const RealSMatrix &m)
void operator-= (const RealSMatrix &m)
void operator *= (const RealSMatrix &m)
void output ()
void output (FILE *file)

Public Attributes

RealSMatrix t ()
RealSMatrix sqrt ()
RealSMatrix sqr ()
RealSMatrix exp ()
RealSMatrix log ()
RealSMatrix sin ()
RealSMatrix cos ()
RealSMatrix tan ()

Private Attributes

int width
double ** data

Friends

RealVectorT operator * (const RealVectorT &vt, const RealSMatrix &m)
RealVector operator * (const RealSMatrix &m, const RealVector &v)


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