Class : Matrix
Matrix :
prototype: Matrix ()
description:default constructor
~Matrix :
prototype: virtual ~Matrix ()
description:virtual destructor
Clone :
prototype: virtual Matrix* Clone ()
description:return pointer on a clone matrix (without duplicating datas)
input parameters:
retrun value = pointer on new matrix
Project :
prototype: virtual Matrix* Project (SubspaceSpaceConverter& subspace )
description:project matrix into a given subspace
input parameters:
subspace = reference on subspace structure
return value: pointer to projected matrix
GetMatrixType :
prototype: virtual int GetMatrixType ()
description:get matrix type
input parameters:
return value: matrix type
GetNbrRow :
prototype: virtual int GetNbrRow ()
description:get number of row
input parameters:
return value: number of row
GetNbrColumn :
prototype: virtual int GetNbrColumn ()
description:get number of column
input parameters:
return value: number of column
SetMatrixElement :
prototype: virtual void SetMatrixElement (int , int , double x )
description:set a matrix element
input parameters:
i = line position
j = column position
x = new value for matrix element
SetMatrixElement :
prototype: virtual void SetMatrixElement (int , int , const Complex& x )
description:set a matrix element
input parameters:
i = line position
j = column position
x = new value for matrix element
AddToMatrixElement :
prototype: virtual void AddToMatrixElement (int , int , double x )
description:add a value to a matrix element
input parameters:
i = line position
j = column position
x = value to add to matrix element
AddToMatrixElement :
prototype: virtual void AddToMatrixElement (int , int , const Complex& x )
description:add a value a matrix element
input parameters:
i = line position
j = column position
x = value to add to matrix element
Resize :
prototype: virtual void Resize (int , int nbrColumn )
description:Resize matrix
input parameters:
nbrRow = new number of rows
nbrColumn = new number of columns
ResizeAndClean :
prototype: virtual void ResizeAndClean (int , int nbrColumn )
description:Resize matrix and set to zero all elements that have been added
input parameters:
nbrRow = new number of rows
nbrColumn = new number of columns
operator :
prototype: virtual double& operator ( )
description:return refernce on real part of a given matrix element
input parameters:
i = line position
j = column position
return value: reference on real part
Conjugate :
prototype: Matrix* Conjugate (RealMatrix& UnitaryM )
description:conjugate matrix with an unitary real matrix (Ut M U)
input parameters:
UnitaryM = unitary matrix to use
return value: pointer to conjugated matrix
Conjugate :
prototype: virtual Matrix* Conjugate (BlockDiagonalMatrix& UnitaryM )
description:conjugate matrix with an unitary block diagonal matrix (Ut M U)
input parameters:
UnitaryM = unitary matrix to use
return value: pointer to conjugated matrix
Tr :
prototype: virtual double Tr ()
description:multiply a matrix by a real number
input parameters:
x = real number to use
return value: reference on current matrix
virtual Matrix& operator *= (double x);
evaluate matrix trace
input parameters:
return value: matrix trace
Det :
prototype: virtual double Det ()
description:evaluate matrix determinant
input parameters:
return value: matrix determinant
operator << :
prototype: friend ostream& operator << (ostream& , const Matrix& matrix )
description:Output Stream overload
input parameters:
str = reference on output stream
matrix = matrix to print
return value: reference on output stream
Back to index.