Skip to content

Commit 0e965f2

Browse files
Implement dpnp.ravel_multi_index and dpnp.unravel_index 4c3c994
1 parent 4d2feae commit 0e965f2

File tree

529 files changed

+1621
-1619
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

529 files changed

+1621
-1619
lines changed

pull/2022/.buildinfo

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# Sphinx build info version 1
22
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
3-
config: 97f47f520b309c47777eadbbd83bb353
3+
config: 663bdc6efbc02406ed602cd8360f1a38
44
tags: 645f666f9bcd5a90fca523b33c5a78b7

pull/2022/_modules/dpnp/dpnp_array.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</script>
1313

1414
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
15-
<title>dpnp.dpnp_array &mdash; Data Parallel Extension for NumPy 0.16.0dev0+177.g71a33d0959c documentation</title>
15+
<title>dpnp.dpnp_array &mdash; Data Parallel Extension for NumPy 0.16.0dev0+181.g4c3c994f7c2 documentation</title>
1616
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
1717
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=19f00094" />
1818

@@ -23,7 +23,7 @@
2323

2424
<script src="../../_static/jquery.js?v=5d32c60e"></script>
2525
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
26-
<script src="../../_static/documentation_options.js?v=3deeace5"></script>
26+
<script src="../../_static/documentation_options.js?v=294065b9"></script>
2727
<script src="../../_static/doctools.js?v=9a2dae69"></script>
2828
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
2929
<script src="../../_static/js/theme.js"></script>
@@ -43,7 +43,7 @@
4343
Data Parallel Extension for NumPy
4444
</a>
4545
<div class="version">
46-
0.16.0dev0+177.g71a33d0959c
46+
0.16.0dev0+181.g4c3c994f7c2
4747
</div>
4848
<div role="search">
4949
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">

pull/2022/_modules/dpnp/dpnp_flatiter.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</script>
1313

1414
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
15-
<title>dpnp.dpnp_flatiter &mdash; Data Parallel Extension for NumPy 0.16.0dev0+177.g71a33d0959c documentation</title>
15+
<title>dpnp.dpnp_flatiter &mdash; Data Parallel Extension for NumPy 0.16.0dev0+181.g4c3c994f7c2 documentation</title>
1616
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
1717
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=19f00094" />
1818

@@ -23,7 +23,7 @@
2323

2424
<script src="../../_static/jquery.js?v=5d32c60e"></script>
2525
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
26-
<script src="../../_static/documentation_options.js?v=3deeace5"></script>
26+
<script src="../../_static/documentation_options.js?v=294065b9"></script>
2727
<script src="../../_static/doctools.js?v=9a2dae69"></script>
2828
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
2929
<script src="../../_static/js/theme.js"></script>
@@ -43,7 +43,7 @@
4343
Data Parallel Extension for NumPy
4444
</a>
4545
<div class="version">
46-
0.16.0dev0+177.g71a33d0959c
46+
0.16.0dev0+181.g4c3c994f7c2
4747
</div>
4848
<div role="search">
4949
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">

pull/2022/_modules/dpnp/dpnp_iface.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</script>
1313

1414
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
15-
<title>dpnp.dpnp_iface &mdash; Data Parallel Extension for NumPy 0.16.0dev0+177.g71a33d0959c documentation</title>
15+
<title>dpnp.dpnp_iface &mdash; Data Parallel Extension for NumPy 0.16.0dev0+181.g4c3c994f7c2 documentation</title>
1616
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
1717
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=19f00094" />
1818

@@ -23,7 +23,7 @@
2323

2424
<script src="../../_static/jquery.js?v=5d32c60e"></script>
2525
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
26-
<script src="../../_static/documentation_options.js?v=3deeace5"></script>
26+
<script src="../../_static/documentation_options.js?v=294065b9"></script>
2727
<script src="../../_static/doctools.js?v=9a2dae69"></script>
2828
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
2929
<script src="../../_static/js/theme.js"></script>
@@ -43,7 +43,7 @@
4343
Data Parallel Extension for NumPy
4444
</a>
4545
<div class="version">
46-
0.16.0dev0+177.g71a33d0959c
46+
0.16.0dev0+181.g4c3c994f7c2
4747
</div>
4848
<div role="search">
4949
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">

