linbox
SlicedPolynomialVector< _Field, _Storage, _VectorElement > Class Template Reference

#include <SlicedPolynomialVector.h>

Public Types

typedef _Field Field
 
typedef Field::Element Element
 
typedef _Storage Rep
 
typedef _VectorElement VectorElement
 
typedef Givaro::Modular< VectorElement, VectorElementIntField
 
typedef SlicedPolynomialVector< Field, Rep, VectorElementSelf_t
 
typedef Givaro::Poly1Dom< IntField, Dense >::Rep polynomial
 

Public Member Functions

 SlicedPolynomialVector (const Field &BF)
 Allocates a vector of new zero vectors of size 0 (shaped and ready).
 
 SlicedPolynomialVector (const Field &BF, const size_t &m)
 
 SlicedPolynomialVector (const Field &BF, polynomial &pp)
 Allocates a vector of new zero vectors of size 0 (shaped and ready).
 
 SlicedPolynomialVector (const Field &BF, const size_t &m, polynomial &pp)
 
 ~SlicedPolynomialVector ()
 
size_t length () const
 
size_t rowdim () const
 
const FieldfieldGF () const
 
const IntFieldfieldF () const
 
const VectorElementsetEntry (size_t m, size_t k, const VectorElement &a_mk)
 
VectorElementgetEntry (size_t m, size_t k)
 
void setVectorCoefficient (size_t m, const BlasVector< IntField > &V_m)
 
const BlasVector< IntField > & getVectorCoefficient (size_t m) const
 Get a read-only reference to the m-th matrix-coefficient.
 
void swapRows (size_t k1, size_t k2)
 
std::istream & read (std::istream &file)
 
std::ostream & write (std::ostream &os) const
 

Data Fields

polynomial irreducible
 

Member Typedef Documentation

◆ Field

template<class _Field, class _Storage, class _VectorElement = double>
typedef _Field Field

◆ Element

template<class _Field, class _Storage, class _VectorElement = double>
typedef Field::Element Element

◆ Rep

template<class _Field, class _Storage, class _VectorElement = double>
typedef _Storage Rep

◆ VectorElement

template<class _Field, class _Storage, class _VectorElement = double>
typedef _VectorElement VectorElement

◆ IntField

template<class _Field, class _Storage, class _VectorElement = double>
typedef Givaro::Modular<VectorElement, VectorElement> IntField

◆ Self_t

template<class _Field, class _Storage, class _VectorElement = double>
typedef SlicedPolynomialVector<Field, Rep, VectorElement> Self_t

◆ polynomial

template<class _Field, class _Storage, class _VectorElement = double>
typedef Givaro::Poly1Dom<IntField,Dense>::Rep polynomial

Constructor & Destructor Documentation

◆ SlicedPolynomialVector() [1/4]

template<class _Field, class _Rep, class _VectorElement>
SlicedPolynomialVector ( const Field & BF)

Allocates a vector of new zero vectors of size 0 (shaped and ready).

Irreducible polynomial is chosen randomly.

◆ SlicedPolynomialVector() [2/4]

template<class _Field, class _Rep, class _VectorElement>
SlicedPolynomialVector ( const Field & BF,
const size_t & m )

◆ SlicedPolynomialVector() [3/4]

template<class _Field, class _Rep, class _VectorElement>
SlicedPolynomialVector ( const Field & BF,
polynomial & pp )

Allocates a vector of new zero vectors of size 0 (shaped and ready).

◆ SlicedPolynomialVector() [4/4]

template<class _Field, class _Rep, class _VectorElement>
SlicedPolynomialVector ( const Field & BF,
const size_t & m,
polynomial & pp )

◆ ~SlicedPolynomialVector()

template<class _Field, class _Rep, class _VectorElement>
~SlicedPolynomialVector ( )

Member Function Documentation

◆ length()

template<class _Field, class _Rep, class _VectorElement>
size_t length ( ) const

◆ rowdim()

template<class _Field, class _Rep, class _VectorElement>
size_t rowdim ( ) const

◆ fieldGF()

template<class _Field, class _Rep, class _VectorElement>
const Field & fieldGF ( ) const

◆ fieldF()

template<class _Field, class _Rep, class _VectorElement>
const IntField & fieldF ( ) const

◆ setEntry()

template<class _Field, class _Rep, class _VectorElement>
const VectorElement & setEntry ( size_t m,
size_t k,
const VectorElement & a_mk )

◆ getEntry()

template<class _Field, class _Rep, class _VectorElement>
_VectorElement & getEntry ( size_t m,
size_t k )

◆ setVectorCoefficient()

template<class _Field, class _Storage, class _VectorElement = double>
void setVectorCoefficient ( size_t m,
const BlasVector< IntField > & V_m )

◆ getVectorCoefficient()

template<class _Field, class _Storage, class _VectorElement = double>
const BlasVector< IntField > & getVectorCoefficient ( size_t m) const

Get a read-only reference to the m-th matrix-coefficient.

Parameters
mmatrix-coefficient number, 0...length() - 1
Returns
Const reference to matrix-coefficent

◆ swapRows()

template<class _Field, class _Rep, class _VectorElement>
void swapRows ( size_t k1,
size_t k2 )

◆ read()

template<class _Field, class _Rep, class _VectorElement>
std::istream & read ( std::istream & file)

◆ write()

template<class _Field, class _Storage, class _VectorElement = double>
std::ostream & write ( std::ostream & os) const

Field Documentation

◆ irreducible

template<class _Field, class _Storage, class _VectorElement = double>
polynomial irreducible

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