|
12 | 12 | </script>
|
13 | 13 |
|
14 | 14 | <meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
15 |
| - <title>dpnp.dpnp_iface_arraycreation — Data Parallel Extension for NumPy 0.13.1dev3+8.g48a554ae0 documentation</title> |
| 15 | + <title>dpnp.dpnp_iface_arraycreation — Data Parallel Extension for NumPy 0.13.1dev3+12.g0e192159a2 documentation</title> |
16 | 16 | <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
|
17 | 17 | <link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=19f00094" />
|
18 | 18 |
|
|
23 | 23 |
|
24 | 24 | <script src="../../_static/jquery.js?v=5d32c60e"></script>
|
25 | 25 | <script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
|
26 |
| - <script src="../../_static/documentation_options.js?v=5436e994"></script> |
| 26 | + <script src="../../_static/documentation_options.js?v=ce66c2d4"></script> |
27 | 27 | <script src="../../_static/doctools.js?v=888ff710"></script>
|
28 | 28 | <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
|
29 | 29 | <script src="../../_static/js/theme.js"></script>
|
|
43 | 43 | Data Parallel Extension for NumPy
|
44 | 44 | </a>
|
45 | 45 | <div class="version">
|
46 |
| - 0.13.1dev3+8.g48a554ae0 |
| 46 | + 0.13.1dev3+12.g0e192159a2 |
47 | 47 | </div>
|
48 | 48 | <div role="search">
|
49 | 49 | <form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
|
@@ -1558,12 +1558,28 @@ <h1>Source code for dpnp.dpnp_iface_arraycreation</h1><div class="highlight"><pr
|
1558 | 1558 |
|
1559 | 1559 | <span class="sd"> For full documentation refer to :obj:`numpy.meshgrid`.</span>
|
1560 | 1560 |
|
1561 |
| -<span class="sd"> Limitations</span> |
1562 |
| -<span class="sd"> -----------</span> |
1563 |
| -<span class="sd"> Each array instance from `xi` is supported as either :class:`dpnp.dpnp.ndarray` or :class:`dpctl.tensor.usm_ndarray`.</span> |
1564 |
| -<span class="sd"> Parameter `copy` is supported only with default value ``True``.</span> |
1565 |
| -<span class="sd"> Parameter `sparse` is supported only with default value ``False``.</span> |
1566 |
| -<span class="sd"> Otherwise the function will be executed sequentially on CPU.</span> |
| 1561 | +<span class="sd"> Parameters</span> |
| 1562 | +<span class="sd"> ----------</span> |
| 1563 | +<span class="sd"> x1, x2,..., xn : {dpnp.ndarray, usm_ndarray}</span> |
| 1564 | +<span class="sd"> 1-D arrays representing the coordinates of a grid.</span> |
| 1565 | +<span class="sd"> indexing : {'xy', 'ij'}, optional</span> |
| 1566 | +<span class="sd"> Cartesian ('xy', default) or matrix ('ij') indexing of output.</span> |
| 1567 | +<span class="sd"> sparse : bool, optional</span> |
| 1568 | +<span class="sd"> If True the shape of the returned coordinate array for dimension `i`</span> |
| 1569 | +<span class="sd"> is reduced from ``(N1, ..., Ni, ... Nn)`` to</span> |
| 1570 | +<span class="sd"> ``(1, ..., 1, Ni, 1, ..., 1)``. Default is False.</span> |
| 1571 | +<span class="sd"> copy : bool, optional</span> |
| 1572 | +<span class="sd"> If False, a view into the original arrays are returned in order to</span> |
| 1573 | +<span class="sd"> conserve memory. Default is True.</span> |
| 1574 | + |
| 1575 | +<span class="sd"> Returns</span> |
| 1576 | +<span class="sd"> -------</span> |
| 1577 | +<span class="sd"> X1, X2,..., XN : tuple of dpnp.ndarrays</span> |
| 1578 | +<span class="sd"> For vectors `x1`, `x2`,..., `xn` with lengths ``Ni=len(xi)``,</span> |
| 1579 | +<span class="sd"> returns ``(N1, N2, N3,..., Nn)`` shaped arrays if indexing='ij'</span> |
| 1580 | +<span class="sd"> or ``(N2, N1, N3,..., Nn)`` shaped arrays if indexing='xy'</span> |
| 1581 | +<span class="sd"> with the elements of `xi` repeated to fill the matrix along</span> |
| 1582 | +<span class="sd"> the first dimension for `x1`, the second for `x2` and so on.</span> |
1567 | 1583 |
|
1568 | 1584 | <span class="sd"> Examples</span>
|
1569 | 1585 | <span class="sd"> --------</span>
|
@@ -1597,18 +1613,32 @@ <h1>Source code for dpnp.dpnp_iface_arraycreation</h1><div class="highlight"><pr
|
1597 | 1613 |
|
1598 | 1614 | <span class="sd"> """</span>
|
1599 | 1615 |
|
1600 |
| - <span class="k">if</span> <span class="ow">not</span> <span class="nb">all</span><span class="p">((</span><span class="nb">isinstance</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="p">(</span><span class="n">dpnp</span><span class="o">.</span><span class="n">ndarray</span><span class="p">,</span> <span class="n">dpt</span><span class="o">.</span><span class="n">usm_ndarray</span><span class="p">))</span> <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="n">xi</span><span class="p">)):</span> |
1601 |
| - <span class="k">pass</span> |
1602 |
| - <span class="k">elif</span> <span class="n">indexing</span> <span class="ow">not</span> <span class="ow">in</span> <span class="p">[</span><span class="s2">"ij"</span><span class="p">,</span> <span class="s2">"xy"</span><span class="p">]:</span> |
1603 |
| - <span class="k">pass</span> |
1604 |
| - <span class="k">elif</span> <span class="n">copy</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">True</span><span class="p">:</span> |
1605 |
| - <span class="k">pass</span> |
1606 |
| - <span class="k">elif</span> <span class="n">sparse</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">False</span><span class="p">:</span> |
1607 |
| - <span class="k">pass</span> |
1608 |
| - <span class="k">else</span><span class="p">:</span> |
1609 |
| - <span class="k">return</span> <span class="n">dpnp_container</span><span class="o">.</span><span class="n">meshgrid</span><span class="p">(</span><span class="o">*</span><span class="n">xi</span><span class="p">,</span> <span class="n">indexing</span><span class="o">=</span><span class="n">indexing</span><span class="p">)</span> |
| 1616 | + <span class="k">if</span> <span class="ow">not</span> <span class="n">dpnp</span><span class="o">.</span><span class="n">check_supported_arrays_type</span><span class="p">(</span><span class="o">*</span><span class="n">xi</span><span class="p">):</span> |
| 1617 | + <span class="k">raise</span> <span class="ne">TypeError</span><span class="p">(</span><span class="s2">"Each input array must be any of supported type"</span><span class="p">)</span> |
| 1618 | + |
| 1619 | + <span class="n">ndim</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">xi</span><span class="p">)</span> |
| 1620 | + |
| 1621 | + <span class="k">if</span> <span class="n">indexing</span> <span class="ow">not</span> <span class="ow">in</span> <span class="p">[</span><span class="s2">"xy"</span><span class="p">,</span> <span class="s2">"ij"</span><span class="p">]:</span> |
| 1622 | + <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span> |
| 1623 | + <span class="s2">"Unrecognized indexing keyword value, expecting 'xy' or 'ij'."</span> |
| 1624 | + <span class="p">)</span> |
| 1625 | + |
| 1626 | + <span class="n">s0</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> |
| 1627 | + <span class="n">output</span> <span class="o">=</span> <span class="p">[</span> |
| 1628 | + <span class="n">dpnp</span><span class="o">.</span><span class="n">reshape</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">s0</span><span class="p">[:</span><span class="n">i</span><span class="p">]</span> <span class="o">+</span> <span class="p">(</span><span class="o">-</span><span class="mi">1</span><span class="p">,)</span> <span class="o">+</span> <span class="n">s0</span><span class="p">[</span><span class="n">i</span> <span class="o">+</span> <span class="mi">1</span> <span class="p">:])</span> <span class="k">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">x</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">xi</span><span class="p">)</span> |
| 1629 | + <span class="p">]</span> |
| 1630 | + |
| 1631 | + <span class="k">if</span> <span class="n">indexing</span> <span class="o">==</span> <span class="s2">"xy"</span> <span class="ow">and</span> <span class="n">ndim</span> <span class="o">></span> <span class="mi">1</span><span class="p">:</span> |
| 1632 | + <span class="n">output</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="n">output</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">reshape</span><span class="p">((</span><span class="mi">1</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="o">+</span> <span class="n">s0</span><span class="p">[</span><span class="mi">2</span><span class="p">:])</span> |
| 1633 | + <span class="n">output</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">output</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">reshape</span><span class="p">((</span><span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span> <span class="o">+</span> <span class="n">s0</span><span class="p">[</span><span class="mi">2</span><span class="p">:])</span> |
| 1634 | + |
| 1635 | + <span class="k">if</span> <span class="ow">not</span> <span class="n">sparse</span><span class="p">:</span> |
| 1636 | + <span class="n">output</span> <span class="o">=</span> <span class="n">dpnp</span><span class="o">.</span><span class="n">broadcast_arrays</span><span class="p">(</span><span class="o">*</span><span class="n">output</span><span class="p">)</span> |
| 1637 | + |
| 1638 | + <span class="k">if</span> <span class="n">copy</span><span class="p">:</span> |
| 1639 | + <span class="n">output</span> <span class="o">=</span> <span class="p">[</span><span class="n">x</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span> <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="n">output</span><span class="p">]</span> |
1610 | 1640 |
|
1611 |
| - <span class="k">return</span> <span class="n">call_origin</span><span class="p">(</span><span class="n">numpy</span><span class="o">.</span><span class="n">meshgrid</span><span class="p">,</span> <span class="n">xi</span><span class="p">,</span> <span class="n">copy</span><span class="p">,</span> <span class="n">sparse</span><span class="p">,</span> <span class="n">indexing</span><span class="p">)</span></div> |
| 1641 | + <span class="k">return</span> <span class="n">output</span></div> |
1612 | 1642 |
|
1613 | 1643 |
|
1614 | 1644 |
|
|
0 commit comments