Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

ScalarMatrix Class Template Reference
[linbox/blackbox]

#include <scalar-matrix.h>

Inheritance diagram for ScalarMatrix:

BlackboxInterface List of all members.

Detailed Description

template<class _Field>
class LinBox::ScalarMatrix< _Field >

Blackbox for aI. Use particularly for representing 0 and I.

This is a class of blackbox square scalar matrices. Each scalar matrix occupies O(scalar-size) memory. The matrix itself is not stored in memory, just the scalar and the dimensions.


Public Member Functions

 ScalarMatrix ()
 Constructs an initially 0 by 0 matrix.

 ScalarMatrix (const Field &F, const size_t n, const Element &s)
 ScalarMatrix (const Field &F, const size_t n, const typename Field::RandIter &iter)
template<class OutVector, class InVector> OutVector & apply (OutVector &y, InVector &x) const
template<class OutVector, class InVector> OutVector & applyTranspose (OutVector &y, InVector &x) const


Constructor & Destructor Documentation

ScalarMatrix const Field &  F,
const size_t  n,
const Element &  s
[inline]
 

Scalar matrix Constructor from an element.

Parameters:
F field in which to do arithmetic.
n size of the matrix.
s scalar, a field element, to be used as the diagonal of the matrix.

ScalarMatrix const Field &  F,
const size_t  n,
const typename Field::RandIter iter
[inline]
 

Constructor from a random element.

Parameters:
F field in which to do arithmetic.
n size of the matrix.
iter Random iterator from which to get the diagonal scalar element.


Member Function Documentation

OutVector& apply OutVector &  y,
InVector &  x
const [inline]
 

Application of BlackBox matrix. y= A*x. Requires time linear in n, the size of the matrix.

OutVector& applyTranspose OutVector &  y,
InVector &  x
const [inline]
 

Application of BlackBox matrix transpose. y= transpose(A)*x. Requires time linear in n, the size of the matrix.


The documentation for this class was generated from the following file:
Generated on Thu Feb 8 22:32:58 2007 for linbox by doxygen 1.3.4