sc_ReplSCMatrix - Man Page



Inherits sc::SCMatrix.

Public Member Functions

ReplSCMatrix (const RefSCDimension &, const RefSCDimension &, ReplSCMatrixKit *)
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 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
double * get_data ()
double ** get_rows ()
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.
Ref< ReplSCMatrixKit > skit ()

Protected Member Functions

int compute_offset (int, int) const
void init_blocklist ()
void before_elemop ()
void after_elemop ()

Protected Attributes

Ref< SCMatrixBlockList > blocklist
double * matrix
double ** rows


class ReplSymmSCMatrix
class ReplDiagSCMatrix
class ReplSCVector

Additional Inherited Members

Member Function Documentation

SCMatrix* sc::ReplSCMatrix::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.

void sc::ReplSCMatrix::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::ReplSCMatrix::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.


Generated automatically by Doxygen for MPQC from the source code.


Thu Jul 22 2021 Version 2.3.1 MPQC