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

DirectSum Class Template Reference
[linbox/blackbox]

#include <direct-sum.h>

Inheritance diagram for DirectSum:

BlackboxInterface

Detailed Description

template<class Blackbox1, class Blackbox2>
class LinBox::DirectSum< Blackbox1, Blackbox2 >

If C = DirectSum(A, B) and y = xA and z = wB, then (y,z) = (x,w)C.

And similarly for apply.


Public Types

typedef Blackbox1::Field Field
typedef Blackbox1::Element Element

Public Member Functions

 DirectSum (const Blackbox1 &A, const Blackbox2 &B)
 DirectSum (const Blackbox1 *Ap, const Blackbox2 *Bp)
 DirectSum (const DirectSum< Blackbox1, Blackbox2 > &M)
 Copy constructor.

 ~DirectSum (void)
 Destructor.

template<class OutVector, class InVector> OutVector & apply (OutVector &y, const InVector &x) const
template<class OutVector, class InVector> OutVector & applyTranspose (OutVector &y, const InVector &x) const
size_t rowdim (void) const
size_t coldim (void) const
const Fieldfield () const

Protected Attributes

const Blackbox1 * _Ap
const Blackbox2 * _Bp


Member Typedef Documentation

typedef Blackbox1::Field Field
 

typedef Blackbox1::Element Element
 


Constructor & Destructor Documentation

DirectSum const Blackbox1 &  A,
const Blackbox2 &  B
[inline]
 

Constructor from two black box matrices. This becomes direct sum of A and B. They may be rectangular.

Parameters:
A,B: black box matrices over a common field.

DirectSum const Blackbox1 *  Ap,
const Blackbox2 *  Bp
[inline]
 

Constructor from two black box matrix pointers. This becomes direct sum of A and B. They may be rectangular. They must be over the same field (or ring).

Parameters:
A_ptr pointer to black box matrix A.
B_ptr pointer to black box matrix B.

DirectSum const DirectSum< Blackbox1, Blackbox2 > &  M  )  [inline]
 

Copy constructor.

~DirectSum void   )  [inline]
 

Destructor.


Member Function Documentation

OutVector& apply OutVector &  y,
const InVector &  x
const [inline]
 

OutVector& applyTranspose OutVector &  y,
const InVector &  x
const [inline]
 

size_t rowdim void   )  const [inline]
 

size_t coldim void   )  const [inline]
 

const Field& field  )  const [inline]
 


Field Documentation

const Blackbox1* _Ap [protected]
 

const Blackbox2* _Bp [protected]
 


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