Main Page | Modules | Namespace List | Class Hierarchy | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages

Diagonal Class Template Reference
[linbox/blackbox]

#include <linbox/blackbox/diagonal.h>


Detailed Description

template<class Field, class Trait = typename VectorTraits<typename LinBox::Vector<Field>::Dense>::VectorCategory>
class LinBox::Diagonal< Field, Trait >

General diagonal, not be implemented.

Random diagonal matrices are used heavily as preconditioners.

This is a class of n by n diagonal matrices templatized by the field in which the elements reside. The class conforms to the archetype for blackBox matrices.

The matrix itself is not stored in memory. Rather, its apply methods use a vector of field elements, which are used to "multiply" the matrix to a vector.

This class has two template parameters. The first is the field in which the arithmetic is to be done. The second is the vector trait indicating dense or sparse vector interface, dense by default. This class is then specialized for dense and sparse vectors.

The default class is not implemented. It's functions should never be called because partial template specialization should always be done on the vector traits.

Parameters:
Field {LinBox} field
Vector {LinBox} dense or sparse vector of field elements
Trait Marker whether to use dense or sparse LinBox vector implementation. This is chosen by a default parameter and partial template specialization.


Generated on Fri Jul 8 10:29:48 2005 for linbox by doxygen 1.3.7