pull/2022/_modules/dpnp/dpnp_iface_arraycreation.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</script>
1313

1414
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
15-
<title>dpnp.dpnp_iface_arraycreation &mdash; Data Parallel Extension for NumPy 0.16.0dev0+177.g71a33d0959c documentation</title>
15+
<title>dpnp.dpnp_iface_arraycreation &mdash; Data Parallel Extension for NumPy 0.16.0dev0+181.g4c3c994f7c2 documentation</title>
1616
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
1717
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=19f00094" />
1818

@@ -23,7 +23,7 @@
2323

2424
<script src="../../_static/jquery.js?v=5d32c60e"></script>
2525
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
26-
<script src="../../_static/documentation_options.js?v=3deeace5"></script>
26+
<script src="../../_static/documentation_options.js?v=294065b9"></script>
2727
<script src="../../_static/doctools.js?v=9a2dae69"></script>
2828
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
2929
<script src="../../_static/js/theme.js"></script>
@@ -43,7 +43,7 @@
4343
Data Parallel Extension for NumPy
4444
</a>
4545
<div class="version">
46-
0.16.0dev0+177.g71a33d0959c
46+
0.16.0dev0+181.g4c3c994f7c2
4747
</div>
4848
<div role="search">
4949
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">

pull/2022/_modules/dpnp/dpnp_iface_counting.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</script>
1313

1414
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
15-
<title>dpnp.dpnp_iface_counting &mdash; Data Parallel Extension for NumPy 0.16.0dev0+177.g71a33d0959c documentation</title>
15+
<title>dpnp.dpnp_iface_counting &mdash; Data Parallel Extension for NumPy 0.16.0dev0+181.g4c3c994f7c2 documentation</title>
1616
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
1717
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=19f00094" />
1818

@@ -23,7 +23,7 @@
2323

2424
<script src="../../_static/jquery.js?v=5d32c60e"></script>
2525
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
26-
<script src="../../_static/documentation_options.js?v=3deeace5"></script>
26+
<script src="../../_static/documentation_options.js?v=294065b9"></script>
2727
<script src="../../_static/doctools.js?v=9a2dae69"></script>
2828
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
2929
<script src="../../_static/js/theme.js"></script>
@@ -43,7 +43,7 @@
4343
Data Parallel Extension for NumPy
4444
</a>
4545
<div class="version">
46-
0.16.0dev0+177.g71a33d0959c
46+
0.16.0dev0+181.g4c3c994f7c2
4747
</div>
4848
<div role="search">
4949
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">

pull/2022/_modules/dpnp/dpnp_iface_histograms.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</script>
1313

1414
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
15-
<title>dpnp.dpnp_iface_histograms &mdash; Data Parallel Extension for NumPy 0.16.0dev0+177.g71a33d0959c documentation</title>
15+
<title>dpnp.dpnp_iface_histograms &mdash; Data Parallel Extension for NumPy 0.16.0dev0+181.g4c3c994f7c2 documentation</title>
1616
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
1717
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=19f00094" />
1818

@@ -23,7 +23,7 @@
2323

2424
<script src="../../_static/jquery.js?v=5d32c60e"></script>
2525
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
26-
<script src="../../_static/documentation_options.js?v=3deeace5"></script>
26+
<script src="../../_static/documentation_options.js?v=294065b9"></script>
2727
<script src="../../_static/doctools.js?v=9a2dae69"></script>
2828
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
2929
<script src="../../_static/js/theme.js"></script>
@@ -43,7 +43,7 @@
4343
Data Parallel Extension for NumPy
4444
</a>
4545
<div class="version">
46-
0.16.0dev0+177.g71a33d0959c
46+
0.16.0dev0+181.g4c3c994f7c2
4747
</div>
4848
<div role="search">
4949
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">

