Skip to content

Commit f81d1a9

Browse files
author
cpprefjp-autoupdate
committed
update automatically
1 parent 984236b commit f81d1a9

File tree

3 files changed

+92
-100
lines changed

3 files changed

+92
-100
lines changed

reference/linalg/transposed.html

Lines changed: 30 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -188,8 +188,8 @@
188188

189189
<p class="text-right"><small>
190190
最終更新日時(UTC):
191-
<span itemprop="datePublished" content="2024-03-12T14:39:48">
192-
2024年03月12日 14時39分48秒
191+
<span itemprop="datePublished" content="2024-12-19T07:56:49">
192+
2024年12月19日 07時56分49秒
193193
</span>
194194
<br/>
195195
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -229,6 +229,8 @@ <h2>戻り値</h2>
229229
<ul>
230230
<li><code>Layout</code><code><a href="../mdspan/layout_left.html">layout_left</a></code>のとき、<code><a href="../mdspan/layout_right.html">layout_right</a></code></li>
231231
<li><code>Layout</code><code><a href="../mdspan/layout_right.html">layout_right</a></code>のとき、<code><a href="../mdspan/layout_left.html">layout_left</a></code></li>
232+
<li><code>Layout</code><code><a href="../mdspan/layout_left_padded.html">layout_left_padded&lt;PaddingValue&gt;</a></code>のとき、<code><a href="../mdspan/layout_right_padded.html">layout_right_padded&lt;PaddingValue&gt;</a></code></li>
233+
<li><code>Layout</code><code><a href="../mdspan/layout_right_padded.html">layout_right_padded&lt;PaddingValue&gt;</a></code>のとき、<code><a href="../mdspan/layout_left_padded.html">layout_left_padded&lt;PaddingValue&gt;</a></code></li>
232234
<li><code>Layout</code><code><a href="../mdspan/layout_stride.html">layout_stride</a></code>のとき、<code>layout_stride</code></li>
233235
<li><code>Layout</code><code><a href="layout_blas_packed.html">layout_blas_packed</a>&lt;Triangle, StorageOrder&gt;</code>のとき、<code>layout_blas_packed&lt;OppositeTriangle, OppositeStorageOrder&gt;</code><ul>
234236
<li><code>OppositeTriangle</code><code><a href="../type_traits/conditional.html">conditional_t</a>&lt;<a href="../type_traits/is_same.html">is_same_v</a>&lt;Triangle, upper_triangle_t&gt;, lower_triangle_t, upper_triangle_t&gt;</code></li>
@@ -249,7 +251,31 @@ <h2>戻り値</h2>
249251
</p>
250252
</li>
251253
<li>
252-
<p><code>Layout</code><code><a href="../mdspan/layout_stride.html">layout_stride</a></code>の特殊化であるとき、</p>
254+
<p><code>Layout</code><code><a href="../mdspan/layout_left_padded.html">layout_left_padded&lt;PaddingValue&gt;</a></code>であるとき、</p>
255+
</li>
256+
</ul>
257+
<p><div class="codehilite"><pre><span></span><code><span class="n">R</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">data_handle</span><span class="p">(),</span>
258+
<span class="n">ReturnMapping</span><span class="p">(</span><span class="n">transpose</span><span class="o">-</span><span class="n">extents</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">mapping</span><span class="p">().</span><span class="n">extents</span><span class="p">()),</span> <span class="n">a</span><span class="p">.</span><span class="n">mapping</span><span class="p">().</span><span class="n">stride</span><span class="p">(</span><span class="mi">1</span><span class="p">)),</span>
259+
<span class="n">a</span><span class="p">.</span><span class="n">accessor</span><span class="p">())</span>
260+
</code></pre></div>
261+
</p>
262+
<p><div class="codehilite"><pre><span></span><code><span class="err">* transpose-extents[link layout_transpose/transpose-extents.md]</span>
263+
</code></pre></div>
264+
</p>
265+
<ul>
266+
<li><code>Layout</code><code><a href="../mdspan/layout_right_padded.html">layout_right_padded&lt;PaddingValue&gt;</a></code>であるとき、</li>
267+
</ul>
268+
<p><div class="codehilite"><pre><span></span><code><span class="n">R</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">data_handle</span><span class="p">(),</span>
269+
<span class="n">ReturnMapping</span><span class="p">(</span><span class="n">transpose</span><span class="o">-</span><span class="n">extents</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">mapping</span><span class="p">().</span><span class="n">extents</span><span class="p">()),</span> <span class="n">a</span><span class="p">.</span><span class="n">mapping</span><span class="p">().</span><span class="n">stride</span><span class="p">(</span><span class="mi">0</span><span class="p">)),</span>
270+
<span class="n">a</span><span class="p">.</span><span class="n">accessor</span><span class="p">())</span>
271+
</code></pre></div>
272+
</p>
273+
<p><div class="codehilite"><pre><span></span><code><span class="err">* transpose-extents[link layout_transpose/transpose-extents.md]</span>
274+
</code></pre></div>
275+
</p>
276+
<ul>
277+
<li>
278+
<p><code>Layout</code><code><a href="../mdspan/layout_stride.html">layout_stride</a></code>であるとき、</p>
253279
<p><div class="codehilite"><pre><span></span><code><span class="n">R</span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">data_handle</span><span class="p">(),</span>
254280
<span class="n">ReturnMapping</span><span class="p">(</span><span class="n"><a href="layout_transpose/transpose-extents.html">transpose-extents</a></span><span class="p">(</span><span class="n">a</span><span class="p">.</span><span class="n">mapping</span><span class="p">().</span><span class="n">extents</span><span class="p">()),</span>
255281
<span class="n">array</span><span class="p">{</span><span class="n">a</span><span class="p">.</span><span class="n">mapping</span><span class="p">().</span><span class="n">stride</span><span class="p">(</span><span class="mi">1</span><span class="p">),</span> <span class="n">a</span><span class="p">.</span><span class="n">mapping</span><span class="p">().</span><span class="n">stride</span><span class="p">(</span><span class="mi">0</span><span class="p">)}),</span>
@@ -318,6 +344,7 @@ <h2>参照</h2>
318344
<ul>
319345
<li><a href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p1673r13.html" target="_blank">P1673R13 A free function linear algebra interface based on the BLAS</a></li>
320346
<li><a href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1674r2.html" target="_blank">P1674R2: Evolving a Standard C++ Linear Algebra Library from the BLAS</a></li>
347+
<li><a href="https://open-std.org/jtc1/sc22/wg21/docs/papers/2024/p3222r0.html" target="_blank">P3222R0 Fix C++26 by adding transposed special cases for P2642 layouts</a></li>
321348
</ul></div>
322349

