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 Field & field () 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