pull/2022/_modules/dpnp/dpnp_iface_indexing.html

Lines changed: 25 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</script>
1313

1414
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
15-
<title>dpnp.dpnp_iface_indexing &mdash; Data Parallel Extension for NumPy 0.16.0dev0+177.g71a33d0959c documentation</title>
15+
<title>dpnp.dpnp_iface_indexing &mdash; Data Parallel Extension for NumPy 0.16.0dev0+181.g4c3c994f7c2 documentation</title>
1616
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
1717
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=19f00094" />
1818

@@ -23,7 +23,7 @@
2323

2424
<script src="../../_static/jquery.js?v=5d32c60e"></script>
2525
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
26-
<script src="../../_static/documentation_options.js?v=3deeace5"></script>
26+
<script src="../../_static/documentation_options.js?v=294065b9"></script>
2727
<script src="../../_static/doctools.js?v=9a2dae69"></script>
2828
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
2929
<script src="../../_static/js/theme.js"></script>
@@ -43,7 +43,7 @@
4343
Data Parallel Extension for NumPy
4444
</a>
4545
<div class="version">
46-
0.16.0dev0+177.g71a33d0959c
46+
0.16.0dev0+181.g4c3c994f7c2
4747
</div>
4848
<div role="search">
4949
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
@@ -1606,19 +1606,21 @@ <h1>Source code for dpnp.dpnp_iface_indexing</h1><div class="highlight"><pre>
16061606
<span class="sd"> ----------</span>
16071607
<span class="sd"> multi_index : tuple of {dpnp.ndarray, usm_ndarray}</span>
16081608
<span class="sd"> A tuple of integer arrays, one array for each dimension.</span>
1609-
<span class="sd"> dims : tuple of ints</span>
1609+
<span class="sd"> dims : tuple or list of ints</span>
16101610
<span class="sd"> The shape of array into which the indices from ``multi_index`` apply.</span>
16111611
<span class="sd"> mode : {&quot;raise&quot;, &quot;wrap&quot; or &quot;clip&#39;}, optional</span>
1612-
<span class="sd"> Specifies how out-of-bounds indices are handled. Can specify either</span>
1612+
<span class="sd"> Specifies how out-of-bounds indices are handled. Can specify either</span>
16131613
<span class="sd"> one mode or a tuple of modes, one mode per index:</span>
1614-
<span class="sd"> - &quot;raise&quot; -- raise an error (default)</span>
1614+
<span class="sd"> - &quot;raise&quot; -- raise an error</span>
16151615
<span class="sd"> - &quot;wrap&quot; -- wrap around</span>
16161616
<span class="sd"> - &quot;clip&quot; -- clip to the range</span>
16171617
<span class="sd"> In &quot;clip&quot; mode, a negative index which would normally wrap will</span>
16181618
<span class="sd"> clip to 0 instead.</span>
1619+
<span class="sd"> Default: ``&quot;raise&quot;``.</span>
16191620
<span class="sd"> order : {None, &quot;C&quot;, &quot;F&quot;}, optional</span>
16201621
<span class="sd"> Determines whether the multi-index should be viewed as indexing in</span>
16211622
<span class="sd"> row-major (C-style) or column-major (Fortran-style) order.</span>
1623+
<span class="sd"> Default: ``&quot;C&quot;``.</span>
16221624

16231625
<span class="sd"> Returns</span>
16241626
<span class="sd"> -------</span>
@@ -1634,17 +1636,18 @@ <h1>Source code for dpnp.dpnp_iface_indexing</h1><div class="highlight"><pre>
16341636
<span class="sd"> Examples</span>
16351637
<span class="sd"> --------</span>
16361638
<span class="sd"> &gt;&gt;&gt; import dpnp as np</span>
1637-
<span class="sd"> &gt;&gt;&gt; arr = np.array([[3,6,6],[4,5,1]])</span>
1638-
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (7,6))</span>
1639+
<span class="sd"> &gt;&gt;&gt; arr = np.array([[3, 6, 6], [4, 5, 1]])</span>
1640+
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (7, 6))</span>
16391641
<span class="sd"> array([22, 41, 37])</span>
1640-
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (7,6), order=&quot;F&quot;)</span>
1642+
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (7, 6), order=&quot;F&quot;)</span>
16411643
<span class="sd"> array([31, 41, 13])</span>
1642-
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (4,6), mode=&quot;clip&quot;)</span>
1644+
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (4, 6), mode=&quot;clip&quot;)</span>
16431645
<span class="sd"> array([22, 23, 19])</span>
1644-
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (4,4), mode=(&quot;clip&quot;,&quot;wrap&quot;))</span>
1646+
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (4, 4), mode=(&quot;clip&quot;, &quot;wrap&quot;))</span>
16451647
<span class="sd"> array([12, 13, 13])</span>
1646-
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index((3,1,4,1), (6,7,8,9))</span>
1647-
<span class="sd"> 1621</span>
1648+
<span class="sd"> &gt;&gt;&gt; arr = np.array([3, 1, 4, 1])</span>
1649+
<span class="sd"> &gt;&gt;&gt; np.ravel_multi_index(arr, (6, 7, 8, 9))</span>
1650+
<span class="sd"> array(1621)</span>
16481651

