DOKK / manpages / debian 12 / libsc-doc / sc_DiagSCMatrix.3.en
sc::DiagSCMatrix(3) MPQC sc::DiagSCMatrix(3)

sc::DiagSCMatrix - The SymmSCMatrix class is the abstract base class for diagonal double valued matrices.

#include <abstract.h>

Inherits sc::DescribedClass.

Inherited by sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.


DiagSCMatrix (const RefSCDimension &, SCMatrixKit *)
Ref< SCMatrixKit > kit () const
Return the SCMatrixKit used to create this object. virtual void save (StateOut &)
Save and restore this in an implementation independent way. virtual void restore (StateIn &)
virtual double maxabs () const
Return the maximum absolute value element of this vector. 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 *p)
Assign element i, i to m[i]. void assign (DiagSCMatrix *d_a)
Make this have the same elements as m. virtual void assign_val (double val)
Overridden to implement the assign members. virtual void assign_p (const double *)
virtual void assign_d (DiagSCMatrix *)
virtual void convert (double *) const
Like the assign member, but this writes values to the argument. virtual void convert (DiagSCMatrix *)
Convert an SCDiagSCMatrix of a different specialization to this specialization and possibly accumulate the data. virtual void convert_accumulate (DiagSCMatrix *)
virtual void scale (double)
Multiply all elements by val. int n () const
Return the dimension. virtual DiagSCMatrix * copy ()
Return a matrix with the same dimension and same elements. virtual DiagSCMatrix * clone ()
Return a matrix with the same dimension but uninitialized memory. RefSCDimension dim () const
Return the dimension. virtual double get_element (int) const =0
Return or modify an element. virtual void set_element (int, double)=0
virtual void accumulate_element (int, double)=0
virtual void accumulate (const DiagSCMatrix *m)=0
Sum m into this. virtual double trace ()=0
Return the trace. virtual double determ_this ()=0
Return the determinant of this. this is overwritten. virtual double invert_this ()=0
Invert this. virtual void gen_invert_this ()=0
Do a generalized inversion of this. virtual void element_op (const Ref< SCElementOp > &)=0
Perform the element operation op on each element of this. virtual void element_op (const Ref< SCElementOp2 > &, DiagSCMatrix *)=0
virtual void element_op (const Ref< SCElementOp3 > &, DiagSCMatrix *, DiagSCMatrix *)=0
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
virtual void vprint (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. virtual Ref< SCMatrixSubblockIter > local_blocks (SCMatrixSubblockIter::Access)=0
Returns iterators for the local (rapidly accessible) blocks used in this matrix. virtual Ref< SCMatrixSubblockIter > all_blocks (SCMatrixSubblockIter::Access)=0
Returns iterators for the all blocks used in this matrix.


RefSCDimension d
Ref< SCMatrixKit > kit_

The SymmSCMatrix class is the abstract base class for diagonal double valued matrices.

Sum m into this.

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

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

Returns iterators for the all blocks used in this matrix.

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

Make this have the same elements as m. The dimensions must match.

Overridden to implement the assign members.

Reimplemented in sc::ReplDiagSCMatrix.

Referenced by assign().

Return the determinant of this. this is overwritten.

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

Perform the element operation op on each element of this.

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

Do a generalized inversion of this.

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

Return or modify an element.

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

Invert this.

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

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

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

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

Print out the matrix.

Reimplemented from sc::DescribedClass.

Save and restore this in an implementation independent way.

Reimplemented in sc::BlockedDiagSCMatrix.

Return the trace.

Implemented in sc::BlockedDiagSCMatrix, sc::DistDiagSCMatrix, sc::LocalDiagSCMatrix, and sc::ReplDiagSCMatrix.

Generated automatically by Doxygen for MPQC from the source code.

Fri Dec 2 2022 Version 2.3.1