sc::DistSCMatrix(3)
π sc::DistSCMatrix β MPQC manual page π
okay bestie, welcome to the sc::DistSCMatrix page from the MPQC manual. This is the whole vibe, and yes, we are keeping every single detail. π
β¨ NAME β¨
sc::DistSCMatrix β that's the class name, periodt. This page is from MPQC, and it is giving very specific matrix energy. π¦
π SYNOPSIS π
Inherits sc::SCMatrix.
π Public Member Functions π
DistSCMatrix (const RefSCDimension &, const RefSCDimension &, DistSCMatrixKit *)β constructor signature, no extra note in the source.double get_element (int, int) constβ Return or modify an element. The page literally puts that note right here. π«void set_element (int, int, double)β bare signature, no extra line bestie.void accumulate_element (int, int, double)β bare signature, no extra line bestie.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)β no extra note on this one.void assign_row (SCVector *v, int i)β Assign v to a row or column of this.void assign_column (SCVector *v, int i)β no extra note on this one.void accumulate_row (SCVector *v, int i)β Sum v to a row or column of this.void accumulate_column (SCVector *v, int i)β no extra note on this one.void accumulate_outer_product (SCVector *, SCVector *)β Sum into this the products of various vectors or matrices.void accumulate_product_rr (SCMatrix *, SCMatrix *)β bare signature, no extra line bestie.void accumulate (const SCMatrix *)β Sum m into this.void accumulate (const SymmSCMatrix *)β no extra note on this overload.void accumulate (const DiagSCMatrix *)β no extra note on this overload.void accumulate (const SCVector *)β no extra note on this overload.void transpose_this ()β Transpose this.double invert_this ()β Invert this.double solve_this (SCVector *)β bare signature, no extra line bestie.double determ_this ()β Return the determinant of this.thisis overwritten. Yes, that's the tea. πdouble trace ()β Return the trace.void gen_invert_this ()β bare signature, no extra line bestie.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 *)β no extra note on this overload.void element_op (const Ref< SCElementOp3 > &, SCMatrix *, SCMatrix *)β no extra note on this overload.void vprint (const char *title=0, std::ostream &out=ExEnv::out0(), int=10)β no extra note on this one.void vprint (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) constβ const version, also no extra note in the source.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. (Yes, "the all blocks" β keeping it exactly as the page says. π«Ά)Ref< DistSCMatrixKit > skit ()β bare signature, no extra line bestie.
π§ Protected Types π§
enum VecOp { CopyFromVec, CopyToVec, AccumFromVec, AccumToVec }enum Form { Row, Col }
πΈ Protected Member Functions πΈ
void init_blocklist ()void error (const char *)double * find_element (int i, int j) constint element_to_node (int i, int j) constint block_to_node (int, int) constRef< SCMatrixBlock > block_to_block (int, int) constRef< SCBlockInfo > rowblocks () constRef< SCBlockInfo > colblocks () constvoid create_vecform (Form, int nvec=-1)void delete_vecform ()void vecform_op (VecOp op, int *ivec=0)void vecform_zero ()
π Protected Attributes π
Ref< SCMatrixBlockList > blocklistint vecoffint nvecdouble ** vecenum sc::DistSCMatrix::Form form
π«Ά Friends π«Ά
class DistSymmSCMatrixclass DistDiagSCMatrixclass DistSCVector
π Additional Inherited Members π
The original page just drops this heading and then moves on β no extra entries are listed here. So we are not inventing any, bestie. β¨
π₯ Member Function Documentation π₯
SCMatrix* sc::DistSCMatrix::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::DistSCMatrix::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::DistSCMatrix::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.
π Author π
Generated automatically by Doxygen for MPQC from the source code.
okay bestie, that's the whole page β MPQC version 2.3.1, dated Sun Oct 4 2020, and the author line was literally generated automatically by Doxygen from the source code. mwah, slay, bye. πβ¨π
π¦ where this page comes from
- ubuntu jammy: libsc-doc 2.3.1-21
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms