linbox
Transpose< Blackbox > Class Template Reference

transpose matrix without copying. More...

#include <transpose.h>

+ Inheritance diagram for Transpose< Blackbox >:

Data Structures

struct  rebind
 

Public Types

typedef Blackbox Blackbox_t
 
typedef Transpose< BlackboxSelf_t
 
typedef Blackbox::Field Field
 
typedef Blackbox::Element Element
 

Public Member Functions

 Transpose (Blackbox &A)
 Constructor from a black box.
 
 Transpose (const Blackbox &A)
 
 Transpose (const Blackbox *A_ptr)
 
 Transpose (const Transpose< Blackbox > &Mat)
 Copy constructor.
 
 ~Transpose (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.
 
size_t rowdim (void) const
 Retreive row dimensions of BlackBox matrix.
 
size_t coldim (void) const
 Retreive column dimensions of BlackBox matrix.
 
const Fieldfield () const
 
const BlackboxgetPtr () const
 
std::ostream & write (std::ostream &os) const
 
std::istream & read (std::istream &is)
 

Protected Attributes

const Blackbox_A_ptr
 

Detailed Description

template<class Blackbox>
class LinBox::Transpose< Blackbox >

transpose matrix without copying.

Parameters
VectorLinBox dense or sparse vector of field elements
Bug
no write here. test-blackbox.h requires it
Examples
examples/minpoly.C, examples/smithsparse.C, and examples/valence.C.

Member Typedef Documentation

◆ Blackbox_t

template<class Blackbox>
typedef Blackbox Blackbox_t

◆ Self_t

template<class Blackbox>
typedef Transpose<Blackbox> Self_t

◆ Field

template<class Blackbox>
typedef Blackbox::Field Field

◆ Element

template<class Blackbox>
typedef Blackbox::Element Element

Constructor & Destructor Documentation

◆ Transpose() [1/4]

template<class Blackbox>
Transpose ( Blackbox & A)
inline

Constructor from a black box.

This constructor creates a matrix that is the transpose of a black box matrix A

Parameters
Apointer to black box matrix.

◆ Transpose() [2/4]

template<class Blackbox>
Transpose ( const Blackbox & A)
inline

◆ Transpose() [3/4]

template<class Blackbox>
Transpose ( const Blackbox * A_ptr)
inline

◆ Transpose() [4/4]

template<class Blackbox>
Transpose ( const Transpose< Blackbox > & Mat)
inline

Copy constructor.

Parameters
Matconstant reference to compose black box matrix

◆ ~Transpose()

template<class Blackbox>
~Transpose ( void )
inline

Destructor.

Member Function Documentation

◆ apply()

template<class Blackbox>
template<class Vector1, class Vector2>
Vector1 & apply ( Vector1 & y,
const Vector2 & x ) const
inline

Application of BlackBox matrix.

y= (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

◆ applyTranspose()

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

◆ field()

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

◆ getPtr()

template<class Blackbox>
const Blackbox * getPtr ( ) const
inline

◆ write()

template<class Blackbox>
std::ostream & write ( std::ostream & os) const
inline

◆ read()

template<class Blackbox>
std::istream & read ( std::istream & is)
inline

Field Documentation

◆ _A_ptr

template<class Blackbox>
const Blackbox* _A_ptr
protected

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