Main Page   Class Hierarchy   Compound List   File List   Compound Members   Related Pages  

DiagSCMatrix Class Reference

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

#include <abstract.h>

Inheritance diagram for DiagSCMatrix

Inheritance graph
[legend]
Collaboration diagram for DiagSCMatrix:

Collaboration graph
[legend]
List of all members.

Public Methods

 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. More...

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::out()) const
 Print out the matrix.

void print (const char *title=0, std::ostream &out=ExEnv::out(), int=10) const
virtual void vprint (const char *title=0, std::ostream &out=ExEnv::out(), 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 DiagSCMatrix::assign ( DiagSCMatrix * d_a ) [inline]
 

Make this have the same elements as m.

The dimensions must match.


The documentation for this class was generated from the following file:
Generated at Thu Oct 4 18:09:03 2001 for MPQC 2.0.0 using the documentation package Doxygen 1.2.5.