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

PolynomialBB Class Template Reference
[linbox/blackbox]

#include <polynomial.h>

Inheritance diagram for PolynomialBB:

BlackboxInterface

Detailed Description

template<class Blackbox, class Poly>
class LinBox::PolynomialBB< Blackbox, Poly >

represent the matrix P(A) where A is a blackbox and P a polynomial


Public Types

typedef Blackbox::Field Field
typedef Blackbox::Element Element
typedef Poly Polynomial
typedef PolynomialBB< Blackbox,
Polynomial
Self_t

Public Member Functions

 PolynomialBB (const Blackbox &A, const Polynomial &P)
 PolynomialBB (const Blackbox *A_ptr, const Polynomial *P_ptr)
 PolynomialBB (const PolynomialBB< Blackbox, Polynomial > &M)
 ~PolynomialBB (void)
 Destructor.

template<class Vector1, class Vector2> Vector1 & apply (Vector1 &y, const Vector2 &x) const
template<class Vector1, class Vector2> Vector1 & applyTranspose (Vector1 &y, const Vector2 &x) const
size_t rowdim (void) const
size_t coldim (void) const
const PolynomialgetPolynomial () const
const Blackbox & getBlackbox () const
const Fieldfield () const


Member Typedef Documentation

typedef Blackbox::Field Field
 

typedef Blackbox::Element Element
 

typedef Poly Polynomial
 

typedef PolynomialBB<Blackbox,Polynomial> Self_t
 


Constructor & Destructor Documentation

PolynomialBB const Blackbox &  A,
const Polynomial P
[inline]
 

Constructor from a black box and a polynomial.

PolynomialBB const Blackbox *  A_ptr,
const Polynomial P_ptr
[inline]
 

PolynomialBB const PolynomialBB< Blackbox, Polynomial > &  M  )  [inline]
 

Copy constructor. Creates new black box objects in dynamic memory.

Parameters:
M constant reference to compose black box matrix

~PolynomialBB void   )  [inline]
 

Destructor.


Member Function Documentation

Vector1& apply Vector1 &  y,
const Vector2 &  x
const [inline]
 

Application of BlackBox matrix. y = P(A)x Requires one vector conforming to the {LinBox} vector archetype. Required by abstract base class.

Returns:
reference to vector y containing output.
Parameters:
x constant reference to vector to contain input

Vector1& applyTranspose Vector1 &  y,
const Vector2 &  x
const [inline]
 

Application of BlackBox matrix transpose. y= transpose(A*B)*x. Requires one vector conforming to the {LinBox} vector archetype. Required by abstract base class.

Returns:
reference to vector y containing output.
Parameters:
x constant reference to vector to contain input

size_t rowdim void   )  const [inline]
 

Retreive row dimensions of BlackBox matrix. This may be needed for applying preconditioners. Required by abstract base class.

Returns:
integer number of rows of black box matrix.

size_t coldim void   )  const [inline]
 

Retreive column dimensions of BlackBox matrix. Required by abstract base class.

Returns:
integer number of columns of black box matrix.

const Polynomial& getPolynomial  )  const [inline]
 

const Blackbox& getBlackbox  )  const [inline]
 

const Field& field  )  const [inline]
 


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