GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  SC_SYMMSCMATRIX (3)

NAME

sc::SymmSCMatrix - The SymmSCMatrix class is the abstract base class for symmetric double valued matrices.

CONTENTS

Synopsis

SYNOPSIS

#include <abstract.h>

Inherits sc::DescribedClass.

Inherited by sc::BlockedSymmSCMatrix, sc::DistSymmSCMatrix, sc::LocalSymmSCMatrix, and sc::ReplSymmSCMatrix.

    Public Member Functions

    SymmSCMatrix (const RefSCDimension &, SCMatrixKit *)    
Ref< SCMatrixKit > kit () const
Return the SCMatrixKit object that created 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 *m)
Assign element i, j to m[i*(i+1)/2+j].     void assign (const double **m)
Assign element i, j to m[i][j].     void assign (SymmSCMatrix *m)
Make this have the same elements as m.     virtual void assign_val (double val)
Overridden to implement the assign functions.     virtual void assign_p (const double *m)    
virtual void assign_pp (const double **m)    
virtual void assign_s (SymmSCMatrix *m)    
virtual void convert (double *) const
Like the assign members, but these write values to the arguments.     virtual void convert (double **) const    
virtual void convert (SymmSCMatrix *)
Convert an SCSymmSCMatrix of a different specialization to this specialization and possibly accumulate the data.     virtual void convert_accumulate (SymmSCMatrix *)    
virtual void scale (double)
Multiply all elements by val.     virtual void scale_diagonal (double)
Scale the diagonal elements by val.     virtual void shift_diagonal (double)
Shift the diagonal elements by val.     virtual void unit ()
Make this equal to the unit matrix.     int n () const
Return the dimension.     virtual SymmSCMatrix * copy ()
Return a matrix with the same dimension and same elements.     virtual SymmSCMatrix * clone ()
Return a matrix with the same dimension but uninitialized memory.     RefSCDimension dim () const
Return the dimension.     virtual double get_element (int, int) const =0
Return or modify an element.     virtual void set_element (int, int, double)=0    
virtual void accumulate_element (int, int, double)=0    
virtual SCMatrix * get_subblock (int br, int er, int bc, int ec)=0
Return a subblock of this.     virtual SymmSCMatrix * get_subblock (int br, int er)=0    
virtual void assign_subblock (SCMatrix *m, int, int, int, int)=0
Assign m to a subblock of this.     virtual void assign_subblock (SymmSCMatrix *m, int, int)=0    
virtual void accumulate_subblock (SCMatrix *m, int, int, int, int)=0
Sum m into a subblock of this.     virtual void accumulate_subblock (SymmSCMatrix *m, int, int)=0    
virtual SCVector * get_row (int i)=0
Return a row of this.     virtual void assign_row (SCVector *v, int i)=0
Assign v to a row of this.     virtual void accumulate_row (SCVector *v, int i)=0
Sum v to a row of this.     virtual void diagonalize (DiagSCMatrix *d, SCMatrix *m)=0
Diagonalize this, placing the eigenvalues in d and the eigenvectors in m.     virtual void accumulate (const SymmSCMatrix *m)=0
Sum m into this.     virtual void accumulate_symmetric_sum (SCMatrix *)=0
Sum into this the products of various vectors or matrices.     virtual void accumulate_symmetric_product (SCMatrix *)    
virtual void accumulate_transform (SCMatrix *, SymmSCMatrix *, SCMatrix::Transform=SCMatrix::NormalTransform)    
virtual void accumulate_transform (SCMatrix *, DiagSCMatrix *, SCMatrix::Transform=SCMatrix::NormalTransform)    
virtual void accumulate_transform (SymmSCMatrix *, SymmSCMatrix *)    
virtual void accumulate_symmetric_outer_product (SCVector *)    
virtual double scalar_product (SCVector *v)
Return the scalar obtained by multiplying this on the left and right by v.     virtual double trace ()=0
Return the trace.     virtual double invert_this ()=0
Invert this.     virtual double determ_this ()=0
Return the determinant of this. this is overwritten.     virtual double solve_this (SCVector *)=0    
virtual void gen_invert_this ()=0    
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 > &, SymmSCMatrix *)=0    
virtual void element_op (const Ref< SCElementOp3 > &, SymmSCMatrix *, SymmSCMatrix *)=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::Access)=0
Returns iterators for the local (rapidly accessible) blocks used in this matrix.     virtual Ref< SCMatrixSubblockIter > all_blocks (SCMatrixSubblockIter::Access)=0
Returns iterators for the all blocks used in this matrix.

    Protected Attributes

    RefSCDimension d    
Ref< SCMatrixKit > kit_

    Additional Inherited Members

Detailed Description

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

Member Function Documentation

void sc::SymmSCMatrix::assign (const double * m) [inline]

Assign element i, j to m[i*(i+1)/2+j].

void sc::SymmSCMatrix::assign (SymmSCMatrix * m) [inline]

Make this have the same elements as m. The dimensions must match.

virtual void sc::SymmSCMatrix::convert (SymmSCMatrix *) [virtual]

Convert an SCSymmSCMatrix of a different specialization to this specialization and possibly accumulate the data.

virtual void sc::SymmSCMatrix::diagonalize (DiagSCMatrix * d, SCMatrix * m) [pure virtual]

Diagonalize this, placing the eigenvalues in d and the eigenvectors in m.

Implemented in sc::BlockedSymmSCMatrix, sc::ReplSymmSCMatrix, sc::DistSymmSCMatrix, and sc::LocalSymmSCMatrix.

virtual SCMatrix* sc::SymmSCMatrix::get_subblock (int br, int er, int bc, int ec) [pure virtual]

Return a subblock of this. The subblock is defined as the rows starting at br and ending at er, and the columns beginning at bc and ending at ec.

Implemented in sc::BlockedSymmSCMatrix, sc::ReplSymmSCMatrix, sc::DistSymmSCMatrix, and sc::LocalSymmSCMatrix.

virtual Ref<SCMatrixSubblockIter> sc::SymmSCMatrix::local_blocks (SCMatrixSubblockIter::Access) [pure virtual]

Returns iterators for the local (rapidly accessible) blocks used in this matrix.

Implemented in sc::BlockedSymmSCMatrix, sc::ReplSymmSCMatrix, sc::DistSymmSCMatrix, and sc::LocalSymmSCMatrix.

virtual double sc::SymmSCMatrix::scalar_product (SCVector * v) [virtual]

Return the scalar obtained by multiplying this on the left and right by v.

Reimplemented in sc::BlockedSymmSCMatrix, sc::ReplSymmSCMatrix, and sc::LocalSymmSCMatrix.

Author

Generated automatically by Doxygen for MPQC from the source code.

Search for    or go to Top of page |  Section 3 |  Main Index


Version 2.3.1 SC::SYMMSCMATRIX (3) Sun Apr 3 2016

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.