From Jason Turner

[linalg.tags.triangle]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp_9fcws_e/{from.md → to.md} +21 -0
tmp/tmp_9fcws_e/{from.md → to.md} RENAMED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### Triangle tags <a id="linalg.tags.triangle">[[linalg.tags.triangle]]</a>
2
+
3
+ ``` cpp
4
+ struct upper_triangle_t {
5
+ explicit upper_triangle_t() = default;
6
+ };
7
+ inline constexpr upper_triangle_t upper_triangle{};
8
+
9
+ struct lower_triangle_t {
10
+ explicit lower_triangle_t() = default;
11
+ };
12
+ inline constexpr lower_triangle_t lower_triangle{};
13
+ ```
14
+
15
+ These tag classes specify whether algorithms and other users of a matrix
16
+ (represented as an `mdspan`) access the upper triangle
17
+ (`upper_triangle_t`) or lower triangle (`lower_triangle_t`) of the
18
+ matrix (see also [[linalg.general]]). This is also subject to the
19
+ restrictions of `implicit_unit_diagonal_t` if that tag is also used as a
20
+ function argument; see below.
21
+