linbox

Random diagonal matrices are used heavily as preconditioners. More...
#include <diagonal.h>
Random diagonal matrices are used heavily as preconditioners.
This is a class of diagonal matrices templatized by the field in which the elements reside. The class conforms to the BlackboxArchetype.
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.