linbox
PolynomialBBOwner< Blackbox, Poly > Class Template Reference

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

#include <polynomial.h>

+ Inheritance diagram for PolynomialBBOwner< Blackbox, Poly >:

Data Structures

struct  rebind
 

Public Types

typedef Blackbox::Field Field
 
typedef Blackbox::Element Element
 
typedef Poly Polynomial
 
typedef PolynomialBBOwner< Blackbox, PolynomialSelf_t
 

Public Member Functions

 PolynomialBBOwner (const Blackbox &A, const Polynomial &P)
 Constructor from a black box and a polynomial.
 
 PolynomialBBOwner (const Blackbox *A_data, const Polynomial *P_data)
 
 PolynomialBBOwner (const PolynomialBBOwner< Blackbox, Polynomial > &Mat)
 Copy constructor.
 
 ~PolynomialBBOwner (void)
 Destructor.
 
template<class Vector1, class Vector2>
Vector1 & apply (Vector1 &y, const Vector2 &x) const
 Application of BlackBox matrix.
 
template<class Vector1, class Vector2>
Vector1 & applyTranspose (Vector1 &y, const Vector2 &x) const
 Application of BlackBox matrix transpose.
 
template<typename _BBt, typename _Polt, typename Field>
 PolynomialBBOwner (const PolynomialBB< _BBt, _Polt > &Mat, const Field &F)
 
template<typename _BBt, typename _Polt, typename Field>
 PolynomialBBOwner (const PolynomialBBOwner< _BBt, _Polt > &Mat, const Field &F)
 
size_t rowdim (void) const
 Retreive row dimensions of BlackBox matrix.
 
size_t coldim (void) const
 Retreive column dimensions of BlackBox matrix.
 
const PolynomialgetDataPolynomial () const
 
const BlackboxgetDataBlackbox () const
 
const Fieldfield () const
 

Detailed Description

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

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

Member Typedef Documentation

◆ Field

template<class Blackbox, class Poly>
typedef Blackbox::Field Field

◆ Element

template<class Blackbox, class Poly>
typedef Blackbox::Element Element

◆ Polynomial

template<class Blackbox, class Poly>
typedef Poly Polynomial

◆ Self_t

template<class Blackbox, class Poly>
typedef PolynomialBBOwner<Blackbox,Polynomial> Self_t

Constructor & Destructor Documentation

◆ PolynomialBBOwner() [1/5]

template<class Blackbox, class Poly>
PolynomialBBOwner ( const Blackbox & A,
const Polynomial & P )
inline

Constructor from a black box and a polynomial.

◆ PolynomialBBOwner() [2/5]

template<class Blackbox, class Poly>
PolynomialBBOwner ( const Blackbox * A_data,
const Polynomial * P_data )
inline

◆ PolynomialBBOwner() [3/5]

template<class Blackbox, class Poly>
PolynomialBBOwner ( const PolynomialBBOwner< Blackbox, Polynomial > & Mat)
inline

Copy constructor.

Creates new black box objects in dynamic memory.

Parameters
Matconstant reference to compose black box matrix

◆ ~PolynomialBBOwner()

template<class Blackbox, class Poly>
~PolynomialBBOwner ( void )
inline

Destructor.

◆ PolynomialBBOwner() [4/5]

template<class Blackbox, class Poly>
template<typename _BBt, typename _Polt, typename Field>
PolynomialBBOwner ( const PolynomialBB< _BBt, _Polt > & Mat,
const Field & F )
inline

◆ PolynomialBBOwner() [5/5]

template<class Blackbox, class Poly>
template<typename _BBt, typename _Polt, typename Field>
PolynomialBBOwner ( const PolynomialBBOwner< _BBt, _Polt > & Mat,
const Field & F )
inline

Member Function Documentation

◆ apply()

template<class Blackbox, class Poly>
template<class Vector1, class Vector2>
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
xconstant reference to vector to contain input
y

◆ applyTranspose()

template<class Blackbox, class Poly>
template<class Vector1, class Vector2>
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
xconstant reference to vector to contain input
y

◆ rowdim()

template<class Blackbox, class Poly>
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.

◆ coldim()

template<class Blackbox, class Poly>
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.

◆ getDataPolynomial()

template<class Blackbox, class Poly>
const Polynomial & getDataPolynomial ( ) const
inline

◆ getDataBlackbox()

template<class Blackbox, class Poly>
const Blackbox & getDataBlackbox ( ) const
inline

◆ field()

template<class Blackbox, class Poly>
const Field & field ( ) const
inline

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