QCMatElemGtr< TPMatrix > Class Template Reference

#include <QCMatElemGtr.hpp>

Inheritance diagram for QCMatElemGtr< TPMatrix >:

Inheritance graph
[legend]
List of all members.

Detailed Description

template<class TPMatrix>
class QCMatElemGtr< TPMatrix >

class QCMatElemGtr

Class of generators. A generator holds the knowledge of the way to calculate the matrix elements. It's a matrix overlayer. The matrix stores elements which the generator can calculate

Definition at line 38 of file QCMatElemGtr.hpp.

Public Member Functions

bool allocateMatrix (const int &dimMatrix)
template<class TPMatrix2>
void copyMatrix (QCMatElemGtr< TPMatrix2 > &otherGtr)
QCFloat deltaElemMax (TPMatrix &otherMatrix) const
QCFloat deltaElemMax (QCMatElemGtr< TPMatrix > &otherGtr) const
TPMatrix & getMatrix (void)
bool giveBackTmpMem (QCMemory &__restrict__ memoryInst)
void init (void)
 QCMatElemGtr (const int &dim)
 QCMatElemGtr (void)
void sizeMatrix (const int &dimMatrix)
QCFloat trace (void) const
template<class TPMatrix2>
QCFloat traceProduct (QCMatElemGtr< TPMatrix2 > &otherGtr) const
template<class TPManager>
void writeTransEigenvectMatrix (TPManager &managerInst, const string &resultFileName) const
virtual ~QCMatElemGtr (void)

Protected Attributes

TPMatrix matrix


Constructor & Destructor Documentation

template<class TPMatrix>
QCMatElemGtr< TPMatrix >::QCMatElemGtr void   ) 
 

Basic constructor

Definition at line 30 of file QCMatElemGtr.cpp.

template<class TPMatrix>
QCMatElemGtr< TPMatrix >::QCMatElemGtr const int &  dim  ) 
 

Constructor that enables the memory allocation of the nested matrix.

Definition at line 40 of file QCMatElemGtr.cpp.

template<class TPMatrix>
QCMatElemGtr< TPMatrix >::~QCMatElemGtr void   )  [virtual]
 

Empty destructor

Definition at line 50 of file QCMatElemGtr.cpp.


Member Function Documentation

template<class TPMatrix>
bool QCMatElemGtr< TPMatrix >::allocateMatrix const int &  dimMatrix  ) 
 

Memory allocation for the included matrix.

Definition at line 85 of file QCMatElemGtr.cpp.

References QCMatElemGtr< TPMatrix >::matrix.

Referenced by QCModelMatrices::allocateMatrices().

template<class TPMatrix>
template<class TPMatrix2>
void QCMatElemGtr< TPMatrix >::copyMatrix QCMatElemGtr< TPMatrix2 > &  otherGtr  )  [inline]
 

Method to assign the nested matrix. This method is an overlayer of a matrix method. Be careful, this method is overloaded in QCFockGtr and QCDensityGtr.

Definition at line 106 of file QCMatElemGtr.hpp.

Referenced by QCSCFAlgo::optimalDamping().

template<class TPMatrix>
QCFloat QCMatElemGtr< TPMatrix >::deltaElemMax TPMatrix &  otherMatrix  )  const [inline]
 

Return the maximum difference between 2 elements of the 2 matrices.

Definition at line 142 of file QCMatElemGtr.hpp.

template<class TPMatrix>
QCFloat QCMatElemGtr< TPMatrix >::deltaElemMax QCMatElemGtr< TPMatrix > &  otherGtr  )  const [inline]
 

Return the maximum difference between 2 elements of the 2 matrices.

Definition at line 133 of file QCMatElemGtr.hpp.

Referenced by QCSCFAlgo::optimalDamping().

template<class TPMatrix>
TPMatrix& QCMatElemGtr< TPMatrix >::getMatrix void   )  [inline]
 

The accessor to the matrix.

Definition at line 66 of file QCMatElemGtr.hpp.

