|
__cuda_callable__ | DenseMatrixView ()=default |
| Constructor without parameters.
|
|
__cuda_callable__ | DenseMatrixView (const DenseMatrixView &matrix)=default |
| Copy constructor.
|
|
__cuda_callable__ | DenseMatrixView (DenseMatrixView &&matrix) noexcept=default |
| Move constructor.
|
|
__cuda_callable__ | DenseMatrixView (Index rows, Index columns, typename Base::ValuesViewType values) |
| Constructor with matrix dimensions and values.
|
|
__cuda_callable__ void | bind (DenseMatrixView &&view) |
| Method for rebinding (reinitialization) using another dense matrix view.
|
|
__cuda_callable__ void | bind (DenseMatrixView &view) |
| Method for rebinding (reinitialization) using another dense matrix view.
|
|
__cuda_callable__ ConstViewType | getConstView () const |
| Returns a non-modifiable dense matrix view.
|
|
template<int tileDim = 16> |
void | getInPlaceTransposition (Real matrixMultiplicator=1.0) |
| Performs an in-place transposition of this matrix.
|
|
__cuda_callable__ ViewType | getView () |
| Returns a modifiable dense matrix view.
|
|
DenseMatrixView & | operator= (const DenseMatrixView &)=delete |
| Copy-assignment operator.
|
|
DenseMatrixView & | operator= (DenseMatrixView &&)=delete |
| Move-assignment operator.
|
|
void | save (File &file) const |
| Method for saving the matrix view to a file.
|
|
__cuda_callable__ | DenseMatrixBase ()=default |
| Constructor without parameters.
|
|
__cuda_callable__ | DenseMatrixBase (const DenseMatrixBase &matrix)=default |
| Copy constructor.
|
|
__cuda_callable__ | DenseMatrixBase (DenseMatrixBase &&matrix) noexcept=default |
| Move constructor.
|
|
__cuda_callable__ | DenseMatrixBase (IndexType rows, IndexType columns, typename Base::ValuesViewType values) |
| Constructor with matrix dimensions and values.
|
|
__cuda_callable__ void | addElement (IndexType row, IndexType column, const RealType &value, const RealType &thisElementMultiplicator=1.0) |
| Add element at given row and column to given value.
|
|
void | addMatrix (const Matrix &matrix, const RealType &matrixMultiplicator=1.0, const RealType &thisMatrixMultiplicator=1.0, TransposeState transpose=TransposeState::None) |
| Computes matrix addition.
|
|
void | forAllElements (Function &&function) |
| This method calls forElements for all matrix rows.
|
|
void | forAllElements (Function &&function) const |
| This method calls forElements for all matrix rows.
|
|
void | forAllRows (Function &&function) |
| Method for parallel iteration over all matrix rows.
|
|
void | forAllRows (Function &&function) const |
| Method for parallel iteration over all matrix rows for constant instances.
|
|
void | forElements (IndexType begin, IndexType end, Function &&function) |
| Method for iteration over all matrix rows for non-constant instances.
|
|
void | forElements (IndexType begin, IndexType end, Function &&function) const |
| Method for iteration over all matrix rows for constant instances.
|
|
void | forRows (IndexType begin, IndexType end, Function &&function) |
| Method for parallel iteration over matrix rows from interval [begin, end) .
|
|
void | forRows (IndexType begin, IndexType end, Function &&function) const |
| Method for parallel iteration over matrix rows from interval [begin, end) for constant instances.
|
|
void | getCompressedRowLengths (Vector &rowLengths) const |
| Computes number of non-zeros in each row.
|
|
__cuda_callable__ double | getElement (IndexType row, IndexType column) const |
| Returns value of matrix element at position given by its row and column index.
|
|
__cuda_callable__ RowView | getRow (IndexType rowIdx) |
| Non-constant getter of simple structure for accessing given matrix row.
|
|
__cuda_callable__ ConstRowView | getRow (IndexType rowIdx) const |
| Constant getter of simple structure for accessing given matrix row.
|
|
void | getRowCapacities (Vector &rowCapacities) const |
| Compute capacities of all rows.
|
|
__cuda_callable__ IndexType | getRowCapacity (IndexType row) const |
| Returns capacity of given matrix row.
|
|
bool | operator!= (const DenseMatrixBase< Real_, Device_, Index_, Organization > &matrix) const |
| Comparison operator with another dense matrix view.
|
|
__cuda_callable__ double & | operator() (IndexType row, IndexType column) |
| Returns non-constant reference to element at row row and column column.
|
|
__cuda_callable__ const double & | operator() (IndexType row, IndexType column) const |
| Returns constant reference to element at row row and column column.
|
|
DenseMatrixBase & | operator= (const DenseMatrixBase &)=delete |
| Copy-assignment operator.
|
|
DenseMatrixBase & | operator= (DenseMatrixBase &&)=delete |
| Move-assignment operator.
|
|
bool | operator== (const DenseMatrixBase< Real_, Device_, Index_, Organization > &matrix) const |
| Comparison operator with another dense matrix view.
|
|
void | print (std::ostream &str) const |
| Method for printing the matrix to output stream.
|
|
void | reduceAllRows (Fetch &&fetch, const Reduce &reduce, Keep &&keep, const FetchReal &identity) const |
| Method for performing general reduction on ALL matrix rows for constant instances.
|
|
void | reduceRows (IndexType begin, IndexType end, Fetch &&fetch, const Reduce &reduce, Keep &&keep, const FetchReal &identity) const |
| Method for performing general reduction on matrix rows for constant instances.
|
|
void | reduceRows (IndexType begin, IndexType end, Fetch &&fetch, const Reduce &reduce, Keep &&keep, const FetchValue &identity) const |
|
void | sequentialForAllRows (Function &&function) |
| This method calls sequentialForRows for all matrix rows.
|
|
void | sequentialForAllRows (Function &&function) const |
| This method calls sequentialForRows for all matrix rows (for constant instances).
|
|
void | sequentialForRows (IndexType begin, IndexType end, Function &&function) |
| Method for sequential iteration over all matrix rows for non-constant instances.
|
|
void | sequentialForRows (IndexType begin, IndexType end, Function &&function) const |
| Method for sequential iteration over all matrix rows for constant instances.
|
|
__cuda_callable__ void | setElement (IndexType row, IndexType column, const RealType &value) |
| Sets element at given row and column to given value.
|
|
void | setValue (const RealType &v) |
| Sets all matrix elements to value v.
|
|
void | vectorProduct (const InVector &inVector, OutVector &outVector, const RealType &matrixMultiplicator=1.0, const RealType &outVectorMultiplicator=0.0, IndexType begin=0, IndexType end=0) const |
| Computes product of matrix and vector.
|
|
__cuda_callable__ | MatrixBase ()=default |
| Basic constructor with no parameters.
|
|
__cuda_callable__ | MatrixBase (const MatrixBase &view)=default |
| Shallow copy constructor.
|
|
__cuda_callable__ | MatrixBase (IndexType rows, IndexType columns, ValuesViewType values) |
| Constructor with matrix dimensions and matrix elements values.
|
|
__cuda_callable__ | MatrixBase (MatrixBase &&view) noexcept=default |
| Move constructor.
|
|
IndexType | getAllocatedElementsCount () const |
| Tells the number of allocated matrix elements.
|
|
__cuda_callable__ IndexType | getColumns () const |
| Returns number of matrix columns.
|
|
virtual IndexType | getNonzeroElementsCount () const |
| Computes a current number of nonzero matrix elements.
|
|
__cuda_callable__ IndexType | getRows () const |
| Returns number of matrix rows.
|
|
__cuda_callable__ ValuesViewType & | getValues () |
| Returns a reference to a vector with the matrix elements values.
|
|
__cuda_callable__ const ValuesViewType & | getValues () const |
| Returns a constant reference to a vector with the matrix elements values.
|
|
bool | operator!= (const Matrix &matrix) const |
| Comparison operator with another arbitrary matrix view type.
|
|
bool | operator!= (const MatrixT &matrix) const |
|
__cuda_callable__ MatrixBase & | operator= (const MatrixBase &)=delete |
| Copy-assignment operator.
|
|
__cuda_callable__ MatrixBase & | operator= (MatrixBase &&)=delete |
| Move-assignment operator.
|
|
bool | operator== (const Matrix &matrix) const |
| Comparison operator with another arbitrary matrix view type.
|
|
bool | operator== (const MatrixT &matrix) const |
|
template<typename
Real = double, typename Device = Devices::Host, typename Index = int,
ElementsOrganization Organization = Algorithms::Segments::DefaultElementsOrganization< Device >::getOrganization()>
class TNL::Matrices::DenseMatrixView< Real, Device, Index, Organization >
Implementation of dense matrix view.
It serves as an accessor to DenseMatrix for example when passing the matrix to lambda functions. DenseMatrix view can be also created in CUDA kernels.
- Template Parameters
-
See DenseMatrix.