Man Linux: Main Page and Category List

NAME

       sc::SCVector -

       The SCVector class is the abstract base class for double valued
       vectors.

SYNOPSIS

       #include <abstract.h>

       Inherits sc::DescribedClass.

       Inherited by sc::BlockedSCVector, sc::DistSCVector, sc::LocalSCVector,
       and sc::ReplSCVector.

   Public Member Functions
       SCVector (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.
       virtual SCVector * copy ()
           Return a vector with the same dimension and same elements.
       virtual SCVector * clone ()
           Return a vector with the same dimension but uninitialized memory.
       int n () const
           Return the length of the vector.
       virtual double maxabs () const
           Return the maximum absolute value element of this vector.
       virtual void normalize ()
           Normalize this.
       virtual void randomize ()
           Assign each element to a random number between -1 and 1.
       void assign (double val)
           Assign all elements of this to val.
       void assign (const double *v)
           Assign element i to v[i] for all i.
       void assign (SCVector *v)
           Make this have the same elements as v.
       virtual void assign_val (double val)
           Overridden to implement the assign functions.
       virtual void assign_p (const double *v)
       virtual void assign_v (SCVector *v)
       virtual void convert (double *v) const
           Assign v[i] to element i for all i.
       virtual void convert (SCVector *)
           Convert an SCVector of a different specialization to this
           specialization and possibly accumulate the data.
       virtual void convert_accumulate (SCVector *)
       virtual void scale (double val)
           Multiply each element by val.
       RefSCDimension dim () const
           Return the RefSCDimension corresponding to this vector.
       virtual void set_element (int i, double val)=0
           Set element i to val.
       virtual void accumulate_element (int, double)=0
           Add val to element i.
       virtual double get_element (int i) const =0
           Return the value of element i.
       void accumulate_product (SymmSCMatrix *m, SCVector *v)
           Sum the result of m times v into this.
       void accumulate_product (SCMatrix *m, SCVector *v)
       virtual void accumulate_product_sv (SymmSCMatrix *m, SCVector *v)
       virtual void accumulate_product_rv (SCMatrix *m, SCVector *v)=0
       virtual void accumulate (const SCVector *v)=0
           Sum v into this.
       virtual void accumulate (const SCMatrix *m)=0
           Sum m into this. One of ms dimensions must be 1.
       virtual double scalar_product (SCVector *)=0
           Return the dot product.
       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 > &, SCVector *)=0
       virtual void element_op (const Ref< SCElementOp3 > &, SCVector *,
           SCVector *)=0
       void print (std::ostream &o=ExEnv::out0()) const
           Print out the vector.
       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 =0
       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 vector.
       virtual Ref< SCMatrixSubblockIter > all_blocks
           (SCMatrixSubblockIter::Access)=0
           Returns iterators for the all blocks used in this vector.

   Protected Attributes
       RefSCDimension d
       Ref< SCMatrixKit > kit_

Detailed Description

       The SCVector class is the abstract base class for double valued
       vectors.

Member Function Documentation

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

   virtual void sc::SCVector::convert (SCVector *) [virtual]
       Convert an SCVector of a different specialization to this
       specialization and possibly accumulate the data.

       Reimplemented in sc::DistSCVector.

   virtual Ref<SCMatrixSubblockIter> sc::SCVector::local_blocks
       (SCMatrixSubblockIter::Access) [pure virtual]
       Returns iterators for the local (rapidly accessible) blocks used in
       this vector. Only one iterator is allowed for a matrix is it has Accum
       or Write access is allowed. Multiple Read iterators are permitted.

       Implemented in sc::BlockedSCVector, sc::DistSCVector,
       sc::LocalSCVector, and sc::ReplSCVector.

Author

       Generated automatically by Doxygen for MPQC from the source code.