home | help
sc::RefSymmSCMatrix(3)		      MPQC		  sc::RefSymmSCMatrix(3)

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 ini-
	 tialized 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.

     Public Member Functions inherited from sc::Ref< SymmSCMatrix >
     Ref ()
	 Create a reference to a null object.
     Ref (SymmSCMatrix *a)
	 Create a reference to the object a.
     Ref (const Ref< SymmSCMatrix > &a)
	 Create a reference to the object referred to by a.
     Ref (const Ref< A > &a)
	 Create a reference to the object referred to by a.
     ~Ref ()
	 Delete this reference to the object.
     SymmSCMatrix * operator-> () const
	 Returns the reference counted object.
     SymmSCMatrix * pointer () const
	 Returns a pointer the reference counted object.
     RefCount * parentpointer () const
	 Implements the parentpointer pure virtual in the base class.
     operator SymmSCMatrix * () const
     SymmSCMatrix & operator* () const
	 Returns a C++ reference to the reference counted object.
     int null () const
	 Return 1 if this is a reference to a null object.
     int nonnull () const
	 Return !null().
     int operator== (const Ref< A > &a) const
	 A  variety of ordering and equivalence operators are provided using the
	 Identity class.
     int operator>= (const Ref< A > &a) const
     int operator<= (const Ref< A > &a) const
     int operator> (const Ref< A > &a) const
     int operator< (const Ref< A > &a) const
     int operator!= (const Ref< A > &a) const
     int compare (const Ref< SymmSCMatrix > &a) const
	 Compare two objects returning -1, 0, or 1.
     void clear ()
	 Refer to the null object.
     Ref< SymmSCMatrix > & operator= (const Ref< SymmSCMatrix > &c)
	 Assignment to c.
     Ref< SymmSCMatrix > & operator= (const Ref< A > &c)
	 Assignment to c.
     Ref< SymmSCMatrix > & operator= (SymmSCMatrix *cr)
	 Assignment to cr.
     Ref< SymmSCMatrix > & operator<< (const RefBase &a)
	 Assignment to the object that a references using dynamic_cast.
     Ref< SymmSCMatrix > & operator<< (RefCount *a)
	 Assigns to the given base class pointer using dynamic_cast.
     void assign_pointer (SymmSCMatrix *cr)
	 Assignment to cr.
     void check_pointer () const
	 Check the validity of the pointer.
     void ref_info (std::ostream &os) const
	 Print information about the reference to os.
     void warn (const char *s) const
	 Print a warning concerning the reference.

     Public Member Functions inherited from sc::RefBase
     virtual RefCount * parentpointer () const =0
	 Returns the DescribedClass pointer for the contained object.
     void require_nonnull () const
	 Requires that a nonnull reference is held.

   Additional Inherited Members
     Protected Member Functions inherited from sc::RefBase
     void warn (const char *msg) const
	 Print a warning message.
     void warn_ref_to_stack () const
	 Called when stack data is referenced.
     void warn_skip_stack_delete () const
	 Called when the deletion of stack data is skipped.
     void warn_bad_ref_count () const
	 Called when the reference count is corrupted.
     void ref_info (RefCount *p, std::ostream &os) const
	 Print information about the reference.
     void ref_info (std::ostream &os) const
     void check_pointer () const
     void reference (RefCount *)
     int dereference (RefCount *)

Detailed Description
     The RefSymmSCMatrix class is a smart pointer to an SCSymmSCMatrix	special-
     ization.

Constructor & Destructor Documentation
   sc::RefSymmSCMatrix::RefSymmSCMatrix ()
     Initializes  the matrix pointer to 0. The reference must be initialized be-
     fore 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 eigen-
     vectors 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.

Version 2.3.1			 Thu Sep 3 2026 	  sc::RefSymmSCMatrix(3)

home | help