sc::BlockedSymmSCMatrix Class Reference

Inheritance diagram for sc::BlockedSymmSCMatrix:
sc::SymmSCMatrix sc::DescribedClass sc::RefCount sc::Identity

List of all members.

Public Member Functions

 BlockedSymmSCMatrix (const RefSCDimension &, BlockedSCMatrixKit *)
void save (StateOut &)
 Save and restore this in an implementation independent way.
void restore (StateIn &)
double get_element (int, int) const
 Return or modify an element.
void set_element (int, int, double)
void accumulate_element (int, int, double)
void scale (double)
 Multiply all elements by val.
void assign_val (double)
 Overridden to implement the assign functions.
void assign_s (SymmSCMatrix *m)
SCMatrixget_subblock (int, int, int, int)
 Return a subblock of this.
SymmSCMatrixget_subblock (int, int)
void assign_subblock (SCMatrix *, int, int, int, int)
 Assign m to a subblock of this.
void assign_subblock (SymmSCMatrix *, int, int)
void accumulate_subblock (SCMatrix *, int, int, int, int)
 Sum m into a subblock of this.
void accumulate_subblock (SymmSCMatrix *, int, int)
SCVectorget_row (int i)
 Return a row of this.
void assign_row (SCVector *v, int i)
 Assign v to a row of this.
void accumulate_row (SCVector *v, int i)
 Sum v to a row of this.
double invert_this ()
 Invert this.
double determ_this ()
 Return the determinant of this. this is overwritten.
double trace ()
 Return the trace.
double solve_this (SCVector *)
void gen_invert_this ()
double scalar_product (SCVector *)
 Return the scalar obtained by multiplying this on the left and right by v.
void diagonalize (DiagSCMatrix *, SCMatrix *)
 Diagonalize this, placing the eigenvalues in d and the eigenvectors in m.
void accumulate (const SymmSCMatrix *)
 Sum m into this.
void accumulate_symmetric_outer_product (SCVector *)
void accumulate_symmetric_product (SCMatrix *)
void accumulate_symmetric_sum (SCMatrix *)
 Sum into this the products of various vectors or matrices.
void accumulate_transform (SCMatrix *, SymmSCMatrix *, SCMatrix::Transform=SCMatrix::NormalTransform)
void accumulate_transform (SCMatrix *, DiagSCMatrix *, SCMatrix::Transform=SCMatrix::NormalTransform)
void accumulate_transform (SymmSCMatrix *, SymmSCMatrix *)
void convert_accumulate (SymmSCMatrix *a)
void element_op (const Ref< SCElementOp > &)
 Perform the element operation op on each element of this.
void element_op (const Ref< SCElementOp2 > &, SymmSCMatrix *)
void element_op (const Ref< SCElementOp3 > &, SymmSCMatrix *, SymmSCMatrix *)
void vprint (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const
RefSCDimension dim () const
 Return the dimension.
RefSCDimension dim (int) const
int nblocks () const
RefSymmSCMatrix block (int)
Ref< SCMatrixSubblockIterlocal_blocks (SCMatrixSubblockIter::Access)
 Returns iterators for the local (rapidly accessible) blocks used in this matrix.
Ref< SCMatrixSubblockIterall_blocks (SCMatrixSubblockIter::Access)
 Returns iterators for the all blocks used in this matrix.

Friends

class BlockedSCMatrix
class BlockedDiagSCMatrix
class BlockedSCVector

Member Function Documentation

void sc::BlockedSymmSCMatrix::diagonalize ( DiagSCMatrix d,
SCMatrix m 
) [virtual]

Diagonalize this, placing the eigenvalues in d and the eigenvectors in m.

Implements sc::SymmSCMatrix.

SCMatrix* sc::BlockedSymmSCMatrix::get_subblock ( int  br,
int  er,
int  bc,
int  ec 
) [virtual]

Return a subblock of this.

The subblock is defined as the rows starting at br and ending at er, and the columns beginning at bc and ending at ec.

Implements sc::SymmSCMatrix.

Ref<SCMatrixSubblockIter> sc::BlockedSymmSCMatrix::local_blocks ( SCMatrixSubblockIter::Access   )  [virtual]

Returns iterators for the local (rapidly accessible) blocks used in this matrix.

Implements sc::SymmSCMatrix.

double sc::BlockedSymmSCMatrix::scalar_product ( SCVector v  )  [virtual]

Return the scalar obtained by multiplying this on the left and right by v.

Reimplemented from sc::SymmSCMatrix.


The documentation for this class was generated from the following file:

Generated at Wed Mar 10 04:30:19 2010 for MPQC 2.3.1 using the documentation package Doxygen 1.6.3.