Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Toeplitz Class Template Reference
[linbox/blackbox]

#include <ntl-toeplitz.h>

Inheritance diagram for Toeplitz:

BlackboxInterface Hankel List of all members.

Detailed Description

template<class _Field>
class LinBox::Toeplitz< _Field >

This is the blackbox representation of a Toeplitz matrix.

It stores the 2n-1 values of the first row and column. The apply is a call to polynomial multiplication and for large n will be FFT based, running in O(lg(n)) time.


Public Types

typedef _Field Field
typedef Field::Element Element

Public Methods

 ~Toeplitz ()
 Toeplitz ()
 Toeplitz (const Field &F)
 Toeplitz (const Field &F, const std::vector< Element > &v)
void print (std::ostream &os=std::cout) const
void print (char *outFileName) const
size_t rowdim () const
size_t coldim () const
size_t sysdim () const
const Fieldfield () const
void setToUniModUT ()
void setToUniModLT ()
template<class OutVector, class InVector> OutVector & apply (OutVector &v_out, const InVector &v_in) const
template<class OutVector, class InVector> OutVector & applyTranspose (OutVector &v_out, const InVector &v_in) const

Protected Methods

void init_vector (const std::vector< typename Field::Element > &v)
void convert (NTL::ZZ_pX &pout, const std::vector< Element > &vin)
void convert (const std::vector< Element > &vout, class NTL::ZZ_pX &pin)

Protected Attributes

Field K
size_t rowDim
size_t colDim
size_t sysDim
NTL::ZZ_pX pdata
NTL::ZZ_pX rpdata
int shape
std::vector< NTL::ZZ_p > data

Static Protected Attributes

const int UnimodUT = 1
const int UnimodLT = 2


Member Typedef Documentation

typedef Field::Element Element
 

Reimplemented in Hankel.

typedef _Field Field
 

Reimplemented in Hankel.


Constructor & Destructor Documentation

~Toeplitz   [inline]
 

Toeplitz  
 

Toeplitz const Field   F [inline]
 

Toeplitz const Field   F,
const std::vector< Element > &    v
 


Member Function Documentation

OutVector & apply OutVector &    v_out,
const InVector &    v_in
const
 

Reimplemented in Hankel.

OutVector & applyTranspose OutVector &    v_out,
const InVector &    v_in
const
 

Reimplemented in Hankel.

size_t coldim   [inline]
 

void convert const std::vector< Element > &    vout,
class NTL::ZZ_pX &    pin
[protected]
 

void convert NTL::ZZ_pX &    pout,
const std::vector< Element > &    vin
[protected]
 

const Field& field   const [inline]
 

void init_vector const std::vector< typename Field::Element > &    v [protected]
 

void print char *    outFileName const
 

Reimplemented in Hankel.

void print std::ostream &    os = std::cout const
 

Reimplemented in Hankel.

size_t rowdim   [inline]
 

void setToUniModLT  
 

Reimplemented in Hankel.

void setToUniModUT  
 

Reimplemented in Hankel.

size_t sysdim   [inline]
 


Member Data Documentation

size_t colDim [protected]
 

std::vector<NTL::ZZ_p> data [protected]
 

Field K [protected]
 

NTL::ZZ_pX pdata [protected]
 

size_t rowDim [protected]
 

NTL::ZZ_pX rpdata [protected]
 

int shape [protected]
 

size_t sysDim [protected]
 

const int UnimodLT = 2 [static, protected]
 

const int UnimodUT = 1 [static, protected]
 


Generated on Mon Jun 20 09:16:58 2005 for linbox by doxygen1.2.18