|
MPQC
2.3.1
|
Public Member Functions | |
| BlockedSCMatrix (const RefSCDimension &, const RefSCDimension &, BlockedSCMatrixKit *) | |
| void | save (StateOut &) |
| Save and restore this in an implementation independent way. | |
| void | restore (StateIn &) |
| void | assign_val (double) |
| Overridden to implement to assign members. | |
| double | get_element (int, int) const |
| Return or modify an element. | |
| void | set_element (int, int, double) |
| void | accumulate_element (int, int, double) |
| SCMatrix * | get_subblock (int, int, int, int) |
| Return a subblock of this. | |
| void | assign_subblock (SCMatrix *, int, int, int, int, int=0, int=0) |
| Assign m to a subblock of this. | |
| void | accumulate_subblock (SCMatrix *, int, int, int, int, int=0, int=0) |
| Sum m into a subblock of this. | |
| SCVector * | get_row (int i) |
| Return a row or column of this. | |
| SCVector * | get_column (int i) |
| void | assign_row (SCVector *v, int i) |
| Assign v to a row or column of this. | |
| void | assign_column (SCVector *v, int i) |
| void | accumulate_row (SCVector *v, int i) |
| Sum v to a row or column of this. | |
| void | accumulate_column (SCVector *v, int i) |
| void | accumulate_outer_product (SCVector *, SCVector *) |
| Sum into this the products of various vectors or matrices. | |
| void | accumulate_product_rr (SCMatrix *, SCMatrix *) |
| void | accumulate_product_rs (SCMatrix *, SymmSCMatrix *) |
| void | accumulate_product_rd (SCMatrix *, DiagSCMatrix *) |
| void | accumulate (const SCMatrix *) |
| Sum m into this. | |
| void | accumulate (const SymmSCMatrix *) |
| void | accumulate (const DiagSCMatrix *) |
| void | accumulate (const SCVector *) |
| void | transpose_this () |
| Transpose this. | |
| double | invert_this () |
| Invert this. | |
| void | svd_this (SCMatrix *U, DiagSCMatrix *sigma, SCMatrix *V) |
| Compute the singular value decomposition for this, possibly destroying this. | |
| double | solve_this (SCVector *) |
| double | determ_this () |
| Return the determinant of this. this is overwritten. | |
| double | trace () |
| Return the trace. | |
| void | gen_invert_this () |
| void | schmidt_orthog (SymmSCMatrix *, int) |
| Schmidt orthogonalize this. | |
| int | schmidt_orthog_tol (SymmSCMatrix *, double tol, double *res=0) |
| Schmidt orthogonalize this. | |
| void | element_op (const Ref< SCElementOp > &) |
| Perform the element operation op on each element of this. | |
| void | element_op (const Ref< SCElementOp2 > &, SCMatrix *) |
| void | element_op (const Ref< SCElementOp3 > &, SCMatrix *, SCMatrix *) |
| void | vprint (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const |
| RefSCDimension | rowdim () const |
| Return the row or column dimension. | |
| RefSCDimension | coldim () const |
| RefSCDimension | rowdim (int) const |
| RefSCDimension | coldim (int) const |
| int | nblocks () const |
| RefSCMatrix | block (int) |
| Ref< SCMatrixSubblockIter > | local_blocks (SCMatrixSubblockIter::Access) |
| Returns iterators for the local (rapidly accessible) blocks used in this matrix. | |
| Ref< SCMatrixSubblockIter > | all_blocks (SCMatrixSubblockIter::Access) |
| Returns iterators for the all blocks used in this matrix. | |
Friends | |
| class | BlockedSymmSCMatrix |
| class | BlockedDiagSCMatrix |
| class | BlockedSCVector |
| SCMatrix* sc::BlockedSCMatrix::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::SCMatrix.
| Ref<SCMatrixSubblockIter> sc::BlockedSCMatrix::local_blocks | ( | SCMatrixSubblockIter::Access | ) | [virtual] |
Returns iterators for the local (rapidly accessible) blocks used in this matrix.
Implements sc::SCMatrix.
| void sc::BlockedSCMatrix::schmidt_orthog | ( | SymmSCMatrix * | , |
| int | n | ||
| ) | [virtual] |
Schmidt orthogonalize this.
S is the overlap matrix. n is the number of columns to orthogonalize.
Implements sc::SCMatrix.
| int sc::BlockedSCMatrix::schmidt_orthog_tol | ( | SymmSCMatrix * | , |
| double | tol, | ||
| double * | res = 0 |
||
| ) | [virtual] |
Schmidt orthogonalize this.
S is the overlap matrix. tol is the tolerance. The number of linearly independent vectors is returned.
Implements sc::SCMatrix.
| void sc::BlockedSCMatrix::svd_this | ( | SCMatrix * | U, |
| DiagSCMatrix * | sigma, | ||
| SCMatrix * | V | ||
| ) | [virtual] |
Compute the singular value decomposition for this, possibly destroying this.
Reimplemented from sc::SCMatrix.