linbox
|
Specialization for BlasMatrix. More...
#include <submatrix.h>
Public Types | |
typedef const BlasSubmatrix< typename _Matrix::constSelf_t > | constSelf_t |
Self type (const) | |
typedef Rep::pointer | pointer |
pointer type to elements | |
typedef const pointer | const_pointer |
const pointer type | |
typedef Self_t | subMatrixType |
Submatrix type. | |
typedef constSelf_t | constSubMatrixType |
Submatrix type (const) | |
typedef _Matrix::Self_t | matrixType |
non const matrix type | |
typedef _Matrix::constSelf_t | constMatrixType |
matrix type (const) | |
typedef matrixType | blasType |
blas matrix type | |
typedef BlasVector< Field, Rep > | vectorType |
blas matrix type | |
typedef'd Row Iterators. | |
The row iterator gives the rows of the matrix in ascending order. Dereferencing the iterator yields a row vector in dense format |
Public Member Functions | |
Submatrix (const BlasMatrix< Field > *Mat, size_t row, size_t col, size_t Rowdim, size_t Coldim) | |
Constructor from an existing BlasMatrix and dimensions. | |
Submatrix (const BlasMatrix< Field > &Mat, size_t row, size_t col, size_t Rowdim, size_t Coldim) | |
Constructor from an existing BlasMatrix and dimensions. | |
Submatrix (const Submatrix< BlasMatrix< Field > > *SM, size_t row, size_t col, size_t Rowdim, size_t Coldim) | |
Constructor from an existing submatrix and dimensions. | |
Submatrix (const Submatrix< BlasMatrix< Field > > &SM, size_t row, size_t col, size_t Rowdim, size_t Coldim) | |
Constructor from an existing submatrix and dimensions. | |
const Field & | field () const |
get the field | |
std::istream & | read (std::istream &is) |
read | |
std::ostream & | write (std::ostream &os) const |
write | |
template<class Vect1 , class Vect2 > | |
Vect1 & | apply (Vect1 &y, const Vect2 &x) const |
Generic matrix-vector apply y = A * x . | |
template<class Vect1 , class Vect2 > | |
Vect1 & | applyTranspose (Vect1 &y, const Vect2 &x) const |
Generic matrix-vector transpose apply y = A^T * x This version of applyTranspose allows use of arbitrary input and output vector types. | |
BlasSubmatrix & | copy (const Matrix &B) |
This is deep copy of the data, operator= is a shallow copy. | |
BlasSubmatrix & | swap (Self_t &B) |
Swap contents. Shapes must be the same. | |
BlasSubmatrix & | zero () |
Overwrite with zeroes. | |
void | random () |
Overwrite with random elements. | |
size_t | rowdim () const |
Get the number of rows in the matrix. | |
size_t | coldim () const |
Get the number of columns in the matrix. | |
size_t | getStride () const |
Get the stride of the matrix. | |
std::ostream & | write (std::ostream &os, Tag::FileFormat f=Tag::FileFormat::MatrixMarket) const |
Write the matrix to an output stream. | |
pointer | getPointer () |
| |
pointer | getWritePointer () |
| |
const Element & | setEntry (size_t i, size_t j, const Element &a_ij) |
Set the entry at (i, j). | |
Element & | refEntry (size_t i, size_t j) |
Get a writeable reference to an entry in the matrix. | |
const Element & | getEntry (size_t i, size_t j) const |
Get a read-only individual entry from the matrix. | |
Element & | getEntry (Element &x, size_t i, size_t j) const |
Get an entry and store it in the given value. | |
Protected Attributes | |
BlasMatrix< _Field > & | _Mat |
Parent BlasMatrix (ie encapsulated raw std::vector) | |
size_t | _row |
row dimension of Submatrix | |
size_t | _col |
col dimension of Submatrix | |
size_t | _r0 |
upper left corner row of Submatrix in _Mat | |
size_t | _c0 |
upper left corner row of Submatrix in _Mat | |
size_t | _stride |
number of columns in _Mat (or stride of _Mat ) | |
size_t | _off |
offset in _Mat , precomputed (_row*_stride+_col) | |
typedef'd Column Iterators. | |
The columns iterator gives the columns of the matrix in ascending order. Dereferencing the iterator yields a column vector in dense format | |
RowIterator | rowBegin () |
iterator to the begining of a row | |
ConstRowIterator | rowBegin () const |
const iterator to the begining of a row | |
RowIterator | rowEnd () |
iterator to the end of a row | |
ConstRowIterator | rowEnd () const |
const iterator to the end of a row | |
Row | operator[] (size_t i) |
operator[]. | |
Vector1 & | apply (Vector1 &y, const Vector2 &x) const |
Vector1 & | applyTranspose (Vector1 &y, const Vector2 &x) const |
Specialization for BlasMatrix.
|
inline |
Constructor from an existing BlasMatrix and dimensions.
Mat | Pointer to BlasMatrix of which to construct submatrix |
row | Starting row |
col | Starting column |
Rowdim | Row dimension |
Coldim | Column dimension |
|
inline |
Constructor from an existing BlasMatrix and dimensions.
Mat | reference to BlasMatrix of which to construct submatrix |
row | Starting row |
col | Starting column |
Rowdim | Row dimension |
Coldim | Column dimension |
|
inline |
Constructor from an existing submatrix and dimensions.
SM | pointer to Submatrix from which to construct submatrix |
row | Starting row |
col | Starting column |
Rowdim | Row dimension |
Coldim | Column dimension |
|
inline |
Constructor from an existing submatrix and dimensions.
SM | reference to Submatrix from which to construct submatrix |
row | Starting row |
col | Starting column |
Rowdim | Row dimension |
Coldim | Column dimension |
|
inline |
Generic matrix-vector apply y = A * x
.
This version of apply allows use of arbitrary input and output vector * types.
y | Output vector |
x | Input vector |
|
inline |
Generic matrix-vector transpose apply y = A^T * x
This version of applyTranspose allows use of arbitrary input and output vector types.
y | Output vector |
x | Input vector |
|
inherited |
Get the number of rows in the matrix.
|
inherited |
Get the number of columns in the matrix.
|
inherited |
Get the stride of the matrix.
|
inherited |
Write the matrix to an output stream.
os | Output stream to which to write |
f | write in some format (Tag::FileFormat::Format). Default is MM's. |
|
inherited |
Set the entry at (i, j).
i | Row number, 0...rowdim () - 1 |
j | Column number 0...coldim () - 1 |
a_ij | Element to set |
|
inherited |
Get a writeable reference to an entry in the matrix.
i | Row index of entry |
j | Column index of entry |
|
inherited |
Get a read-only individual entry from the matrix.
i | Row index |
j | Column index |
|
inherited |
Get an entry and store it in the given value.
This form is more in the Linbox style and is provided for interface compatibility with other parts of the library
x | Element in which to store result |
i | Row index |
j | Column index |
|
inherited |
operator[].
Retrieve a reference to a row
i | Row index |
|
inlineinherited |
|
inlineinherited |