Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Matrix< T > Class Template Reference
[Linear Algebra library]

The abstract base class for matrices; provides size/shape and element access. More...

#include <linalg_abstract.h>

Inherited by DenseMatrix< T >, and PermScaleMatrix< T >.

Inheritance diagram for Matrix< T >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual itype Rows () const =0
 The number of rows in the Matrix.
virtual itype Columns () const =0
 The number of columns in the Matrix.
virtual itype Size () const =0
 The total number of elements (can be nontrivial for non-dense matrices).
virtual T & operator() (itype r, itype c)=0
 Returns a (non-const) reference to an element.
virtual T operator() (itype r, itype c) const =0
 Returns the value of an element (needed for const objects).
virtual void print (std::ostream &os=std::cout) const
 Prettyprints the Matrix to a stream, but without justification.

Detailed Description

template<typename T>
class Matrix< T >

The abstract base class for matrices; provides size/shape and element access.

Matrix<T> is the absolute bare bones interface to a linear algebraic matrix. It provides an interface to size and shape, and an interface to obtain constant elements (thus, no guarantee of write-ability is made). Concrete classes may be derived from Matrix<T>, or from derived classes. Methods for obtaining submatrices are currently commented out because G++ 3.3 did not implement covariant return types (5/20/04).


The documentation for this class was generated from the following file:
Generated on Wed Jun 14 22:25:28 2006 for linalg by  doxygen 1.4.4