MPQC 2.3.1
sc::BlockedSCVector Class Reference
Inheritance diagram for sc::BlockedSCVector:
Collaboration diagram for sc::BlockedSCVector:

Public Member Functions

 BlockedSCVector (const RefSCDimension &, BlockedSCMatrixKit *)
 
void save (StateOut &)
 Save and restore this in an implementation independent way.
 
void restore (StateIn &)
 
void assign_val (double)
 Overridden to implement the assign functions.
 
void assign_v (SCVector *)
 
void assign_p (const double *)
 
double get_element (int) const
 Return the value of element i.
 
void set_element (int, double)
 Set element i to val.
 
void accumulate_element (int, double)
 Add val to element i.
 
void accumulate_product_rv (SCMatrix *, SCVector *)
 
void accumulate_product_sv (SymmSCMatrix *, 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
 
RefSCDimension dim () const
 
RefSCDimension dim (int) const
 
int nblocks () const
 
RefSCVector block (int)
 
Ref< SCMatrixSubblockIterlocal_blocks (SCMatrixSubblockIter::Access)
 Returns iterators for the local (rapidly accessible) blocks used in this vector.
 
Ref< SCMatrixSubblockIterall_blocks (SCMatrixSubblockIter::Access)
 Returns iterators for the all blocks used in this vector.
 
- Public Member Functions inherited from sc::SCVector
 SCVector (const RefSCDimension &, SCMatrixKit *)
 
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.
 
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.
 
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.
 
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.
 

Friends

class BlockedSCMatrix
 
class BlockedSymmSCMatrix
 
class BlockedDiagSCMatrix
 

Additional Inherited Members

- Protected Member Functions inherited from sc::RefCount
 RefCount (const RefCount &)
 
RefCountoperator= (const RefCount &)
 
- Protected Attributes inherited from sc::SCVector
RefSCDimension d
 
Ref< SCMatrixKitkit_
 

Member Function Documentation

◆ accumulate() [1/2]

void sc::BlockedSCVector::accumulate ( const SCMatrix * m)
virtual

Sum m into this. One of m's dimensions must be 1.

Implements sc::SCVector.

◆ accumulate() [2/2]

void sc::BlockedSCVector::accumulate ( const SCVector * v)
virtual

Sum v into this.

Implements sc::SCVector.

◆ accumulate_element()

void sc::BlockedSCVector::accumulate_element ( int ,
double  )
virtual

Add val to element i.

Implements sc::SCVector.

◆ accumulate_product_rv()

void sc::BlockedSCVector::accumulate_product_rv ( SCMatrix * ,
SCVector *  )
virtual

Implements sc::SCVector.

◆ accumulate_product_sv()

void sc::BlockedSCVector::accumulate_product_sv ( SymmSCMatrix * ,
SCVector *  )
virtual

Reimplemented from sc::SCVector.

◆ all_blocks()

Ref< SCMatrixSubblockIter > sc::BlockedSCVector::all_blocks ( SCMatrixSubblockIter::Access )
virtual

Returns iterators for the all blocks used in this vector.

Implements sc::SCVector.

◆ assign_p()

void sc::BlockedSCVector::assign_p ( const double * )
virtual

Reimplemented from sc::SCVector.

◆ assign_v()

void sc::BlockedSCVector::assign_v ( SCVector * )
virtual

Reimplemented from sc::SCVector.

◆ assign_val()

void sc::BlockedSCVector::assign_val ( double val)
virtual

Overridden to implement the assign functions.

Reimplemented from sc::SCVector.

◆ element_op() [1/3]

void sc::BlockedSCVector::element_op ( const Ref< SCElementOp > & )
virtual

Perform the element operation op on each element of this.

Implements sc::SCVector.

◆ element_op() [2/3]

void sc::BlockedSCVector::element_op ( const Ref< SCElementOp2 > & ,
SCVector *  )
virtual

Implements sc::SCVector.

◆ element_op() [3/3]

void sc::BlockedSCVector::element_op ( const Ref< SCElementOp3 > & ,
SCVector * ,
SCVector *  )
virtual

Implements sc::SCVector.

◆ get_element()

double sc::BlockedSCVector::get_element ( int i) const
virtual

Return the value of element i.

Implements sc::SCVector.

◆ local_blocks()

Ref< SCMatrixSubblockIter > sc::BlockedSCVector::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.

◆ restore()

void sc::BlockedSCVector::restore ( StateIn & )
virtual

Reimplemented from sc::SCVector.

◆ save()

void sc::BlockedSCVector::save ( StateOut & )
virtual

Save and restore this in an implementation independent way.

Reimplemented from sc::SCVector.

◆ scalar_product()

double sc::BlockedSCVector::scalar_product ( SCVector * )
virtual

Return the dot product.

Implements sc::SCVector.

◆ set_element()

void sc::BlockedSCVector::set_element ( int i,
double val )
virtual

Set element i to val.

Implements sc::SCVector.

◆ vprint()

void sc::BlockedSCVector::vprint ( const char * title = 0,
std::ostream & out = ExEnv::out0(),
int = 10 ) const
virtual

Implements sc::SCVector.


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

Generated at Thu Jul 18 2024 00:00:00 for MPQC 2.3.1 using the documentation package Doxygen 1.11.0.