|
linbox
|
Submatrix of a dense matrix More...
#include <dense-submatrix.h>
Inheritance diagram for DenseSubmatrix< _Element >:Data Structures | |
| class | ConstRawIndexedIterator |
| Raw Indexed Iterator (const version). More... | |
| class | ConstRawIterator |
| Raw Iterators (const version). More... | |
| class | RawIndexedIterator |
| Raw Indexed Iterator. More... | |
| class | RawIterator |
| Raw Iterators. More... | |
Public Types | |
| typedef _Element | Element |
| Element type. | |
| typedef DenseSubmatrix< _Element > | Self_t |
| Self 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 | |
|
typedef DenseMatrixBase < Element >::RowIterator | RowIterator |
|
typedef DenseMatrixBase < Element >::ConstRowIterator | ConstRowIterator |
|
typedef DenseMatrixBase < Element >::Row | Row |
|
typedef DenseMatrixBase < Element >::ConstRow | ConstRow |
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 | |
|
typedef DenseMatrixBase < Element >::ColIterator | ColIterator |
|
typedef DenseMatrixBase < Element >::ConstColIterator | ConstColIterator |
|
typedef DenseMatrixBase < Element >::Col | Col |
|
typedef DenseMatrixBase < Element >::Column | Column |
|
typedef DenseMatrixBase < Element >::ConstCol | ConstCol |
Public Member Functions | |
| DenseSubmatrix () | |
| NULL constructor. | |
| DenseSubmatrix (DenseMatrixBase< Element > &M, size_t row, size_t col, size_t rowdim, size_t coldim) | |
| Constructor from an existing DenseMatrixBase and dimensions. | |
| DenseSubmatrix (DenseMatrixBase< Element > &M) | |
| Constructor from an existing DenseMatrixBase. | |
| DenseSubmatrix (const DenseSubmatrix< Element > &SM, size_t row, size_t col, size_t rowdim, size_t coldim) | |
| Constructor from an existing submatrix and dimensions. | |
| DenseSubmatrix (const DenseSubmatrix< Element > &SM) | |
| Copy constructor. | |
| DenseSubmatrix & | operator= (const DenseSubmatrix< Element > &SM) |
| Assignment operator. | |
| size_t | rowdim () const |
| Get the number of rows in the matrix. | |
| size_t | coldim () const |
| Get the number of columns in the matrix. | |
| template<class Field > | |
| std::istream & | read (std::istream &file, const Field &field) |
| Read the matrix from an input stream. | |
| template<class Field > | |
| std::ostream & | write (std::ostream &os, const Field &field, bool mapleFormat=false) const |
| Write the matrix to an output stream. | |
| std::ostream & | write (std::ostream &os, bool mapleFormat=false) const |
| Write the matrix to an output stream. | |
| void | 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. | |
| RowIterator | rowBegin () |
| iterator to the begining of a row | |
| RowIterator | rowEnd () |
| iterator to the end of a row | |
| ConstRowIterator | rowBegin () const |
| const iterator to the begining of a row | |
| ConstRowIterator | rowEnd () const |
| const iterator to the end of a row | |
| DenseSubmatrix< Element > | transpose (DenseMatrixBase< Element > &tM) |
Creates a transposed matrix of *this. | |
| DenseSubmatrix< Element > & | transpose (DenseSubmatrix< Element > &tA) |
Creates a transposed matrix of *this. | |
Submatrix of a dense matrix
This matrix type conforms to the same interface as DenseMatrixBase, except that you cannot resize it. It represents a submatrix of a dense matrix. Upon construction, one can freely manipulate the entries in the DenseSubmatrix, and the corresponding entries in the underlying DenseMatrixBase will be modified.
| DenseSubmatrix | ( | ) | [inline] |
NULL constructor.
| DenseSubmatrix | ( | DenseMatrixBase< Element > & | M, |
| size_t | row, | ||
| size_t | col, | ||
| size_t | rowdim, | ||
| size_t | coldim | ||
| ) |
Constructor from an existing DenseMatrixBase and dimensions.
| M | Pointer to DenseMatrixBase of which to construct submatrix |
| row | Starting row |
| col | Starting column |
| rowdim | Row dimension |
| coldim | Column dimension |
| DenseSubmatrix | ( | DenseMatrixBase< Element > & | M | ) |
Constructor from an existing DenseMatrixBase.
| M | Pointer to DenseMatrixBase of which to construct submatrix |
| DenseSubmatrix | ( | const DenseSubmatrix< Element > & | SM, |
| size_t | row, | ||
| size_t | col, | ||
| size_t | rowdim, | ||
| size_t | coldim | ||
| ) |
Constructor from an existing submatrix and dimensions.
| SM | Constant reference to DenseSubmatrix from which to construct submatrix |
| row | Starting row |
| col | Starting column |
| rowdim | Row dimension |
| coldim | Column dimension |
| DenseSubmatrix | ( | const DenseSubmatrix< Element > & | SM | ) |
Copy constructor.
| SM | Submatrix to copy |
| DenseSubmatrix< _Element > & operator= | ( | const DenseSubmatrix< Element > & | SM | ) |
Assignment operator.
Assign the given submatrix to this one
| SM | Submatrix to assign |
| size_t rowdim | ( | ) | const [inline] |
Get the number of rows in the matrix.
Reimplemented in BlasBlackbox< _Field >, BlasBlackbox< Modular< double > >, and BlasBlackbox< Domain >.
| size_t coldim | ( | ) | const [inline] |
Get the number of columns in the matrix.
Reimplemented in BlasBlackbox< _Field >, BlasBlackbox< Modular< double > >, and BlasBlackbox< Domain >.
| std::istream & read | ( | std::istream & | file, |
| const Field & | field | ||
| ) |
Read the matrix from an input stream.
| file | Input stream from which to read |
| field |
| std::ostream & write | ( | std::ostream & | os, |
| const Field & | field, | ||
| bool | mapleFormat = false |
||
| ) | const |
Write the matrix to an output stream.
| os | Output stream to which to write |
| field | |
| mapleFormat | write in Maple(r) format ? |
| std::ostream & write | ( | std::ostream & | os, |
| bool | mapleFormat = false |
||
| ) | const |
Write the matrix to an output stream.
This a raw version of write(os,F) (no field is given).
| os | Output stream to which to write |
| mapleFormat | write in Maple(r) format ? |
| void setEntry | ( | size_t | i, |
| size_t | j, | ||
| const Element & | a_ij | ||
| ) | [inline] |
Set the entry at (i, j).
| i | Row number, 0...rowdim () - 1 |
| j | Column number 0...coldim () - 1 |
| a_ij | Element to set |
| Element& refEntry | ( | size_t | i, |
| size_t | j | ||
| ) | [inline] |
Get a writeable reference to an entry in the matrix.
| i | Row index of entry |
| j | Column index of entry |
| const Element& getEntry | ( | size_t | i, |
| size_t | j | ||
| ) | const [inline] |
Get a read-only individual entry from the matrix.
| i | Row index |
| j | Column index |
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 |
| DenseSubmatrix<Element> transpose | ( | DenseMatrixBase< Element > & | tM | ) | [inline] |
Creates a transposed matrix of *this.
| [in] | tM |
| DenseSubmatrix<Element>& transpose | ( | DenseSubmatrix< Element > & | tA | ) | [inline] |
Creates a transposed matrix of *this.
1.7.4