Referenced by QCModelMatrices::buildMatrices(), QCMDSystem< TPSolver >::completeDensityMatrices(), QCMDSystem< TPSolver >::completeFockMatricesAndElecEnergy(), QCMDSystem< TPSolver >::completeHamiltonMatrices(), QCSubDomain::computeBFactor(), QCOverlapGtr< TPMatrix >::computeDerivatives(), QCDensityGtr< TPMatrix >::computeElems(), QCDensityGtr< TPMatrix >::computeElemsDC(), QCGlobalSystem< TPSolver >::computeEnergyDerivatives(), QCMatElemGtr< QCMatrix >::copyMatrix(), QCFockGtr< TPMatrix >::copyMatrix(), QCMatElemGtr< QCMatrix >::deltaElemMax(), QCSubDomain::fillDensityArray(), QCSCFAlgo::fixPoint(), QCSubDomain::initWeightedDensity(), QCSubDomain::modifyMatricesAndEnergy(), QCSCFAlgo::optimalDamping(), QCGlobalSystem< TPSolver >::readDensityFromFileAscii(), QCGlobalSystem< TPSolver >::readDensityFromFileBinary(), QCMDSystem< TPSolver >::readDistDensityFromFileAscii(), QCMDSystem< TPSolver >::readSharedDensityFromFileAscii(), QCDensityGtr< TPMatrix >::swapMatrix(), QCMatElemGtr< QCMatrix >::traceProduct(), QCTrace::writeDensityMatrix(), QCMDSystem< TPSolver >::writeDensityOnFileAscii(), QCGlobalSystem< TPSolver >::writeDensityOnFileAscii(), QCGlobalSystem< TPSolver >::writeDensityOnFileBinary(), QCTrace::writeEigenValue(), QCTrace::writeEigenValuesAndEigenVectors(), QCTrace::writeFockMatrix(), QCTrace::writeHamiltonMatrix(), QCMDSystem< TPSolver >::writeLocalDensityOnFilesAscii(), and QCTrace::writeReducedDensityMatrix().

template<class TPMatrix>
bool QCMatElemGtr< TPMatrix >::giveBackTmpMem QCMemory &__restrict__  memoryInst  )  [inline]
 

Memory allocation for the included matrix.

Definition at line 94 of file QCMatElemGtr.hpp.

template<class TPMatrix>
void QCMatElemGtr< TPMatrix >::init void   ) 
 

Base method to initialize the nested matrix with zeros.

Definition at line 62 of file QCMatElemGtr.cpp.

References QCMatElemGtr< TPMatrix >::matrix.

Referenced by QCModelMatrices::buildMatrices().

template<class TPMatrix>
void QCMatElemGtr< TPMatrix >::sizeMatrix const int &  dimMatrix  ) 
 

Sizing of the included matrix.

Definition at line 73 of file QCMatElemGtr.cpp.

References QCMatElemGtr< TPMatrix >::matrix.

Referenced by QCModelMatrices::allocateMatrices(), and QCSCFAlgo::optimalDamping().

template<class TPMatrix>
QCFloat QCMatElemGtr< TPMatrix >::trace void   )  const [inline]
 

Return the trace of the matrix. This method is an overlayer of a matrix method.

Definition at line 116 of file QCMatElemGtr.hpp.

Referenced by QCMDSystem< TPSolver >::getTotalSumTrace().

template<class TPMatrix>
template<class TPMatrix2>
QCFloat QCMatElemGtr< TPMatrix >::traceProduct QCMatElemGtr< TPMatrix2 > &  otherGtr  )  const [inline]
 

Return the trace of the matrix product this->matrix * otherGtr. matrix. This method is an overlayer of a matrix method.

Definition at line 125 of file QCMatElemGtr.hpp.

template<class TPMatrix>
template<class TPManager>
void QCMatElemGtr< TPMatrix >::writeTransEigenvectMatrix TPManager &  managerInst,
const string &  resultFileName
const
 

Writing of the transpose eigenvector matrix in a band format. Each band characterize an atom.

Definition at line 97 of file QCMatElemGtr.cpp.


Member Data Documentation

template<class TPMatrix>
TPMatrix QCMatElemGtr< TPMatrix >::matrix [protected]
 

The instance of the nested matrix which allows to store the elements of the generator. matrix is protected. Thus, it's inherited by each sub-class of CQCMatElemGtr.

Definition at line 175 of file QCMatElemGtr.hpp.

Referenced by QCMatElemGtr< TPMatrix >::allocateMatrix(), QCHamiltonGtr< TPMatrix >::completeElems(), QCFockGtr< TPMatrix >::completeElems(), QCOverlapGtr< TPMatrix >::computeDerivatives(), QCOverlapGtr< TPMatrix >::computeElems(), QCHamiltonGtr< TPMatrix >::computeElems(), QCDensityGtr< TPMatrix >::computeElems(), QCDensityGtr< TPMatrix >::computeElemsDC(), QCMatElemGtr< QCMatrix >::copyMatrix(), QCFockGtr< TPMatrix >::copyMatrix(), QCMatElemGtr< QCMatrix >::deltaElemMax(), QCFockGtr< TPMatrix >::diagonalize(), QCMatElemGtr< QCMatrix >::getMatrix(), QCMatElemGtr< QCMatrix >::giveBackTmpMem(), QCMatElemGtr< TPMatrix >::init(), QCDensityGtr< TPMatrix >::initDiag(), QCFockGtr< TPMatrix >::levelShifting(), QCDensityGtr< TPMatrix >::mergeDensity(), QCMatElemGtr< TPMatrix >::sizeMatrix(), QCDensityGtr< TPMatrix >::swapMatrix(), QCMatElemGtr< QCMatrix >::trace(), and QCMatElemGtr< QCMatrix >::traceProduct().


The documentation for this class was generated from the following files:
Generated on Sat Jan 28 21:07:34 2006 for QC++ by  doxygen 1.4.4