MPQC  2.3.1
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
sc::ReplSCVector Class Reference
Inheritance diagram for sc::ReplSCVector:
Inheritance graph
[legend]
Collaboration diagram for sc::ReplSCVector:
Collaboration graph
[legend]

Public Member Functions

 ReplSCVector (const RefSCDimension &, ReplSCMatrixKit *)
 
void assign_val (double)
 Overridden to implement the assign functions.
 
void assign_v (SCVector *)
 
void assign_p (const double *)
 
void set_element (int, double)
 Set element i to val.
 
void accumulate_element (int, double)
 Add val to element i.
 
double get_element (int) const
 Return the value of element i.
 
void accumulate_product_sv (SymmSCMatrix *, SCVector *)
 
void accumulate_product_rv (SCMatrix *, SCVector *)
 
void accumulate (const SCVector *)
 Sum v into this.
 
void accumulate (const SCMatrix *)
 Sum m into this. One of m's dimensions must be 1.
 
double scalar_product (SCVector *)
 Return the dot product.
 
void element_op (const Ref< SCElementOp > &)
 Perform the element operation op on each element of this.
 
void element_op (const Ref< SCElementOp2 > &, SCVector *)
 
void element_op (const Ref< SCElementOp3 > &, SCVector *, SCVector *)
 
void vprint (const char *title=0, std::ostream &out=ExEnv::out0(), int=10) const
 
double * get_data ()
 
Ref< SCMatrixSubblockIterlocal_blocks (SCMatrixSubblockIter::Access)
 Returns iterators for the local (rapidly accessible) blocks used in this vector. More...
 
Ref< SCMatrixSubblockIterall_blocks (SCMatrixSubblockIter::Access)
 Returns iterators for the all blocks used in this vector.
 
Ref< ReplSCMatrixKitskit ()
 
- Public Member Functions inherited from sc::SCVector
 SCVector (const RefSCDimension &, SCMatrixKit *)
 
virtual void save (StateOut &)
 Save and restore this in an implementation independent way.
 
virtual void restore (StateIn &)
 
Ref< SCMatrixKitkit () const
 Return the SCMatrixKit used to create this object.
 
virtual SCVectorcopy ()
 Return a vector with the same dimension and same elements.
 
virtual SCVectorclone ()
 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. More...
 
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.
 
void accumulate_product (SymmSCMatrix *m, SCVector *v)
 Sum the result of m times v into this.
 
void accumulate_product (SCMatrix *m, SCVector *v)
 
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
 
Ref< MessageGrpmessagegrp () const
 Returns the message group used by the matrix kit.
 
- Public Member Functions inherited from sc::DescribedClass
 DescribedClass (const DescribedClass &)
 
DescribedClassoperator= (const DescribedClass &)
 
ClassDescclass_desc () const throw ()
 This returns the unique pointer to the ClassDesc corresponding to the given type_info object. More...
 
const char * class_name () const
 Return the name of the object's exact type.
 
int class_version () const
 Return the version of the class.
 
- 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. More...
 
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. More...
 

Protected Member Functions

void init_blocklist ()
 
void before_elemop ()
 
void after_elemop ()
 
- Protected Member Functions inherited from sc::RefCount
 RefCount (const RefCount &)
 
RefCountoperator= (const RefCount &)
 

Protected Attributes

Ref< SCMatrixBlockListblocklist
 
double * vector
 
- Protected Attributes inherited from sc::SCVector
RefSCDimension d
 
Ref< SCMatrixKitkit_
 

Friends

class ReplSCMatrix
 
class ReplSymmSCMatrix
 
class ReplDiagSCMatrix
 

Member Function Documentation

◆ local_blocks()

Ref<SCMatrixSubblockIter> sc::ReplSCVector::local_blocks ( SCMatrixSubblockIter::Access  )
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.

Implements sc::SCVector.


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

Generated at Sun Jan 26 2020 23:33:08 for MPQC 2.3.1 using the documentation package Doxygen 1.8.16.