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

NAME

       sc::RefSCMatrix - The RefSCMatrix class is a smart pointer to an SCMatrix specialization.

SYNOPSIS

       #include <matrix.h>

       Inherits sc::Ref< SCMatrix >.

   Public Member Functions
       RefSCMatrix ()
           Initializes the matrix pointer to 0.
       RefSCMatrix (const RefSCMatrix &m)
           Make this and m refer to the same SCMatrix.
       RefSCMatrix (SCMatrix *m)
           Make this refer to m.
       RefSCMatrix & operator= (SCMatrix *m)
           Make this refer to m.
       RefSCMatrix & operator= (const RefSCMatrix &m)
           Make this and m refer to the same matrix.
       RefSCMatrix (const RefSCDimension &d1, const RefSCDimension &d2, const Ref< SCMatrixKit >
           &)
           Create a vector with dimension d1 by d2.
       RefSCVector operator* (const RefSCVector &) const
           Multiply this by a vector and return a vector.
       RefSCMatrix operator* (const RefSCMatrix &) const
           Multiply this by a matrix and return a matrix.
       RefSCMatrix operator* (const RefSymmSCMatrix &) const
       RefSCMatrix operator* (const RefDiagSCMatrix &) const
       RefSCMatrix operator* (double) const
           Multiply this by a scalar and return the result.
       RefSCMatrix operator+ (const RefSCMatrix &) const
           Matrix addition.
       RefSCMatrix operator- (const RefSCMatrix &) const
           Matrix subtraction.
       RefSCMatrix t () const
           Return the transpose of this.
       RefSCMatrix i () const
           Return the inverse of this.
       RefSCMatrix gi () const
           Return the generalized inverse of this.
       RefSCMatrix clone () const
           These call the SCMatrix members of the same name after checking for references to 0.
       RefSCMatrix copy () const
       RefSCMatrix get_subblock (int br, int er, int bc, int ec)
       void assign_subblock (const RefSCMatrix &, int br, int er, int bc, int ec, int
           source_br=0, int source_bc=0)
       void accumulate_subblock (const RefSCMatrix &, int, int, int, int, int source_br=0, int
           source_bc=0)
       RefSCVector get_row (int) const
       RefSCVector get_column (int) const
       void assign_row (const RefSCVector &, int) const
       void assign_column (const RefSCVector &, int) const
       void accumulate_row (const RefSCVector &, int) const
       void accumulate_column (const RefSCVector &, int) const
       void accumulate_outer_product (const RefSCVector &, const RefSCVector &) const
       void accumulate_product (const RefSCMatrix &, const RefSCMatrix &) const
       void assign (const RefSCMatrix &) const
       void scale (double) const
       void randomize () 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 RefSCMatrix &) const
       void accumulate (const RefSymmSCMatrix &) const
       void accumulate (const RefDiagSCMatrix &) const
       void element_op (const Ref< SCElementOp > &) const
       void element_op (const Ref< SCElementOp2 > &, const RefSCMatrix &) const
       void element_op (const Ref< SCElementOp3 > &, const RefSCMatrix &, const RefSCMatrix &)
           const
       int nrow () const
       int ncol () const
       RefSCDimension rowdim () const
       RefSCDimension coldim () const
       Ref< SCMatrixKit > kit () const
       void set_element (int, int, double) const
       void accumulate_element (int, int, double) const
       double get_element (int, int) const
       void print (std::ostream &) const
       void print (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const
       double trace () const
       void save (StateOut &)
       void restore (StateIn &)
           Restores the matrix from StateIn object. The matrix must have been initialized
           already.
       void svd (const RefSCMatrix &U, const RefDiagSCMatrix &sigma, const RefSCMatrix &V)
           Compute the singular value decomposition, this = U sigma V.t().
       double solve_lin (const RefSCVector &v) const
           Solves this x = v.
       double determ () const
           Returns the determinant of the referenced matrix.
       SCMatrixdouble operator() (int i, int j) const
           Assign and examine matrix elements.
       int nblock () const
           If this matrix is blocked return the number of blocks.
       RefSCMatrix block (int i) const
           If this matrix is blocked return block i.

       Public Member Functions inherited from sc::Ref< SCMatrix >
       Ref ()
           Create a reference to a null object.
       Ref (SCMatrix *a)
           Create a reference to the object a.
       Ref (const Ref< SCMatrix > &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.
       SCMatrix * operator-> () const
           Returns the reference counted object.
       SCMatrix * pointer () const
           Returns a pointer the reference counted object.
       RefCount * parentpointer () const
           Implements the parentpointer pure virtual in the base class.
       operator SCMatrix * () const
       SCMatrix & 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< SCMatrix > &a) const
           Compare two objects returning -1, 0, or 1.
       void clear ()
           Refer to the null object.
       Ref< SCMatrix > & operator= (const Ref< SCMatrix > &c)
           Assignment to c.
       Ref< SCMatrix > & operator= (const Ref< A > &c)
           Assignment to c.
       Ref< SCMatrix > & operator= (SCMatrix *cr)
           Assignment to cr.
       Ref< SCMatrix > & operator<< (const RefBase &a)
           Assignment to the object that a references using dynamic_cast.
       Ref< SCMatrix > & operator<< (RefCount *a)
           Assigns to the given base class pointer using dynamic_cast.
       void assign_pointer (SCMatrix *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
       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 RefSCMatrix class is a smart pointer to an SCMatrix specialization.

Constructor & Destructor Documentation

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

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

Member Function Documentation

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

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

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

   void sc::RefSCMatrix::svd (const RefSCMatrix & U, const RefDiagSCMatrix & sigma, const
       RefSCMatrix & V)
       Compute the singular value decomposition, this = U sigma V.t(). The dimension of sigma is
       the smallest dimension of this. U, V, and sigma must already have the correct dimensions
       and are overwritten.

Author

       Generated automatically by Doxygen for MPQC from the source code.