16491652
<span class="sd"> &quot;&quot;&quot;</span>
16501653

@@ -1657,11 +1660,8 @@ <h1>Source code for dpnp.dpnp_iface_indexing</h1><div class="highlight"><pre>
16571660
<span class="n">s</span> <span class="o">=</span> <span class="mi">1</span>
16581661
<span class="n">ravel_strides</span> <span class="o">=</span> <span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">*</span> <span class="n">ndim</span>
16591662

1660-
<span class="k">if</span> <span class="n">dpnp</span><span class="o">.</span><span class="n">is_supported_array_type</span><span class="p">(</span><span class="n">multi_index</span><span class="p">):</span>
1661-
<span class="n">usm_type_alloc</span> <span class="o">=</span> <span class="n">multi_index</span><span class="o">.</span><span class="n">usm_type</span>
1662-
<span class="n">sycl_queue_alloc</span> <span class="o">=</span> <span class="n">multi_index</span><span class="o">.</span><span class="n">sycl_queue</span>
1663-
<span class="k">else</span><span class="p">:</span>
1664-
<span class="n">usm_type_alloc</span><span class="p">,</span> <span class="n">sycl_queue_alloc</span> <span class="o">=</span> <span class="n">get_usm_allocations</span><span class="p">(</span><span class="n">multi_index</span><span class="p">)</span>
1663+
<span class="n">multi_index</span> <span class="o">=</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">multi_index</span><span class="p">)</span>
1664+
<span class="n">usm_type_alloc</span><span class="p">,</span> <span class="n">sycl_queue_alloc</span> <span class="o">=</span> <span class="n">get_usm_allocations</span><span class="p">(</span><span class="n">multi_index</span><span class="p">)</span>
16651665

