WiedemannSolver< Field > Class Template Reference

Linear system solvers based on Wiedemann's method. More...

#include <wiedemann.h>

List of all members.

Public Types

enum  ReturnStatus
 

{ OK, FAILED, SINGULAR, INCONSISTENT, BAD_PRECONDITIONER }


Public Member Functions

 WiedemannSolver (const Field &F, const WiedemannTraits &traits)
 WiedemannSolver (const Field &F, const WiedemannTraits &traits, typename Field::RandIter r)
template<class Blackbox , class Vector >
ReturnStatus solve (const Blackbox &A, Vector &x, const Vector &b, Vector &u)
template<class Blackbox , class Vector >
ReturnStatus solveNonsingular (const Blackbox &A, Vector &x, const Vector &b, bool useRandIter=false)
template<class Blackbox , class Vector >
ReturnStatus solveSingular (const Blackbox &A, Vector &x, const Vector &b, Vector &u, unsigned long r)
template<class Blackbox , class Vector , class Prec1 , class Prec2 >
ReturnStatus findRandomSolution (const Blackbox &A, Vector &x, const Vector &b, size_t r, const Prec1 *P, const Prec2 *Q)
template<class Blackbox , class Vector >
ReturnStatus findNullspaceElement (Vector &x, const Blackbox &A)
template<class Blackbox , class Vector >
bool certifyInconsistency (Vector &u, const Blackbox &A, const Vector &b)

Detailed Description

template<class Field>
class LinBox::WiedemannSolver< Field >

Linear system solvers based on Wiedemann's method.

This class encapsulates all of the functionality for linear system solving with Wiedemann's algorithm. It includes the random solution and random nullspace element of Kaltofen and Saunders (1991), as well as the certificate of inconsistency of Giesbrecht, Lobo, and Saunders (1998).


Constructor & Destructor Documentation

WiedemannSolver ( const Field F,
const WiedemannTraits &  traits 
) [inline]

Constructor

Parameters:
F Field over which to operate
traits SolverTraits} structure describing user options for the solver
WiedemannSolver ( const Field F,
const WiedemannTraits &  traits,
typename Field::RandIter  r 
) [inline]

Constructor with a random iterator

Parameters:
F Field over which to operate
traits SolverTraits} structure describing user options for the solver
r Random iterator to use for randomization

The documentation for this class was generated from the following file:
Generated on Tue May 11 23:13:53 2010 for linbox by  doxygen 1.6.3