Provided by: libsc-doc_2.3.1-22_all bug

NAME

       sc::RefSymmSCMatrix - The RefSymmSCMatrix class is a smart pointer to an SCSymmSCMatrix
       specialization.

SYNOPSIS

       #include <matrix.h>

       Inherits sc::Ref< SymmSCMatrix >.

   Public Member Functions
       RefSymmSCMatrix ()
           Initializes the matrix pointer to 0.
       RefSymmSCMatrix (const RefSymmSCMatrix &m)
           Make this and m refer to the same SCMatrix.
       RefSymmSCMatrix (SymmSCMatrix *m)
           Make this refer to m.
       RefSymmSCMatrix & operator= (SymmSCMatrix *m)
           Make this refer to m.
       RefSymmSCMatrix & operator= (const RefSymmSCMatrix &m)
           Make this and m refer to the same matrix.
       RefSymmSCMatrix (const RefSCDimension &d, const Ref< SCMatrixKit > &)
           Create a vector with dimension d by d.
       RefSCMatrix operator* (const RefSCMatrix &) const
           Multiply this by a matrix and return a matrix.
       RefSCMatrix operator* (const RefSymmSCMatrix &) const
       RefSCVector operator* (const RefSCVector &a) const
           Multiply this by a vector and return a vector.
       RefSymmSCMatrix operator* (double) const
       RefSymmSCMatrix operator+ (const RefSymmSCMatrix &) const
           Matrix addition and subtraction.
       RefSymmSCMatrix operator- (const RefSymmSCMatrix &) const
       RefSymmSCMatrix i () const
           Return the inverse of this.
       RefSymmSCMatrix gi () const
           Return the generalized inverse of this.
       RefSymmSCMatrix clone () const
           These call the SCMatrix members of the same name after checking for references to 0.
       RefSymmSCMatrix copy () const
       void set_element (int, int, double) const
       void accumulate_element (int, int, double) const
       double get_element (int, int) const
       RefSCMatrix get_subblock (int br, int er, int bc, int ec)
       RefSymmSCMatrix get_subblock (int br, int er)
       void assign_subblock (const RefSCMatrix &, int br, int er, int bc, int ec)
       void assign_subblock (const RefSymmSCMatrix &, int br, int er)
       void accumulate_subblock (const RefSCMatrix &, int, int, int, int)
       void accumulate_subblock (const RefSymmSCMatrix &, int, int)
       RefSCVector get_row (int)
       void assign_row (const RefSCVector &, int)
       void accumulate_row (const RefSCVector &, int)
       void accumulate_symmetric_outer_product (const RefSCVector &) const
       double scalar_product (const RefSCVector &) const
       void accumulate_symmetric_product (const RefSCMatrix &) const
       void accumulate_symmetric_sum (const RefSCMatrix &) const
       void accumulate_transform (const RefSCMatrix &a, const RefSymmSCMatrix &b,
           SCMatrix::Transform=SCMatrix::NormalTransform) const
           Add a * b * a.t() to this.
       void accumulate_transform (const RefSCMatrix &a, const RefDiagSCMatrix &b,
           SCMatrix::Transform=SCMatrix::NormalTransform) const
       void accumulate_transform (const RefSymmSCMatrix &a, const RefSymmSCMatrix &b) const
       void randomize () const
       void assign (const RefSymmSCMatrix &) const
       void scale (double) const
       void assign (double) const
       void assign (const double *) const
       void assign (const double **) const
       void convert (double *) const
       void convert (double **) const
       void accumulate (const RefSymmSCMatrix &) const
       void element_op (const Ref< SCElementOp > &) const
       void element_op (const Ref< SCElementOp2 > &, const RefSymmSCMatrix &) const
       void element_op (const Ref< SCElementOp3 > &, const RefSymmSCMatrix &, const
           RefSymmSCMatrix &) const
       double trace () const
       int n () const
       RefSCDimension dim () const
       Ref< SCMatrixKit > kit () const
       void print (std::ostream &) const
       void print (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const
       void save (StateOut &)
       void restore (StateIn &)
           Restores the matrix from StateIn object. The matrix must have been initialized
           already.
       double solve_lin (const RefSCVector &) const
           Solves this x = v.
       double determ () const
           Returns the determinant of the referenced matrix.
       RefDiagSCMatrix eigvals () const
           Returns the eigenvalues of the reference matrix.
       RefSCMatrix eigvecs () const
           Returns the eigenvectors of the reference matrix.
       void diagonalize (const RefDiagSCMatrix &eigvals, const RefSCMatrix &eigvecs) const
           Sets eigvals to the eigenvalues and eigvecs to the eigenvalues and eigenvectors of the
           referenced matrix.
       SymmSCMatrixdouble operator() (int i, int j) const
           Assign and examine matrix elements.
       int nblock () const
           If this matrix is blocked return the number of blocks.
       RefSymmSCMatrix block (int i) const
           If this matrix is blocked return block i.

   Additional Inherited Members

Detailed Description

       The RefSymmSCMatrix class is a smart pointer to an SCSymmSCMatrix specialization.

Constructor & Destructor Documentation

   sc::RefSymmSCMatrix::RefSymmSCMatrix ()
       Initializes the matrix pointer to 0. The reference must be initialized before it is used.

   sc::RefSymmSCMatrix::RefSymmSCMatrix (const RefSCDimension & d, const Ref< SCMatrixKit > &)
       Create a vector with dimension d by d. The data values are undefined.

Member Function Documentation

   RefSymmSCMatrix sc::RefSymmSCMatrix::block (int i) const
       If this matrix is blocked return block i. Otherwise return this as block 0.

   void sc::RefSymmSCMatrix::diagonalize (const RefDiagSCMatrix & eigvals, const RefSCMatrix &
       eigvecs) const
       Sets eigvals to the eigenvalues and eigvecs to the eigenvalues and eigenvectors of the
       referenced matrix. The result satisfies eigvecs * eigvals * eigvecs.t() = (*this).

   int sc::RefSymmSCMatrix::nblock () const
       If this matrix is blocked return the number of blocks. Otherwise return 1.

   double sc::RefSymmSCMatrix::solve_lin (const RefSCVector &) const
       Solves this x = v. Overwrites v with x.

Author

       Generated automatically by Doxygen for MPQC from the source code.