linbox
Frobenius< Field_ > Class Template Reference

#include <frobenius.h>

+ Inheritance diagram for Frobenius< Field_ >:

Data Structures

struct  rebind
 

Public Types

typedef Field_ Field
 
typedef Companion< Field_ > Blackbox1
 
typedef _Blackbox2 Blackbox2
 
typedef Blackbox1::Element Element
 

Public Member Functions

 Frobenius ()
 
template<class VDegList>
 Frobenius (const Field &F, const VDegList &vlist)
 Constructor.
 
template<class PolyIterator>
 Frobenius (const Field &F, PolyIterator pbegin, PolyIterator pend)
 Constructor.
 
 ~Frobenius ()
 destructor
 
OutVector & apply (OutVector &y, const InVector &x) const
 
OutVector & applyTranspose (OutVector &y, const InVector &x) const
 
size_t rowdim (void) const
 
size_t coldim (void) const
 
const Fieldfield () const
 
const Blackbox1getLeftPtr () const
 
const Blackbox2getRightPtr () const
 
std::ostream & write (std::ostream &os) const
 

Protected Attributes

const Blackbox1_Ap
 
const Blackbox2_Bp
 

Member Typedef Documentation

◆ Field

template<class Field_>
typedef Field_ Field

◆ Blackbox1

typedef Companion< Field_ > Blackbox1
inherited

◆ Blackbox2

typedef _Blackbox2 Blackbox2
inherited

◆ Element

typedef Blackbox1::Element Element
inherited

Constructor & Destructor Documentation

◆ Frobenius() [1/3]

template<class Field_>
Frobenius ( )
inline

◆ Frobenius() [2/3]

template<class Field_>
template<class VDegList>
Frobenius ( const Field & F,
const VDegList & vlist )
inline

Constructor.

Build a matrix in Frobenius form whose block sizes are specified by vlist, generated from random polynomials

Parameters
F
vlistdiagonal-block sizes, positive ints in non-increasing order

◆ Frobenius() [3/3]

template<class Field_>
template<class PolyIterator>
Frobenius ( const Field & F,
PolyIterator pbegin,
PolyIterator pend )
inline

Constructor.

Build a square, block-diagonal matrix as a direct sum of the companion matrices of the polynomials. The dimension is the sum of the degrees.

Parameters
pbeginiterator pointing to the start of a list of polynomials
F
penditerator pointing after end of a list of polynomials

◆ ~Frobenius()

template<class Field_>
~Frobenius ( )
inline

destructor

Member Function Documentation

◆ apply()

OutVector & apply ( OutVector & y,
const InVector & x ) const
inlineinherited

◆ applyTranspose()

OutVector & applyTranspose ( OutVector & y,
const InVector & x ) const
inlineinherited

◆ rowdim()

size_t rowdim ( void ) const
inlineinherited

◆ coldim()

size_t coldim ( void ) const
inlineinherited

◆ field()

const Field & field ( ) const
inlineinherited

◆ getLeftPtr()

const Blackbox1 * getLeftPtr ( ) const
inlineinherited

◆ getRightPtr()

const Blackbox2 * getRightPtr ( ) const
inlineinherited

◆ write()

std::ostream & write ( std::ostream & os) const
inlineinherited

Field Documentation

◆ _Ap

const Blackbox1* _Ap
protectedinherited

◆ _Bp

const Blackbox2* _Bp
protectedinherited

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