#include <dif.h>
Inheritance diagram for Dif:
{\bf Template parameters:} Field is the class of the entry domain, Vector is a LinBox dense or sparse vector of field elements class.
Public Types | |
typedef Blackbox1::Field | Field |
typedef Blackbox1::Element | Element |
Public Methods | |
Dif (const Blackbox1 &A, const Blackbox2 &B) | |
Dif (const Blackbox1 *A_ptr, const Blackbox2 *B_ptr) | |
Dif (const Dif< Blackbox1, Blackbox2 > &M) | |
~Dif (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 Field & | field () const |
|
|
|
|
|
Build this as A - B from blackboxes A, B. A and B must have the same shape and be over the same field. Their data is not copied. A subsequent change to one of them also changes this difference. |
|
Build this as A - B from blackbox pointers A_ptr, B_ptr. The two matrices must have the same shape and be over the same field. Their data {\it is} copied. I don't know why. |
|
Makes a deep copy. Creates new black box objects in dynamic memory.
|
|
Destructor.
|
|
Application of BlackBox matrix. y= (A+B)*x. Requires one vector conforming to the \Ref{LinBox} vector archetype. Required by abstract base class.
|
|
Application of BlackBox matrix transpose. y= transpose(A+B)*x. Requires one vector conforming to the \Ref{LinBox} vector archetype. Required by abstract base class.
|
|
Retreive column dimensions of BlackBox matrix. Required by abstract base class.
|
|
|
|
Retreive row dimensions of BlackBox matrix. This may be needed for applying preconditioners. Required by abstract base class.
|