16661666
<span class="n">order</span> <span class="o">=</span> <span class="s2">&quot;C&quot;</span> <span class="k">if</span> <span class="n">order</span> <span class="ow">is</span> <span class="kc">None</span> <span class="k">else</span> <span class="n">order</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span>
16671667
<span class="k">if</span> <span class="n">order</span> <span class="o">==</span> <span class="s2">&quot;C&quot;</span><span class="p">:</span>
@@ -1681,7 +1681,6 @@ <h1>Source code for dpnp.dpnp_iface_indexing</h1><div class="highlight"><pre>
16811681
<span class="n">sycl_queue</span><span class="o">=</span><span class="n">sycl_queue_alloc</span><span class="p">,</span>
16821682
<span class="p">)</span>
16831683
<span class="k">for</span> <span class="n">d</span><span class="p">,</span> <span class="n">stride</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">_mode</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">dims</span><span class="p">,</span> <span class="n">ravel_strides</span><span class="p">,</span> <span class="n">multi_index</span><span class="p">,</span> <span class="n">mode</span><span class="p">):</span>
1684-
<span class="n">dpnp</span><span class="o">.</span><span class="n">check_supported_arrays_type</span><span class="p">(</span><span class="n">idx</span><span class="p">)</span>
16851684
<span class="k">if</span> <span class="ow">not</span> <span class="n">dpnp</span><span class="o">.</span><span class="n">can_cast</span><span class="p">(</span><span class="n">idx</span><span class="p">,</span> <span class="n">dpnp</span><span class="o">.</span><span class="n">int64</span><span class="p">,</span> <span class="s2">&quot;same_kind&quot;</span><span class="p">):</span>
16861685
<span class="k">raise</span> <span class="ne">TypeError</span><span class="p">(</span>
16871686
<span class="sa">f</span><span class="s2">&quot;multi_index entries could not be cast from dtype(</span><span class="si">{</span><span class="n">idx</span><span class="o">.</span><span class="n">dtype</span><span class="si">}</span><span class="s2">)&quot;</span>
@@ -2485,9 +2484,9 @@ <h1>Source code for dpnp.dpnp_iface_indexing</h1><div class="highlight"><pre>
24852484
<span class="sd"> ----------</span>
24862485
<span class="sd"> indices : {dpnp.ndarray, usm_ndarray}</span>
24872486
<span class="sd"> An integer array whose elements are indices into the flattened version</span>
2488-
<span class="sd"> of an array of dimensions shape.</span>
2489-
<span class="sd"> shape : tuple of ints</span>
2490-
<span class="sd"> The shape of the array to use for unraveling indices.</span>
2487+
<span class="sd"> of an array of dimensions ``shape``.</span>
2488+
<span class="sd"> shape : tuple or list of ints</span>
2489+
<span class="sd"> The shape of the array to use for unraveling ``indices``.</span>
24912490
<span class="sd"> order : {None, &quot;C&quot;, &quot;F&quot;}, optional</span>
24922491
<span class="sd"> Determines whether the indices should be viewed as indexing in</span>
24932492
<span class="sd"> row-major (C-style) or column-major (Fortran-style) order.</span>
@@ -2507,13 +2506,13 @@ <h1>Source code for dpnp.dpnp_iface_indexing</h1><div class="highlight"><pre>
25072506
<span class="sd"> Examples</span>
25082507
<span class="sd"> --------</span>
25092508
<span class="sd"> import dpnp as np</span>
2510-
<span class="sd"> &gt;&gt;&gt; np.unravel_index([22, 41, 37], (7,6))</span>
2509+
<span class="sd"> &gt;&gt;&gt; np.unravel_index(np.array([22, 41, 37]), (7, 6))</span>
25112510
<span class="sd"> (array([3, 6, 6]), array([4, 5, 1]))</span>
2512-
<span class="sd"> &gt;&gt;&gt; np.unravel_index([31, 41, 13], (7,6), order=&#39;F&#39;)</span>
2511+
<span class="sd"> &gt;&gt;&gt; np.unravel_index(np.array([31, 41, 13]), (7, 6), order=&quot;F&quot;)</span>
25132512
<span class="sd"> (array([3, 6, 6]), array([4, 5, 1]))</span>
25142513

2515-
<span class="sd"> &gt;&gt;&gt; np.unravel_index(1621, (6,7,8,9))</span>
2516-
<span class="sd"> (3, 1, 4, 1)</span>
2514+
<span class="sd"> &gt;&gt;&gt; np.unravel_index(np.array(1621), (6, 7, 8, 9))</span>
2515+
<span class="sd"> (array(3), array(1), array(4), array(1))</span>
25172516

25182517
<span class="sd"> &quot;&quot;&quot;</span>
25192518

0 commit comments

Comments
 (0)