Scroll to navigation

sc::DistSymmSCMatrix(3) MPQC sc::DistSymmSCMatrix(3)

NAME

sc::DistSymmSCMatrix

SYNOPSIS

Inherits sc::SymmSCMatrix.

Public Member Functions


DistSymmSCMatrix (const RefSCDimension &, DistSCMatrixKit *)
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. SymmSCMatrix * get_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)
SCVector * get_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. void accumulate_product_rr (SCMatrix *, SCMatrix *)
void accumulate (const SymmSCMatrix *)
Sum m into this. double invert_this ()
Invert this. double solve_this (SCVector *)
double trace ()
Return the trace. double determ_this ()
Return the determinant of this. this is overwritten. void gen_invert_this ()
void diagonalize (DiagSCMatrix *, SCMatrix *)
Diagonalize this, placing the eigenvalues in d and the eigenvectors in m. void accumulate_symmetric_sum (SCMatrix *)
Sum into this the products of various vectors or matrices. 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 *)
virtual void convert_accumulate (SymmSCMatrix *)
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< DistSCMatrixKit > skit ()

Protected Member Functions


void init_blocklist ()
double * find_element (int i, int j) const
int element_to_node (int i, int j) const
int block_to_node (int, int) const
Ref< SCMatrixBlock > block_to_block (int, int) const
void error (const char *msg)

Protected Attributes


Ref< SCMatrixBlockList > blocklist

Friends


class DistSCMatrix
class DistDiagSCMatrix
class DistSCVector

Member Function Documentation

void sc::DistSymmSCMatrix::accumulate (const SymmSCMatrix * m) [virtual]

Sum m into this.

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::accumulate_element (int, int, double) [virtual]

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::accumulate_row (SCVector * v, int i) [virtual]

Sum v to a row of this.

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::accumulate_subblock (SCMatrix * m, int, int, int, int) [virtual]

Sum m into a subblock of this.

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::accumulate_subblock (SymmSCMatrix *, int, int) [virtual]

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::accumulate_symmetric_sum (SCMatrix *) [virtual]

Sum into this the products of various vectors or matrices.

Implements sc::SymmSCMatrix.

Ref< SCMatrixSubblockIter > sc::DistSymmSCMatrix::all_blocks (SCMatrixSubblockIter::Access) [virtual]

Returns iterators for the all blocks used in this matrix.

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::assign_row (SCVector * v, int i) [virtual]

Assign v to a row of this.

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::assign_subblock (SCMatrix * m, int, int, int, int) [virtual]

Assign m to a subblock of this.

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::assign_subblock (SymmSCMatrix *, int, int) [virtual]

Implements sc::SymmSCMatrix.

virtual void sc::DistSymmSCMatrix::convert_accumulate (SymmSCMatrix *) [virtual]

Reimplemented from sc::SymmSCMatrix.

double sc::DistSymmSCMatrix::determ_this () [virtual]

Return the determinant of this. this is overwritten.

Implements sc::SymmSCMatrix.

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

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

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::element_op (const Ref< SCElementOp > &) [virtual]

Perform the element operation op on each element of this.

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::element_op (const Ref< SCElementOp2 > &, SymmSCMatrix *) [virtual]

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::element_op (const Ref< SCElementOp3 > &, SymmSCMatrix *, SymmSCMatrix *) [virtual]

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::gen_invert_this () [virtual]

Implements sc::SymmSCMatrix.

double sc::DistSymmSCMatrix::get_element (int, int) const [virtual]

Return or modify an element.

Implements sc::SymmSCMatrix.

SCVector * sc::DistSymmSCMatrix::get_row (int i) [virtual]

Return a row of this.

Implements sc::SymmSCMatrix.

SymmSCMatrix * sc::DistSymmSCMatrix::get_subblock (int, int) [virtual]

Implements sc::SymmSCMatrix.

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

double sc::DistSymmSCMatrix::invert_this () [virtual]

Invert this.

Implements sc::SymmSCMatrix.

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

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

Implements sc::SymmSCMatrix.

void sc::DistSymmSCMatrix::set_element (int, int, double) [virtual]

Implements sc::SymmSCMatrix.

double sc::DistSymmSCMatrix::solve_this (SCVector *) [virtual]

Implements sc::SymmSCMatrix.

double sc::DistSymmSCMatrix::trace () [virtual]

Return the trace.

Implements sc::SymmSCMatrix.

Author

Generated automatically by Doxygen for MPQC from the source code.

Fri Dec 2 2022 Version 2.3.1