Main Page | Modules | Namespace List | Class Hierarchy | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages

Toeplitz Class Template Reference
[linbox/blackbox]

#include <ntl-toeplitz.h>

Inheritance diagram for Toeplitz:

BlackboxInterface Hankel

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 Member Functions

 ~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 Member Functions

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 Field
 

Reimplemented in Hankel.

typedef Field::Element Element
 

Reimplemented in Hankel.


Constructor & Destructor Documentation

~Toeplitz  ) 
 

Toeplitz  ) 
 

Toeplitz const Field F  )  [inline]
 

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


Member Function Documentation

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

Reimplemented in Hankel.

void print char *  outFileName  )  const
 

Reimplemented in Hankel.

size_t rowdim  )  const [inline]
 

size_t coldim  )  const [inline]
 

size_t sysdim  )  const [inline]
 

const Field& field  )  const [inline]
 

void setToUniModUT  ) 
 

Reimplemented in Hankel.

void setToUniModLT  ) 
 

Reimplemented in Hankel.

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.

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

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

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


Field Documentation

Field K [protected]
 

size_t rowDim [protected]
 

size_t colDim [protected]
 

size_t sysDim [protected]
 

NTL::ZZ_pX pdata [protected]
 

NTL::ZZ_pX rpdata [protected]
 

const int UnimodUT = 1 [static, protected]
 

const int UnimodLT = 2 [static, protected]
 

int shape [protected]
 

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


Generated on Fri Jul 8 10:29:49 2005 for linbox by doxygen 1.3.7