matrix Namespace Reference#
|
Reference API
|
The matrix namespace. More...
Classes | |
| class | Coo |
| class | CooBuilder |
| class | Csr |
| class | CsrBuilder |
| class | Dense |
| class | Diagonal |
| class | Ell |
| class | Fbcsr |
| Fixed-block compressed sparse row storage matrix format. More... | |
| class | FbcsrBuilder |
| class | Fft |
| class | Fft2 |
| class | Fft3 |
| class | Hybrid |
| class | Identity |
| class | IdentityFactory |
| class | Permutation |
| class | RowGatherer |
| class | ScaledPermutation |
| class | Sellp |
| class | SparsityCsr |
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 } |
Functions | |
| permute_mode | operator| (permute_mode a, permute_mode b) |
| permute_mode | operator& (permute_mode a, permute_mode b) |
| permute_mode | operator^ (permute_mode a, permute_mode b) |
| std::ostream & | operator<< (std::ostream &stream, permute_mode mode) |
Variables | |
| constexpr int | default_slice_size = 64 |
| constexpr int | default_stride_factor = 1 |
Detailed Description
The matrix namespace.
Enumeration Type Documentation
◆ permute_mode
|
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 | \(A'(i, j) = A(i, j)\) | \(A' = A\) |
| rows | \(A'(i, j) = A(p[i], j)\) | \(A' = P A\) |
| columns | \(A'(i, j) = A(i, p[j])\) | \(A' = A P^T\) |
| inverse_rows | \(A'(p[i], j) = A(i, j)\) | \(A' = P^{-1} A\) |
| inverse_columns | \(A'(i, p[j]) = A(i, j)\) | \(A' = A P^{-T}\) |
| symmetric | \(A'(i, j) = A(p[i], p[j])\) | \(A' = P A P^T\) |
| inverse_symmetric | \(A'(p[i], p[j]) = A(i, j)\) | \(A' = P^{-1} A P^{-T}\) |
| 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 |
| inverse | The permutation will be inverted before being applied. |
| inverse_rows | The rows will be permuted using the inverse permutation. This is equivalent to |
| inverse_columns | The columns will be permuted using the inverse permutation. This is equivalent to |
| inverse_symmetric | The rows and columns will be permuted using the inverse permutation. This is equivalent to |
Function Documentation
◆ operator&()
| permute_mode gko::matrix::operator& | ( | permute_mode | a, |
| permute_mode | b | ||
| ) |
Computes the intersection of two permutation modes.
◆ operator<<()
| std::ostream & gko::matrix::operator<< | ( | std::ostream & | stream, |
| permute_mode | mode | ||
| ) |
Prints a permutation mode.
◆ operator^()
| permute_mode gko::matrix::operator^ | ( | permute_mode | a, |
| permute_mode | b | ||
| ) |
Computes the symmetric difference of two permutation modes.
◆ operator|()
| permute_mode gko::matrix::operator| | ( | permute_mode | a, |
| permute_mode | b | ||
| ) |
Combines two permutation modes.
Generated by