323350
</div>

rss.xml

Lines changed: 61 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,69 @@
22
<feed xmlns="http://www.w3.org/2005/Atom">
33
<title>cpprefjp - C++日本語リファレンス</title>
44
<link href="https://cpprefjp.github.io" />
5-
<updated>2024-12-19T04:52:07.531371</updated>
6-
<id>d35f6480-75bc-406d-8060-0d5dd8f5380b</id>
5+
<updated>2024-12-19T08:00:20.169462</updated>
6+
<id>a2118247-a8b2-44bb-affe-3d8d2bd549c0</id>
77

88

9+
<entry>
10+
<title>transposed -- linalg/tranposed: P3222R0対応(#1382)</title>
11+
<link href="https://cpprefjp.github.io/reference/linalg/transposed.html"/>
12+
<id>abcc16f33101ad97d56f80892f7496f956f3c43b:reference/linalg/transposed.md</id>
13+
<updated>2024-12-19T16:56:49+09:00</updated>
14+
15+
<summary type="html">&lt;pre&gt;&lt;code&gt;diff --git a/reference/linalg/transposed.md b/reference/linalg/transposed.md
16+
index dec56c1af..f03034f6c 100644
17+
--- a/reference/linalg/transposed.md
18+
+++ b/reference/linalg/transposed.md
19+
@@ -30,6 +30,8 @@ namespace std::linalg {
20+
21+
- `Layout`が[`layout_left`](/reference/mdspan/layout_left.md)のとき、[`layout_right`](/reference/mdspan/layout_right.md)
22+
- `Layout`が[`layout_right`](/reference/mdspan/layout_right.md)のとき、[`layout_left`](/reference/mdspan/layout_left.md)
23+
+- `Layout`が[`layout_left_padded&amp;lt;PaddingValue&amp;gt;`](/reference/mdspan/layout_left_padded.md)のとき、[`layout_right_padded&amp;lt;PaddingValue&amp;gt;`](/reference/mdspan/layout_right_padded.md)
24+
+- `Layout`が[`layout_right_padded&amp;lt;PaddingValue&amp;gt;`](/reference/mdspan/layout_right_padded.md)のとき、[`layout_left_padded&amp;lt;PaddingValue&amp;gt;`](/reference/mdspan/layout_left_padded.md)
25+
- `Layout`が[`layout_stride`](/reference/mdspan/layout_stride.md)のとき、`layout_stride`
26+
- `Layout`が[`layout_blas_packed`](layout_blas_packed.md)`&amp;lt;Triangle, StorageOrder&amp;gt;`のとき、`layout_blas_packed&amp;lt;OppositeTriangle, OppositeStorageOrder&amp;gt;`
27+
- `OppositeTriangle`は[`conditional_t`](/reference/type_traits/conditional.md)`&amp;lt;`[`is_same_v`](/reference/type_traits/is_same.md)`&amp;lt;Triangle, upper_triangle_t&amp;gt;, lower_triangle_t, upper_triangle_t&amp;gt;`
28+
@@ -48,7 +50,25 @@ namespace std::linalg {
29+
```
30+
* transpose-extents[link layout_transpose/transpose-extents.md]
31+
32+
-- `Layout`が[`layout_stride`](/reference/mdspan/layout_stride.md)の特殊化であるとき、
33+
+- `Layout`が[`layout_left_padded&amp;lt;PaddingValue&amp;gt;`](/reference/mdspan/layout_left_padded.md)であるとき、
34+
+
35+
+ ```cpp
36+
+ R(a.data_handle(),
37+
+ ReturnMapping(transpose-extents(a.mapping().extents()), a.mapping().stride(1)),
38+
+ a.accessor())
39+
+ ```
40+
+ * transpose-extents[link layout_transpose/transpose-extents.md]
41+
+
42+
+- `Layout`が[`layout_right_padded&amp;lt;PaddingValue&amp;gt;`](/reference/mdspan/layout_right_padded.md)であるとき、
43+
+
44+
+ ```cpp
45+
+ R(a.data_handle(),
46+
+ ReturnMapping(transpose-extents(a.mapping().extents()), a.mapping().stride(0)),
47+
+ a.accessor())
48+
+ ```
49+
+ * transpose-extents[link layout_transpose/transpose-extents.md]
50+
+
51+
+- `Layout`が[`layout_stride`](/reference/mdspan/layout_stride.md)であるとき、
52+
53+
```cpp
54+
R(a.data_handle(),
55+
@@ -122,3 +142,4 @@ int main()
56+
## 参照
57+
- [P1673R13 A free function linear algebra interface based on the BLAS](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p1673r13.html)
58+
- [P1674R2: Evolving a Standard C++ Linear Algebra Library from the BLAS](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1674r2.html)
59+
+- [P3222R0 Fix C++26 by adding transposed special cases for P2642 layouts](https://open-std.org/jtc1/sc22/wg21/docs/papers/2024/p3222r0.html)
60+
&lt;/code&gt;&lt;/pre&gt;</summary>
61+
62+
<author>
63+
<name>yoh</name>
64+
<email>[email protected]</email>
65+
</author>
66+
</entry>
67+
968
<entry>
1069
<title>コンパイラの実装状況 -- C++26: 2024-12 mailingの変更を記載 #1371</title>
1170
<link href="https://cpprefjp.github.io/implementation-status.html"/>
@@ -3507,98 +3566,4 @@ C++ の標準規格は、他にも各国の規格化団体によって国際標
35073566
</author>
35083567
</entry>
35093568

3510-
<entry>
3511-
<title>gcd -- gcd, lcmの実装例 : 仕様に合わせて絶対値をとるよう修正</title>
3512-
<link href="https://cpprefjp.github.io/reference/numeric/gcd.html"/>
3513-
<id>5cc3b9e41da3334156c0090b216b916c8804af7c:reference/numeric/gcd.md</id>
3514-
<updated>2024-12-18T22:28:05+09:00</updated>
3515-
3516-
<summary type="html">&lt;pre&gt;&lt;code&gt;diff --git a/reference/numeric/gcd.md b/reference/numeric/gcd.md
3517-
index 5bf7c51aa..3a5754232 100644
3518-
--- a/reference/numeric/gcd.md
3519-
+++ b/reference/numeric/gcd.md
3520-
@@ -176,14 +176,19 @@ constexpr std::common_type_t&amp;lt;M, N&amp;gt; gcd(M m, N n) {
3521-
if (m == 0 &amp;amp;&amp;amp; n == 0) {
3522-
return 0;
3523-
}
3524-
- while (m != 0 &amp;amp;&amp;amp; n != 0) {
3525-
- if (m &amp;gt; n) {
3526-
- m %= n;
3527-
+
3528-
+ auto mm = abs(m);
3529-
+ auto nn = abs(n);
3530-
+ while (mm != 0 &amp;amp;&amp;amp; nn != 0) {
3531-
+ if (mm &amp;gt; nn) {
3532-
+ mm %= nn;
3533-
}
3534-
else {
3535-
- n %= m;
3536-
+ nn %= mm;
3537-
}
3538-
}
3539-
- return m &amp;lt; n ? n : m;
3540-
+ return mm &amp;lt; nn ? nn : mm;
3541-
}
3542-
```
3543-
+* abs[link /reference/cstdlib/abs.md]
3544-
+
3545-
&lt;/code&gt;&lt;/pre&gt;</summary>
3546-
3547-
<author>
3548-
<name>Akira Takahashi</name>
3549-
<email>[email protected]</email>
3550-
</author>
3551-
</entry>
3552-
3553-
<entry>
3554-
<title>lcm -- gcd, lcmの実装例 : 仕様に合わせて絶対値をとるよう修正</title>
3555-
<link href="https://cpprefjp.github.io/reference/numeric/lcm.html"/>
3556-
<id>5cc3b9e41da3334156c0090b216b916c8804af7c:reference/numeric/lcm.md</id>
3557-
<updated>2024-12-18T22:28:05+09:00</updated>
3558-
3559-
<summary type="html">&lt;pre&gt;&lt;code&gt;diff --git a/reference/numeric/lcm.md b/reference/numeric/lcm.md
3560-
index cdea96876..fbab46a02 100644
3561-
--- a/reference/numeric/lcm.md
3562-
+++ b/reference/numeric/lcm.md
3563-
@@ -178,19 +178,24 @@ constexpr std::common_type_t&amp;lt;M, N&amp;gt; gcd(M m, N n) {
3564-
if (m == 0 &amp;amp;&amp;amp; n == 0) {
3565-
return 0;
3566-
}
3567-
- while (m != 0 &amp;amp;&amp;amp; n != 0) {
3568-
- if (m &amp;gt; n) {
3569-
- m %= n;
3570-
+
3571-
+ auto mm = abs(m);
3572-
+ auto nn = abs(n);
3573-
+ while (mm != 0 &amp;amp;&amp;amp; nn != 0) {
3574-
+ if (mm &amp;gt; nn) {
3575-
+ mm %= nn;
3576-
}
3577-
else {
3578-
- n %= m;
3579-
+ nn %= mm;
3580-
}
3581-
}
3582-
- return m &amp;lt; n ? n : m;
3583-
+ return mm &amp;lt; nn ? nn : mm;
3584-
}
3585-
3586-
template &amp;lt;class M, class N&amp;gt;
3587-
constexpr std::common_type_t&amp;lt;M, N&amp;gt; lcm(M m, N n) {
3588-
- return m / gcd(m, n) * n;
3589-
+ return abs(m) / gcd(m, n) * abs(n);
3590-
}
3591-
-```
3592-
\ No newline at end of file
3593-
+```
3594-
+* abs[link /reference/cstdlib/abs.md]
3595-
+
3596-
&lt;/code&gt;&lt;/pre&gt;</summary>
3597-
3598-
<author>
3599-
<name>Akira Takahashi</name>
3600-
<email>[email protected]</email>
3601-
</author>
3602-
</entry>
3603-
36043569
</feed>

sitemap.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21640,7 +21640,7 @@
2164021640

2164121641
<url>
2164221642
<loc>https://cpprefjp.github.io/reference/linalg/transposed.html</loc>
21643-
<lastmod>2024-12-16T10:43:31+09:00</lastmod>
21643+
<lastmod>2024-12-19T16:56:49+09:00</lastmod>
2164421644
<changefreq>daily</changefreq>
2164521645
<priority>0.7</priority>
2164621646
</url>

0 commit comments

Comments
 (0)