blackbox of a matrix sum without copying.
More...
#include <sum.h>
Inherits BlackboxInterface.
|
| Sum (const Blackbox1 &A, const Blackbox2 &B) |
| Constructor from black box matrices. More...
|
|
| Sum (const Blackbox1 *A_ptr, const Blackbox2 *B_ptr) |
| Constructor from black box pointers. More...
|
|
| Sum (const Sum< Blackbox1, Blackbox2 > &M) |
| Copy constructor. More...
|
|
| ~Sum (void) |
| Destructor.
|
|
template<class OutVector , class InVector > |
OutVector & | apply (OutVector &y, const InVector &x) const |
| Application of BlackBox matrix. More...
|
|
template<class OutVector , class InVector > |
OutVector & | applyTranspose (OutVector &y, const InVector &x) const |
| Application of BlackBox matrix transpose. More...
|
|
size_t | rowdim (void) const |
| Retreive row dimensions of BlackBox matrix. More...
|
|
size_t | coldim (void) const |
| Retreive column dimensions of BlackBox matrix. More...
|
|
template<class _Blackbox1, class _Blackbox2>
class LinBox::Sum< _Blackbox1, _Blackbox2 >
blackbox of a matrix sum without copying.
Adds only at apply time. Given two black boxes A and B of the same dimensions, form a black box representing A+B, i.e., Sum(A,B)x=(A+B)x=Ax+Bx
- Parameters
-
◆ Sum() [1/3]
Sum |
( |
const Blackbox1 & |
A, |
|
|
const Blackbox2 & |
B |
|
) |
| |
|
inline |
Constructor from black box matrices.
This constructor creates a matrix that is the sum, A + B, of black box matrices.
- Parameters
-
◆ Sum() [2/3]
Sum |
( |
const Blackbox1 * |
A_ptr, |
|
|
const Blackbox2 * |
B_ptr |
|
) |
| |
|
inline |
Constructor from black box pointers.
This constructor creates a matrix that is the sum, A + B, of black box matrices.
- Parameters
-
A_ptr,B_ptr | pointers to black box matrices. |
◆ Sum() [3/3]
Sum |
( |
const Sum< Blackbox1, Blackbox2 > & |
M | ) |
|
|
inline |
Copy constructor.
Creates new black box objects in dynamic memory.
- Parameters
-
M | constant reference to compose black box matrix |
◆ apply()
OutVector& apply |
( |
OutVector & |
y, |
|
|
const InVector & |
x |
|
) |
| const |
|
inline |
Application of BlackBox matrix.
. 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 |
y | |
◆ applyTranspose()
OutVector& applyTranspose |
( |
OutVector & |
y, |
|
|
const InVector & |
x |
|
) |
| const |
|
inline |
Application of BlackBox matrix transpose.
. 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 |
y | |
◆ rowdim()
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()
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.
The documentation for this class was generated from the following file: