linbox
BlockWiedemannSolver< Context_ > Class Template Reference

#include <block-wiedemann.h>

Public Types

typedef Context_::Field Field
 
typedef Field::Element Element
 
typedef Field::RandIter RandIter
 
typedef BlasVector< FieldVector
 
typedef BlasMatrix< FieldBlock
 

Public Member Functions

const Fieldfield () const
 
 BlockWiedemannSolver (const Context_ &C, size_t lblock=8UL, size_t rblock=8UL+1)
 
 BlockWiedemannSolver (const Field &F, RandIter &rand, size_t lblock=8UL, size_t rblock=8UL+1)
 
template<class Blackbox>
Vectorsolve (Vector &x, const Blackbox &B, const Vector &y) const
 
template<class Blackbox>
VectorsolveNonSingular (Vector &x, const Blackbox &B, const Vector &y) const
 

Protected Attributes

Context_ _BMD
 
VectorDomain< Field_VDF
 
RandIter _rand
 
size_t _left_blockdim
 
size_t _right_blockdim
 

Member Typedef Documentation

◆ Field

template<class Context_>
typedef Context_::Field Field

◆ Element

template<class Context_>
typedef Field::Element Element

◆ RandIter

template<class Context_>
typedef Field::RandIter RandIter

◆ Vector

template<class Context_>
typedef BlasVector<Field> Vector

◆ Block

template<class Context_>
typedef BlasMatrix<Field> Block

Constructor & Destructor Documentation

◆ BlockWiedemannSolver() [1/2]

template<class Context_>
BlockWiedemannSolver ( const Context_ & C,
size_t lblock = 8UL,
size_t rblock = 8UL +1 )
inline

◆ BlockWiedemannSolver() [2/2]

template<class Context_>
BlockWiedemannSolver ( const Field & F,
RandIter & rand,
size_t lblock = 8UL,
size_t rblock = 8UL +1 )
inline

Member Function Documentation

◆ field()

template<class Context_>
const Field & field ( ) const
inline

◆ solve()

template<class Context_>
template<class Blackbox>
Vector & solve ( Vector & x,
const Blackbox & B,
const Vector & y ) const
inline

◆ solveNonSingular()

template<class Context_>
template<class Blackbox>
Vector & solveNonSingular ( Vector & x,
const Blackbox & B,
const Vector & y ) const
inline

Field Documentation

◆ _BMD

template<class Context_>
Context_ _BMD
protected

◆ _VDF

template<class Context_>
VectorDomain<Field> _VDF
protected

◆ _rand

template<class Context_>
RandIter _rand
protected

◆ _left_blockdim

template<class Context_>
size_t _left_blockdim
protected

◆ _right_blockdim

template<class Context_>
size_t _right_blockdim
protected

The documentation for this class was generated from the following file: