Jive reference manual
List of all members | Public Member Functions | Protected Member Functions
jive::algebra::IdentMatrixObject Class Reference

#include <jive/algebra/IdentMatrixObject.h>

Inheritance diagram for jive::algebra::IdentMatrixObject:
Inheritance graph

Public Member Functions

 IdentMatrixObject (const String &name="", const idx_t size=0)
 
virtual void readFrom (ObjectInput &in)
 
virtual void writeTo (ObjectOutput &out) const
 
virtual Ref< Objectclone () const
 
virtual Shape shape () const
 Returns the shape of this matrix. More...
 
virtual void matmul (const Vector &lhs, const Vector &rhs) const
 Matrix-vector multiplication. More...
 
virtual void multiMatmul (Matrix &lhsVecs, IdxVector &lhsTags, const Matrix &rhsVecs, const IdxVector &rhsTags) const
 
virtual void * getExtByID (ExtensionID extID) const
 
virtual double getValue (idx_t irow, idx_t jcol) const
 
virtual void getBlock (const Matrix &block, const IdxVector &irows, const IdxVector &jcols) const
 
virtual void getDiagonal (const Vector &diag) const
 
virtual void getRowScales (const Vector &rscales) const
 
virtual SparseStruct getStructure () const
 
virtual SparseMatrix toSparseMatrix () const
 
virtual SparseMatrix cloneSparseMatrix () const
 
void resize (idx_t size)
 
- Public Member Functions inherited from jive::algebra::AbstractMatrix
bool isSquare () const
 Tests whether this matrix is square. More...
 
virtual jem::ClassgetClass () const
 Returns the Class instance representing the runtime class of this object. More...
 
- Public Member Functions inherited from jem::Object
virtual String toString () const
 Returns a short textual description of this object. More...
 
virtual long hashValue () const
 Returns a hash value for this object. More...
 
virtual bool equals (const Ref< Object > &obj) const
 Tests whether two objects are equal. More...
 
Ref< Objectclone () const
 Returns a copy of this object. More...
 
- Public Member Functions inherited from jive::algebra::DiagMatrixExtension
virtual void getDiagonal (const Vector &diag) const =0
 
virtual void getRowScales (const Vector &scale) const =0
 

Protected Member Functions

virtual ~IdentMatrixObject ()
 
- Protected Member Functions inherited from jem::Collectable
 Collectable ()
 Creates an empty Collectable. More...
 
 ~Collectable ()
 Frees resources. More...
 
- Protected Member Functions inherited from jive::algebra::DiagMatrixExtension
virtual ~DiagMatrixExtension ()
 
- Protected Member Functions inherited from jem::Interface
virtual ~Interface ()
 Empty destructor. More...
 
- Protected Member Functions inherited from jive::algebra::MultiMatmulExtension
virtual ~MultiMatmulExtension ()
 
- Protected Member Functions inherited from jive::algebra::DirectMatrixExtension
virtual ~DirectMatrixExtension ()
 
- Protected Member Functions inherited from jive::algebra::SparseMatrixExtension
virtual ~SparseMatrixExtension ()
 
- Protected Member Functions inherited from jem::Clonable
virtual ~Clonable ()
 
virtual void emitVTable_ ()
 
- Protected Member Functions inherited from jem::io::Serializable
virtual ~Serializable ()
 
virtual void emitVtableFunc_ ()
 

Additional Inherited Members

- Public Types inherited from jive::algebra::AbstractMatrix
typedef AbstractMatrix Self
 The type of this class. More...
 
typedef jem::Tuple< int, 2 > Shape
 A type representing the shape of a matrix. More...
 
typedef util::Vector Vector
 A vector type. More...
 
- Static Public Member Functions inherited from jive::algebra::AbstractMatrix
static jem::ClassgetType ()
 
- Static Public Member Functions inherited from jem::Object
static ClassgetType ()
 Returns the Class instance representing the Object class. More...
 
- Public Attributes inherited from jive::algebra::AbstractMatrix
jem::util::Event< Self & > newShapeEvent
 Signals that the shape of this matrix has changed. More...
 
jem::util::Event< Self & > newValuesEvent
 Signals that the contents of this matrix have been modified. More...
 
- Static Public Attributes inherited from jive::algebra::DiagMatrixExtension
static const jem::byte ID [1]
 
- Static Public Attributes inherited from jive::algebra::MultiMatmulExtension
static const jem::byte ID [1]
 
- Static Public Attributes inherited from jive::algebra::DirectMatrixExtension
static const jem::byte ID [1]
 
- Static Public Attributes inherited from jive::algebra::SparseMatrixExtension
static const jem::byte ID [1]
 

Constructor & Destructor Documentation

jive::algebra::IdentMatrixObject::IdentMatrixObject ( const String name = "",
const idx_t  size = 0 
)
explicit
virtual jive::algebra::IdentMatrixObject::~IdentMatrixObject ( )
protectedvirtual

Member Function Documentation

virtual void jive::algebra::IdentMatrixObject::readFrom ( ObjectInput in)
virtual

Implements jem::io::Serializable.

virtual void jive::algebra::IdentMatrixObject::writeTo ( ObjectOutput out) const
virtual

Implements jem::io::Serializable.

virtual Ref<Object> jive::algebra::IdentMatrixObject::clone ( ) const
virtual

Implements jem::Clonable.

virtual Shape jive::algebra::IdentMatrixObject::shape ( ) const
virtual

Returns the shape of this matrix. If s denotes the returned Shape object, then s[0] equals the number of rows and s[1] equals the number of columns in this matrix.

Returns
The shape of this matrix.

Implements jive::algebra::AbstractMatrix.

virtual void jive::algebra::IdentMatrixObject::matmul ( const Vector lhs,
const Vector rhs 
) const
virtual

Multiplies the vector rhs with this matrix and stores the result in the vector lhs. The sizes of the two vectors must be compatible with the shape of this matrix.

Parameters
lhs- the result vector.
rhs- the vector to be multiplied by this matrix.
Precondition
lhs.size() == shape()[0] &&
rhs.size() == shape()[1]

Implements jive::algebra::AbstractMatrix.

virtual void jive::algebra::IdentMatrixObject::multiMatmul ( Matrix &  lhsVecs,
IdxVector &  lhsTags,
const Matrix &  rhsVecs,
const IdxVector &  rhsTags 
) const
virtual
virtual void* jive::algebra::IdentMatrixObject::getExtByID ( ExtensionID  extID) const
virtual
virtual double jive::algebra::IdentMatrixObject::getValue ( idx_t  irow,
idx_t  jcol 
) const
virtual
virtual void jive::algebra::IdentMatrixObject::getBlock ( const Matrix &  block,
const IdxVector &  irows,
const IdxVector &  jcols 
) const
virtual
virtual void jive::algebra::IdentMatrixObject::getDiagonal ( const Vector diag) const
virtual
virtual void jive::algebra::IdentMatrixObject::getRowScales ( const Vector rscales) const
virtual
virtual SparseStruct jive::algebra::IdentMatrixObject::getStructure ( ) const
virtual
virtual SparseMatrix jive::algebra::IdentMatrixObject::toSparseMatrix ( ) const
virtual
virtual SparseMatrix jive::algebra::IdentMatrixObject::cloneSparseMatrix ( ) const
virtual
void jive::algebra::IdentMatrixObject::resize ( idx_t  size)