home | help
sc::DiagSCMatrix(3)		      MPQC		     sc::DiagSCMatrix(3)

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

SYNOPSIS
     #include <abstract.h>

     Inherits sc::DescribedClass.

     Inherited	by  sc::BlockedDiagSCMatrix,  sc::DistDiagSCMatrix,   sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   Public Member Functions
     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 spe-
	 cialization 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  *,  Di-
	 agSCMatrix *)=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::Ac-
	 cess)=0
	 Returns  iterators  for  the  local (rapidly accessible) blocks used in
	 this matrix.
     virtual Ref< SCMatrixSubblockIter >  all_blocks  (SCMatrixSubblockIter::Ac-
	 cess)=0
	 Returns iterators for the all blocks used in this matrix.

     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.
     virtual void print (std::ostream &=ExEnv::out0()) const
	 Print the object.

     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 Attributes
     RefSCDimension d
     Ref< SCMatrixKit > kit_

   Additional Inherited Members
     Protected Member Functions inherited from sc::RefCount
     RefCount (const RefCount &)
     RefCount & operator= (const RefCount &)

Detailed Description
     The SymmSCMatrix class is the abstract base class for diagonal double  val-
     ued matrices.

Member Function Documentation
   virtual void sc::DiagSCMatrix::accumulate (const DiagSCMatrix * m) [pure vir-
     tual]
     Sum m into this.

     Implemented  in  sc::BlockedDiagSCMatrix,	sc::DistDiagSCMatrix, sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   virtual Ref< SCMatrixSubblockIter >	sc::DiagSCMatrix::all_blocks  (SCMatrix-
     SubblockIter::Access) [pure virtual]
     Returns iterators for the all blocks used in this matrix.

     Implemented  in  sc::BlockedDiagSCMatrix,	sc::DistDiagSCMatrix, sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   void sc::DiagSCMatrix::assign (DiagSCMatrix * d_a) [inline]
     Make this have the same elements as m. The dimensions must match.

   virtual void sc::DiagSCMatrix::assign_val (double val) [virtual]
     Overridden to implement the assign members.

     Reimplemented in sc::ReplDiagSCMatrix.

     Referenced by assign().

   virtual double sc::DiagSCMatrix::determ_this () [pure virtual]
     Return the determinant of this. this is overwritten.

     Implemented in  sc::BlockedDiagSCMatrix,  sc::DistDiagSCMatrix,  sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   virtual  void sc::DiagSCMatrix::element_op (const Ref< SCElementOp > &) [pure
     virtual]
     Perform the element operation op on each element of this.

     Implemented in  sc::BlockedDiagSCMatrix,  sc::DistDiagSCMatrix,  sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   virtual void sc::DiagSCMatrix::gen_invert_this () [pure virtual]
     Do a generalized inversion of this.

     Implemented  in  sc::BlockedDiagSCMatrix,	sc::DistDiagSCMatrix, sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   virtual double sc::DiagSCMatrix::get_element (int) const [pure virtual]
     Return or modify an element.

     Implemented in  sc::BlockedDiagSCMatrix,  sc::DistDiagSCMatrix,  sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   virtual double sc::DiagSCMatrix::invert_this () [pure virtual]
     Invert this.

     Implemented  in  sc::BlockedDiagSCMatrix,	sc::DistDiagSCMatrix, sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   virtual Ref< SCMatrixSubblockIter > sc::DiagSCMatrix::local_blocks (SCMatrix-
     SubblockIter::Access) [pure virtual]
     Returns iterators for the local (rapidly accessible) blocks  used	in  this
     matrix.

     Implemented  in  sc::BlockedDiagSCMatrix,	sc::DistDiagSCMatrix, sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

   void sc::DiagSCMatrix::print (std::ostream & o = ExEnv::out0())  const  [vir-
     tual]
     Print out the matrix.

     Reimplemented from sc::DescribedClass.

   virtual void sc::DiagSCMatrix::save (StateOut &) [virtual]
     Save and restore this in an implementation independent way.

     Reimplemented in sc::BlockedDiagSCMatrix.

   virtual double sc::DiagSCMatrix::trace () [pure virtual]
     Return the trace.

     Implemented  in  sc::BlockedDiagSCMatrix,	sc::DistDiagSCMatrix, sc::Local-
     DiagSCMatrix, and sc::ReplDiagSCMatrix.

Author
     Generated automatically by Doxygen for MPQC from the source code.

Version 2.3.1			 Thu Sep 3 2026 	     sc::DiagSCMatrix(3)

home | help