Skip to content

Commit 8323d9e

Browse files
committed
Deploying to main from @ pyt-team/TopoNetX@4089bd0 🚀
1 parent 39cde87 commit 8323d9e

File tree

8 files changed

+68
-42
lines changed

8 files changed

+68
-42
lines changed
Binary file not shown.
Binary file not shown.

toponetx/.doctrees/environment.pickle

635 Bytes
Binary file not shown.

toponetx/_modules/toponetx/classes/cell_complex.html

Lines changed: 24 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -384,10 +384,8 @@ <h1>Source code for toponetx.classes.cell_complex</h1><div class="highlight"><pr
384384

385385
<span class="k">try</span><span class="p">:</span>
386386
<span class="kn">from</span><span class="w"> </span><span class="nn">hypernetx</span><span class="w"> </span><span class="kn">import</span> <span class="n">Hypergraph</span>
387-
<span class="kn">from</span><span class="w"> </span><span class="nn">hypernetx.classes.entity</span><span class="w"> </span><span class="kn">import</span> <span class="n">Entity</span>
388387
<span class="k">except</span> <span class="ne">ImportError</span><span class="p">:</span>
389388
<span class="n">Hypergraph</span> <span class="o">=</span> <span class="kc">None</span>
390-
<span class="n">Entity</span> <span class="o">=</span> <span class="kc">None</span>
391389

392390

393391
<div class="viewcode-block" id="CellComplex">
@@ -2684,12 +2682,17 @@ <h1>Source code for toponetx.classes.cell_complex</h1><div class="highlight"><pr
26842682
<div class="viewcode-block" id="CellComplex.to_hypergraph">
26852683
<a class="viewcode-back" href="../../../api/generated/toponetx.CellComplex.html#toponetx.CellComplex.to_hypergraph">[docs]</a>
26862684
<span class="k">def</span><span class="w"> </span><span class="nf">to_hypergraph</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
2687-
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Convert this cell complex to a hypergraph.</span>
2685+
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Convert this cell complex to a `hypernetx` hypergraph.</span>
26882686

26892687
<span class="sd"> Returns</span>
26902688
<span class="sd"> -------</span>
26912689
<span class="sd"> Hypergraph</span>
2692-
<span class="sd"> The hyergraph corresponding to this cell complex.</span>
2690+
<span class="sd"> The hypergraph corresponding to this cell complex.</span>
2691+
2692+
<span class="sd"> Raises</span>
2693+
<span class="sd"> ------</span>
2694+
<span class="sd"> RuntimeError</span>
2695+
<span class="sd"> If `hypernetx` is not installed.</span>
26932696

