Ginkgo: gko::matrix Namespace Reference

| Ginkgo Generated from branch based on main. Ginkgo version 1.11.0 A numerical linear algebra library targeting many-core architectures

Loading...
Searching...
No Matches
gko::matrix Namespace Reference

The matrix namespace. More...

## Classes
class | Dense
| Dense is a matrix format which explicitly stores all values of the matrix. More...
class | Diagonal
| This class is a utility which efficiently implements the diagonal matrix (a linear operator which scales a vector row wise). More...
class | Csr
| CSR is a matrix format which stores only the nonzero coefficients by compressing each row of the matrix (compressed sparse row format). More...
class | CooBuilder
class | Hybrid
| HYBRID is a matrix format which splits the matrix into ELLPACK and COO format. More...
class | Coo
| COO stores a matrix in the coordinate matrix format. More...
class | Ell
| ELL is a matrix format where stride with explicit zeros is used such that all rows have the same number of stored elements. More...
class | Sellp
| SELL-P is a matrix format similar to ELL format. More...
class | SparsityCsr
| SparsityCsr is a matrix format which stores only the sparsity pattern of a sparse matrix by compressing each row of the matrix (compressed sparse row format). More...
class | Fbcsr
| Fixed-block compressed sparse row storage matrix format. More...
class | CsrBuilder
class | Permutation
| Permutation is a matrix format that represents a permutation matrix, i.e. More...
class | FbcsrBuilder
class | Fft
| This LinOp implements a 1D Fourier matrix using the FFT algorithm. More...
class | Fft2
| This LinOp implements a 2D Fourier matrix using the FFT algorithm. More...
class | Fft3
| This LinOp implements a 3D Fourier matrix using the FFT algorithm. More...
class | Identity
| This class is a utility which efficiently implements the identity matrix (a linear operator which maps each vector to itself). More...
class | IdentityFactory
| This factory is a utility which can be used to generate Identity operators. More...
class | RowGatherer
| RowGatherer is a matrix "format" which stores the gather indices arrays which can be used to gather rows to another matrix. More...
class | ScaledPermutation
| ScaledPermutation is a matrix combining a permutation with scaling factors. More...

## Typedefs
using | mask_type = gko::uint64

## Enumerations
enum class | permute_mode : unsigned { none = 0b000u , rows = 0b001u , columns = 0b010u , symmetric = 0b011u , inverse = 0b100u , inverse_rows = 0b101u , inverse_columns = 0b110u , inverse_symmetric = 0b111u }
| Specifies how a permutation will be applied to a matrix. More...

## Functions
permute_mode | operator| (permute_mode a, permute_mode b)
| Combines two permutation modes.
permute_mode | operator& (permute_mode a, permute_mode b)
| Computes the intersection of two permutation modes.
permute_mode | operator^ (permute_mode a, permute_mode b)
| Computes the symmetric difference of two permutation modes.
std::ostream & | operator<< (std::ostream &stream, permute_mode mode)
| Prints a permutation mode.

## Variables
constexpr int | default_slice_size = 64
constexpr int | default_stride_factor = 1

## Detailed Description

The matrix namespace.

## Enumeration Type Documentation

## ◆ permute_mode

enum class gko::matrix::permute_mode : unsigned
| strong

Specifies how a permutation will be applied to a matrix.

For the effect of the different permutation modes, see the following table.

mode | entry mapping | matrix representation
--- | --- | ---
none |  |
rows |  |
columns |  |
inverse_rows |  |
inverse_columns |  |
symmetric |  |
inverse_symmetric |  |

Enumerator
none | Neither rows nor columns will be permuted.
rows | The rows will be permuted.
columns | The columns will be permuted.
symmetric | The rows and columns will be permuted. This is equivalent to permute_mode::rows | permute_mode::columns.
inverse | The permutation will be inverted before being applied.
inverse_rows | The rows will be permuted using the inverse permutation. This is equivalent to permute_mode::rows | permute_mode::inverse.
inverse_columns | The columns will be permuted using the inverse permutation. This is equivalent to permute_mode::columns | permute_mode::inverse.
inverse_symmetric | The rows and columns will be permuted using the inverse permutation. This is equivalent to permute_mode::symmetric | permute_mode::inverse.