|
using | ConstViewType = DenseMatrixView< std::add_const_t< Real >, Device, Index, Organization > |
| Matrix view type for constant instances.
|
template<typename _Real = Real, typename _Device = Device, typename _Index = Index> |
using | Self = DenseMatrixView< _Real, _Device, _Index > |
| Helper type for getting self type or its modifications.
|
using | ViewType = DenseMatrixView< Real, Device, Index, Organization > |
| Matrix view type.
|
using | ConstRowView |
| Type for accessing immutable matrix row.
|
using | DeviceType |
| The device where the matrix is allocated.
|
using | IndexType |
| The type used for matrix elements indexing.
|
using | RealType |
| The type of matrix elements.
|
using | RowView |
| Type for accessing matrix row.
|
using | ConstValuesViewType |
| Type of constant vector view holding values of matrix elements.
|
using | DeviceType |
| The device where the matrix is allocated.
|
using | IndexType |
| The type used for matrix elements indexing.
|
using | RealType |
| The type of matrix elements.
|
using | RowCapacitiesType |
using | ValuesViewType |
| Type of vector view holding values of matrix elements.
|
|
__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.
|
__cuda_callable__ | DenseMatrixBase ()=default |
| Constructor without parameters.
|
__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) const |
| This method calls forElements for all matrix rows.
|
void | forAllRows (Function &&function) |
| Method for parallel iteration over all matrix rows.
|
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 | 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.
|
IndexType | getNonzeroElementsCount () const |
| Computes a current number of nonzero matrix elements.
|
__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.
|
DenseMatrixBase & | operator= (const DenseMatrixBase &)=delete |
| Copy-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 FetchValue &identity) const |
void | sequentialForAllRows (Function &&function) const |
| This method calls sequentialForRows for all matrix rows (for 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.
|
IndexType | getAllocatedElementsCount () const |
| Tells the number of allocated matrix elements.
|
__cuda_callable__ IndexType | getColumns () const |
| Returns number of matrix columns.
|
__cuda_callable__ IndexType | getRows () const |
| Returns number of matrix rows.
|
__cuda_callable__ const ValuesViewType & | getValues () const |
| Returns a constant reference to a vector with the matrix elements values.
|
__cuda_callable__ MatrixBase & | operator= (const MatrixBase &)=delete |
| Copy-assignment operator.
|
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.