MPQC  3.0.0-alpha
Public Member Functions | Protected Attributes
sc::DiagSCMatrix Class Reference

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

#include <math/scmat/abstract.h>

Inheritance diagram for sc::DiagSCMatrix:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 DiagSCMatrix (const RefSCDimension &, SCMatrixKit *)
Ref< SCMatrixKitkit () 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 *)
void convert (double *a) const
 Like the assign member, but this writes values to the argument.
void convert (DiagSCMatrix *a)
virtual void convert_p (double *) const
virtual void convert_d (DiagSCMatrix *)
virtual void convert_accumulate (DiagSCMatrix *)
virtual void scale (double)
 Multiply all elements by val.
int n () const
 Return the dimension.
virtual DiagSCMatrixcopy ()
 Return a matrix with the same dimension and same elements.
virtual DiagSCMatrixclone ()
 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 (double condition_number_threshold=1e8)=0
 Return the generalized inverse of this using SVD decomposition.
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< MessageGrpmessagegrp () const
 Returns the message group used by the matrix kit.
virtual Ref< SCMatrixSubblockIterlocal_blocks (SCMatrixSubblockIter::Access)=0
 Returns iterators for the local (rapidly accessible) blocks used in this matrix.
virtual Ref< SCMatrixSubblockIterall_blocks (SCMatrixSubblockIter::Access)=0
 Returns iterators for the all blocks used in this matrix.

Protected Attributes

RefSCDimension d
Ref< SCMatrixKitkit_

Detailed Description

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


Member Function Documentation

void sc::DiagSCMatrix::assign ( DiagSCMatrix d_a) [inline]

Make this have the same elements as m.

The dimensions must match.

virtual void sc::DiagSCMatrix::gen_invert_this ( double  condition_number_threshold = 1e8) [pure virtual]

Return the generalized inverse of this using SVD decomposition.

See also:
SCMatrix::gen_invert_this()

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

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::ReplDiagSCMatrix, sc::DistDiagSCMatrix, and sc::LocalDiagSCMatrix.


The documentation for this class was generated from the following file:

Generated at Sat Jul 7 2012 11:52:58 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.8.0.