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