LABlockLanczosSolver< Field, Matrix > Class Template Reference
#include <la-block-lanczos.h>
List of all members.
Public Member Functions |
| LABlockLanczosSolver (const Field &F, const BlockLanczosTraits &traits) |
| LABlockLanczosSolver (const Field &F, const BlockLanczosTraits &traits, typename Field::RandIter r) |
| ~LABlockLanczosSolver () |
template<class Blackbox , class Vector > |
bool | solve (const Blackbox &A, Vector &x, const Vector &b) |
template<class Blackbox , class Matrix1 > |
unsigned int | sampleNullspace (const Blackbox &A, Matrix1 &x) |
template<class Blackbox > |
unsigned int | rank (const Blackbox &A) |
Detailed Description
template<class Field, class Matrix = DenseMatrixBase<typename Field::Element>>
class LinBox::LABlockLanczosSolver< Field, Matrix >
Biorthogonalising block Lanczos iteration
This is a biorthogonalising variant of Montgomery's block Lanczos iteration. The goal is to avoid having to symmetrise the input matrix by constructing two sequences of block vectors that have mutual orthogonality properties. This algorithm was proposed by Bradford Hovinen.
Constructor & Destructor Documentation
Constructor
- Parameters:
-
| F | Field over which to operate |
| traits | SolverTraits} structure describing user options for the solver |
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 |
Member Function Documentation
bool solve |
( |
const Blackbox & |
A, |
|
|
Vector & |
x, |
|
|
const Vector & |
b | |
|
) |
| | [inline] |
Solve the linear system Ax = b.
If the system is nonsingular, this method computes the unique solution to the system Ax = b. If the system is singular, it computes a random solution.
- Parameters:
-
| A | Black box for the matrix A |
| x | Vector in which to store solution |
| b | Right-hand side of system |
- Returns:
- True on success; false on failure
unsigned int sampleNullspace |
( |
const Blackbox & |
A, |
|
|
Matrix1 & |
x | |
|
) |
| | [inline] |
Sample uniformly from the (right) nullspace of A
- Parameters:
-
| A | Black box for the matrix A |
| x | Matrix into whose columns to store nullspace elements |
- Returns:
- Number of nullspace vectors found
unsigned int rank |
( |
const Blackbox & |
A |
) |
[inline] |
Estimate the rank of A
- Parameters:
-
| A | Black box for the matrix A |
- Returns:
- Lower bound on the rank of A
The documentation for this class was generated from the following file:
- /tmp/buildd/linbox-1.1.6~rc0/linbox/algorithms/la-block-lanczos.h