26942697
<span class="sd"> Examples</span>
26952698
<span class="sd"> --------</span>
@@ -2699,28 +2702,24 @@ <h1>Source code for toponetx.classes.cell_complex</h1><div class="highlight"><pr
26992702
<span class="sd"> &gt;&gt;&gt; CC.add_cell([5, 6, 7, 8], rank=2)</span>
27002703
<span class="sd"> &gt;&gt;&gt; CC.to_hypergraph()</span>
27012704
<span class="sd"> &quot;&quot;&quot;</span>
2702-
<span class="kn">from</span><span class="w"> </span><span class="nn">hypernetx.classes.entity</span><span class="w"> </span><span class="kn">import</span> <span class="n">EntitySet</span>
2703-
2704-
<span class="n">cells</span> <span class="o">=</span> <span class="p">[]</span>
2705-
<span class="n">cells</span><span class="o">.</span><span class="n">extend</span><span class="p">(</span>
2706-
<span class="n">Entity</span><span class="p">(</span>
2707-
<span class="nb">str</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">cell</span><span class="o">.</span><span class="n">elements</span><span class="p">)),</span>
2708-
<span class="n">elements</span><span class="o">=</span><span class="n">cell</span><span class="o">.</span><span class="n">elements</span><span class="p">,</span>
2709-
<span class="o">**</span><span class="bp">self</span><span class="o">.</span><span class="n">get_cell_data</span><span class="p">(</span><span class="n">cell</span><span class="p">,</span> <span class="mi">2</span><span class="p">),</span>
2705+
<span class="k">if</span> <span class="n">Hypergraph</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
2706+
<span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span>
2707+
<span class="s2">&quot;Cannot transform cell complex to hypergraph, `hypernetx` is not installed.&quot;</span>
27102708
<span class="p">)</span>
2711-
<span class="k">for</span> <span class="n">cell</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">cells</span>
2712-
<span class="p">)</span>
2713-
<span class="n">cells</span><span class="o">.</span><span class="n">extend</span><span class="p">(</span>
2714-
<span class="n">Entity</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">cell</span><span class="p">)),</span> <span class="n">elements</span><span class="o">=</span><span class="n">cell</span><span class="p">,</span> <span class="o">**</span><span class="bp">self</span><span class="o">.</span><span class="n">get_cell_data</span><span class="p">(</span><span class="n">cell</span><span class="p">,</span> <span class="mi">1</span><span class="p">))</span>
2715-
<span class="k">for</span> <span class="n">cell</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">edges</span>
2716-
<span class="p">)</span>
2717-
<span class="n">E</span> <span class="o">=</span> <span class="n">EntitySet</span><span class="p">(</span><span class="s2">&quot;CX_to_HG&quot;</span><span class="p">,</span> <span class="n">elements</span><span class="o">=</span><span class="n">cells</span><span class="p">)</span>
2718-
<span class="n">HG</span> <span class="o">=</span> <span class="n">Hypergraph</span><span class="p">(</span><span class="n">E</span><span class="p">)</span>
2719-
<span class="n">nodes</span> <span class="o">=</span> <span class="p">[</span>
2720-
<span class="n">Entity</span><span class="p">(</span><span class="n">cell</span><span class="p">,</span> <span class="n">elements</span><span class="o">=</span><span class="p">[],</span> <span class="o">**</span><span class="bp">self</span><span class="o">.</span><span class="n">get_cell_data</span><span class="p">(</span><span class="n">cell</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span>
2721-
<span class="k">for</span> <span class="n">cell</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">nodes</span>
2722-
<span class="p">]</span>
2723-
<span class="n">HG</span><span class="o">.</span><span class="n">_add_nodes_from</span><span class="p">(</span><span class="n">nodes</span><span class="p">)</span>
2709+
2710+
<span class="n">edges</span> <span class="o">=</span> <span class="p">{}</span>
2711+
<span class="n">edge_properties</span> <span class="o">=</span> <span class="p">{}</span>
2712+
2713+
<span class="k">for</span> <span class="n">edge</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">edges</span><span class="p">:</span>
2714+
<span class="n">edges</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">edge</span><span class="p">))]</span> <span class="o">=</span> <span class="n">edge</span>
2715+
<span class="n">edge_properties</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">edge</span><span class="p">))]</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_cell_data</span><span class="p">(</span><span class="n">edge</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
2716+
<span class="k">for</span> <span class="n">cell</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">cells</span><span class="p">:</span>
2717+
<span class="n">edges</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">cell</span><span class="p">))]</span> <span class="o">=</span> <span class="n">cell</span><span class="o">.</span><span class="n">elements</span>
2718+
<span class="n">edge_properties</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">cell</span><span class="p">))]</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_cell_data</span><span class="p">(</span><span class="n">cell</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span>
2719+
2720+
<span class="n">HG</span> <span class="o">=</span> <span class="n">Hypergraph</span><span class="p">(</span><span class="n">edges</span><span class="p">,</span> <span class="n">edge_properties</span><span class="o">=</span><span class="n">edge_properties</span><span class="p">)</span>
2721+
<span class="n">HG</span><span class="o">.</span><span class="n">add_nodes_from</span><span class="p">([(</span><span class="n">node</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_cell_data</span><span class="p">(</span><span class="n">node</span><span class="p">,</span> <span class="mi">0</span><span class="p">))</span> <span class="k">for</span> <span class="n">node</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">nodes</span><span class="p">])</span>
2722+
27242723
<span class="k">return</span> <span class="n">HG</span></div>
27252724

27262725

toponetx/_modules/toponetx/classes/simplicial_complex.html

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2225,14 +2225,19 @@ <h1>Source code for toponetx.classes.simplicial_complex</h1><div class="highligh
22252225

22262226
<div class="viewcode-block" id="SimplicialComplex.to_hypergraph">
22272227
<a class="viewcode-back" href="../../../api/generated/toponetx.SimplicialComplex.html#toponetx.SimplicialComplex.to_hypergraph">[docs]</a>
2228-
<span class="k">def</span><span class="w"> </span><span class="nf">to_hypergraph</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Hypergraph</span><span class="p">:</span>
2229-
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Convert a simplicial complex to a hypergraph.</span>
2228+
<span class="k">def</span><span class="w"> </span><span class="nf">to_hypergraph</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
2229+
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Convert a simplicial complex to a `hypernetx` hypergraph.</span>
22302230

22312231
<span class="sd"> Returns</span>
22322232
<span class="sd"> -------</span>
22332233
<span class="sd"> Hypergraph</span>
22342234
<span class="sd"> The hypergraph corresponding to this simplicial complex.</span>
22352235

2236+
<span class="sd"> Raises</span>
2237+
<span class="sd"> ------</span>
2238+
<span class="sd"> RuntimeError</span>
2239+
<span class="sd"> If `hypernetx` is not installed</span>
2240+
22362241
<span class="sd"> Examples</span>
22372242
<span class="sd"> --------</span>
22382243
<span class="sd"> &gt;&gt;&gt; c1 = tnx.Simplex((1, 2, 3))</span>
@@ -2242,12 +2247,22 @@ <h1>Source code for toponetx.classes.simplicial_complex</h1><div class="highligh
22422247
<span class="sd"> &gt;&gt;&gt; SC.to_hypergraph()</span>
22432248
<span class="sd"> Hypergraph({&#39;e0&#39;: [1, 2], &#39;e1&#39;: [1, 3], &#39;e2&#39;: [1, 4], &#39;e3&#39;: [2, 3], &#39;e4&#39;: [2, 4], &#39;e5&#39;: [2, 5], &#39;e6&#39;: [1, 2, 3], &#39;e7&#39;: [1, 2, 4]},name=)</span>
22442249
<span class="sd"> &quot;&quot;&quot;</span>
2245-
<span class="n">hyperedges</span> <span class="o">=</span> <span class="p">[</span>
2246-
<span class="nb">list</span><span class="p">(</span><span class="n">cell</span><span class="p">)</span>
2247-
<span class="k">for</span> <span class="n">rank</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">dim</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
2248-
<span class="k">for</span> <span class="n">cell</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">skeleton</span><span class="p">(</span><span class="n">rank</span><span class="p">)</span>
2249-
<span class="p">]</span>
2250-
<span class="k">return</span> <span class="n">Hypergraph</span><span class="p">(</span><span class="n">hyperedges</span><span class="p">,</span> <span class="n">static</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span></div>
2250+
<span class="k">if</span> <span class="n">Hypergraph</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
2251+
<span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span>
2252+
<span class="s2">&quot;Cannot transform simplicial complex to hypergraph, `hypernetx` is not installed.&quot;</span>
2253+
<span class="p">)</span>
2254+
2255+
<span class="n">edges</span> <span class="o">=</span> <span class="p">{}</span>
2256+
<span class="n">edge_properties</span> <span class="o">=</span> <span class="p">{}</span>
2257+
2258+
<span class="k">for</span> <span class="n">simplex</span> <span class="ow">in</span> <span class="nb">filter</span><span class="p">(</span><span class="k">lambda</span> <span class="n">s</span><span class="p">:</span> <span class="nb">len</span><span class="p">(</span><span class="n">s</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">simplices</span><span class="p">):</span>
2259+
<span class="n">edges</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">simplex</span><span class="p">))]</span> <span class="o">=</span> <span class="n">simplex</span>
2260+
<span class="n">edge_properties</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">simplex</span><span class="p">))]</span> <span class="o">=</span> <span class="bp">self</span><span class="p">[</span><span class="n">simplex</span><span class="p">]</span>
2261+
2262+
<span class="n">HG</span> <span class="o">=</span> <span class="n">Hypergraph</span><span class="p">(</span><span class="n">edges</span><span class="p">,</span> <span class="n">edge_properties</span><span class="o">=</span><span class="n">edge_properties</span><span class="p">)</span>
2263+
<span class="n">HG</span><span class="o">.</span><span class="n">add_nodes_from</span><span class="p">([(</span><span class="nb">next</span><span class="p">(</span><span class="nb">iter</span><span class="p">(</span><span class="n">node</span><span class="p">)),</span> <span class="bp">self</span><span class="p">[</span><span class="n">node</span><span class="p">])</span> <span class="k">for</span> <span class="n">node</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">nodes</span><span class="p">])</span>
2264+
2265+
<span class="k">return</span> <span class="n">HG</span></div>
22512266

22522267

22532268
<div class="viewcode-block" id="SimplicialComplex.to_combinatorial_complex">

toponetx/api/generated/toponetx.CellComplex.html

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -628,7 +628,7 @@ <h1>toponetx.CellComplex<a class="headerlink" href="#toponetx-cellcomplex" title
628628
<td><p>Create Hasse graph of self.</p></td>
629629
</tr>
630630
<tr class="row-odd"><td><p><a class="reference internal" href="#toponetx.CellComplex.to_hypergraph" title="toponetx.CellComplex.to_hypergraph"><code class="xref py py-obj docutils literal notranslate"><span class="pre">to_hypergraph</span></code></a>()</p></td>
631-
<td><p>Convert this cell complex to a hypergraph.</p></td>
631+
<td><p>Convert this cell complex to a <cite>hypernetx</cite> hypergraph.</p></td>
632632
</tr>
633633
<tr class="row-even"><td><p><a class="reference internal" href="#toponetx.CellComplex.up_laplacian_matrix" title="toponetx.CellComplex.up_laplacian_matrix"><code class="xref py py-obj docutils literal notranslate"><span class="pre">up_laplacian_matrix</span></code></a>(rank[, signed, weight, ...])</p></td>
634634
<td><p>Compute up laplacian.</p></td>
@@ -858,7 +858,7 @@ <h1>toponetx.CellComplex<a class="headerlink" href="#toponetx-cellcomplex" title
858858
<td><p>Create Hasse graph of self.</p></td>
859859
</tr>
860860
<tr class="row-even"><td><p><a class="reference internal" href="#toponetx.CellComplex.to_hypergraph" title="toponetx.CellComplex.to_hypergraph"><code class="xref py py-obj docutils literal notranslate"><span class="pre">to_hypergraph</span></code></a>()</p></td>
861-
<td><p>Convert this cell complex to a hypergraph.</p></td>
861+
<td><p>Convert this cell complex to a <cite>hypernetx</cite> hypergraph.</p></td>
862862
</tr>
863863
<tr class="row-odd"><td><p><a class="reference internal" href="#toponetx.CellComplex.up_laplacian_matrix" title="toponetx.CellComplex.up_laplacian_matrix"><code class="xref py py-obj docutils literal notranslate"><span class="pre">up_laplacian_matrix</span></code></a>(rank[, signed, weight, ...])</p></td>
864864
<td><p>Compute up laplacian.</p></td>
@@ -2480,11 +2480,17 @@ <h1>toponetx.CellComplex<a class="headerlink" href="#toponetx-cellcomplex" title
24802480
<dl class="py method">
24812481
<dt class="sig sig-object py" id="toponetx.CellComplex.to_hypergraph">
24822482
<span class="sig-name descname"><span class="pre">to_hypergraph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../../_modules/toponetx/classes/cell_complex.html#CellComplex.to_hypergraph"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#toponetx.CellComplex.to_hypergraph" title="Link to this definition">#</a></dt>
2483-
<dd><p>Convert this cell complex to a hypergraph.</p>
2483+
<dd><p>Convert this cell complex to a <cite>hypernetx</cite> hypergraph.</p>
24842484
<dl class="field-list simple">
24852485
<dt class="field-odd">Returns<span class="colon">:</span></dt>
24862486
<dd class="field-odd"><dl class="simple">
2487-
<dt>Hypergraph</dt><dd><p>The hyergraph corresponding to this cell complex.</p>
2487+
<dt>Hypergraph</dt><dd><p>The hypergraph corresponding to this cell complex.</p>
2488+
</dd>
2489+
</dl>
2490+
</dd>
2491+
<dt class="field-even">Raises<span class="colon">:</span></dt>
2492+
<dd class="field-even"><dl class="simple">
2493+
<dt>RuntimeError</dt><dd><p>If <cite>hypernetx</cite> is not installed.</p>
24882494
</dd>
24892495
</dl>
24902496
</dd>

0 commit comments

Comments
 (0)