Provided by: libsc-doc_2.3.1-22build2_all
NAME
sc::DistSCMatrix
SYNOPSIS
Inherits sc::SCMatrix. Public Member Functions DistSCMatrix (const RefSCDimension &, 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. 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 (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. 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) void vprint (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const 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 () Public Member Functions inherited from sc::SCMatrix SCMatrix (const RefSCDimension &, const RefSCDimension &, SCMatrixKit *) virtual void save (StateOut &) Save and restore this in an implementation independent way. virtual void restore (StateIn &) Ref< SCMatrixKit > kit () const Return the SCMatrixKit used to create this object. int nrow () const Return the number of rows. int ncol () const Return the number of columns. virtual double maxabs () const Return the maximum absolute value element. virtual void randomize () Assign each element to a random number between -1 and 1. void assign (double val) Set all elements to val. void assign (const double *m) Assign element i, j to m[ir*nrow()+j]. void assign (const double **m) Assign element i, j to m[i][j]. void assign (SCMatrix *m) Make this have the same elements as m. The dimensions must match. virtual void assign_val (double val) Overridden to implement to assign members. virtual void assign_p (const double *m) virtual void assign_pp (const double **m) virtual void assign_r (SCMatrix *m) virtual void convert (double *) const Like the assign members, but these write values to the arguments. virtual void convert (double **) const virtual void convert (SCMatrix *) Convert an SCMatrix of a different specialization to this specialization and possibly accumulate the data. virtual void convert_accumulate (SCMatrix *) virtual void scale (double val) Multiply all elements by val. virtual void scale_diagonal (double val) Scale the diagonal elements by val. virtual void shift_diagonal (double val) Shift the diagonal elements by val. virtual void unit () Make this equal to the unit matrix. virtual SCMatrix * copy () Return a matrix with the same dimension and same elements. virtual SCMatrix * clone () Return a matrix with the same dimension but uninitialized memory. RefSCDimension rowdim () const Return the row or column dimension. RefSCDimension coldim () const void accumulate_product (SCMatrix *m1, SCMatrix *m2) void accumulate_product (SCMatrix *m1, SymmSCMatrix *m2) void accumulate_product (SCMatrix *m1, DiagSCMatrix *m2) void accumulate_product (SymmSCMatrix *m1, SCMatrix *m2) void accumulate_product (DiagSCMatrix *m1, SCMatrix *m2) void accumulate_product (SymmSCMatrix *m1, SymmSCMatrix *m2) virtual void accumulate_product_rs (SCMatrix *, SymmSCMatrix *) virtual void accumulate_product_rd (SCMatrix *, DiagSCMatrix *) virtual void accumulate_product_sr (SymmSCMatrix *, SCMatrix *) virtual void accumulate_product_dr (DiagSCMatrix *, SCMatrix *) virtual void accumulate_product_ss (SymmSCMatrix *, SymmSCMatrix *) virtual void svd_this (SCMatrix *U, DiagSCMatrix *sigma, SCMatrix *V) Compute the singular value decomposition for this, possibly destroying this. void print (std::ostream &o=ExEnv::out0()) const Print out the matrix. void print (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const Ref< MessageGrp > messagegrp () const Returns the message group used by the matrix kit. Public Member Functions inherited from sc::DescribedClass DescribedClass (const DescribedClass &) DescribedClass & operator= (const DescribedClass &) ClassDesc * class_desc () const throw () This returns the unique pointer to the ClassDesc corresponding to the given type_info object. const char * class_name () const Return the name of the object's exact type. int class_version () const Return the version of the class. Public Member Functions inherited from sc::RefCount int lock_ptr () const Lock this object. int unlock_ptr () const Unlock this object. void use_locks (bool inVal) start and stop using locks on this object refcount_t nreference () const Return the reference count. refcount_t reference () Increment the reference count and return the new count. refcount_t dereference () Decrement the reference count and return the new count. int managed () const void unmanage () Turn off the reference counting mechanism for this object. int managed () const Return 1 if the object is managed. Otherwise return 0. Public Member Functions inherited from sc::Identity Identifier identifier () Return the Identifier for this argument. 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) 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 Ref< SCBlockInfo > rowblocks () const Ref< SCBlockInfo > colblocks () const void create_vecform (Form, int nvec=-1) void delete_vecform () void vecform_op (VecOp op, int *ivec=0) void vecform_zero () Protected Member Functions inherited from sc::RefCount RefCount (const RefCount &) RefCount & operator= (const RefCount &) Protected Attributes Ref< SCMatrixBlockList > blocklist int vecoff int nvec double ** vec enum sc::DistSCMatrix::Form form Protected Attributes inherited from sc::SCMatrix RefSCDimension d1 RefSCDimension d2 Ref< SCMatrixKit > kit_ Friends class DistSymmSCMatrix class DistDiagSCMatrix class DistSCVector Additional Inherited Members Public Types inherited from sc::SCMatrix enum Transform { NormalTransform = 0, TransposeTransform = 1 }
Member Function Documentation
void sc::DistSCMatrix::accumulate (const DiagSCMatrix *) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate (const SCMatrix * m) [virtual] Sum m into this. Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate (const SCVector *) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate (const SymmSCMatrix *) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate_column (SCVector * v, int i) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate_element (int, int, double) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate_outer_product (SCVector *, SCVector *) [virtual] Sum into this the products of various vectors or matrices. Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate_product_rr (SCMatrix *, SCMatrix *) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate_row (SCVector * v, int i) [virtual] Sum v to a row or column of this. Implements sc::SCMatrix. void sc::DistSCMatrix::accumulate_subblock (SCMatrix * m, int, int, int, int, int = 0, int = 0) [virtual] Sum m into a subblock of this. Implements sc::SCMatrix. Ref< SCMatrixSubblockIter > sc::DistSCMatrix::all_blocks (SCMatrixSubblockIter::Access) [virtual] Returns iterators for the all blocks used in this matrix. Implements sc::SCMatrix. void sc::DistSCMatrix::assign_column (SCVector * v, int i) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::assign_row (SCVector * v, int i) [virtual] Assign v to a row or column of this. Implements sc::SCMatrix. void sc::DistSCMatrix::assign_subblock (SCMatrix * m, int, int, int, int, int = 0, int = 0) [virtual] Assign m to a subblock of this. Implements sc::SCMatrix. double sc::DistSCMatrix::determ_this () [virtual] Return the determinant of this. this is overwritten. Implements sc::SCMatrix. void sc::DistSCMatrix::element_op (const Ref< SCElementOp > &) [virtual] Perform the element operation op on each element of this. Implements sc::SCMatrix. void sc::DistSCMatrix::element_op (const Ref< SCElementOp2 > &, SCMatrix *) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::element_op (const Ref< SCElementOp3 > &, SCMatrix *, SCMatrix *) [virtual] Implements sc::SCMatrix. void sc::DistSCMatrix::gen_invert_this () [virtual] Reimplemented from sc::SCMatrix. SCVector * sc::DistSCMatrix::get_column (int i) [virtual] Implements sc::SCMatrix. double sc::DistSCMatrix::get_element (int, int) const [virtual] Return or modify an element. Implements sc::SCMatrix. SCVector * sc::DistSCMatrix::get_row (int i) [virtual] Return a row or column of this. Implements sc::SCMatrix. 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. double sc::DistSCMatrix::invert_this () [virtual] Invert this. Implements sc::SCMatrix. Ref< SCMatrixSubblockIter > sc::DistSCMatrix::local_blocks (SCMatrixSubblockIter::Access) [virtual] Returns iterators for the local (rapidly accessible) blocks used in this matrix. 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. void sc::DistSCMatrix::set_element (int, int, double) [virtual] Implements sc::SCMatrix. double sc::DistSCMatrix::solve_this (SCVector *) [virtual] Implements sc::SCMatrix. double sc::DistSCMatrix::trace () [virtual] Return the trace. Implements sc::SCMatrix. void sc::DistSCMatrix::transpose_this () [virtual] Transpose this. Implements sc::SCMatrix. void sc::DistSCMatrix::vprint (const char * title = 0, std::ostream & out = ExEnv::out0(), int = 10) const [virtual] Implements sc::SCMatrix.
Author
Generated automatically by Doxygen for MPQC from the source code.