@@ -384,10 +384,8 @@ <h1>Source code for toponetx.classes.cell_complex</h1><div class="highlight"><pr
384
384
385
385
< span class ="k "> try</ span > < span class ="p "> :</ span >
386
386
< 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 >
388
387
< span class ="k "> except</ span > < span class ="ne "> ImportError</ span > < span class ="p "> :</ span >
389
388
< 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 >
391
389
392
390
393
391
< div class ="viewcode-block " id ="CellComplex ">
@@ -2684,12 +2682,17 @@ <h1>Source code for toponetx.classes.cell_complex</h1><div class="highlight"><pr
2684
2682
< div class ="viewcode-block " id ="CellComplex.to_hypergraph ">
2685
2683
< a class ="viewcode-back " href ="../../../api/generated/toponetx.CellComplex.html#toponetx.CellComplex.to_hypergraph "> [docs]</ a >
2686
2684
< 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 "> """Convert this cell complex to a hypergraph.</ span >
2685
+ < span class ="w "> </ span > < span class ="sd "> """Convert this cell complex to a `hypernetx` hypergraph.</ span >
2688
2686
2689
2687
< span class ="sd "> Returns</ span >
2690
2688
< span class ="sd "> -------</ span >
2691
2689
< 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 >
2693
2696
2694
2697
< span class ="sd "> Examples</ span >
2695
2698
< span class ="sd "> --------</ span >
@@ -2699,28 +2702,24 @@ <h1>Source code for toponetx.classes.cell_complex</h1><div class="highlight"><pr
2699
2702
< span class ="sd "> >>> CC.add_cell([5, 6, 7, 8], rank=2)</ span >
2700
2703
< span class ="sd "> >>> CC.to_hypergraph()</ span >
2701
2704
< span class ="sd "> """</ 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 "> "Cannot transform cell complex to hypergraph, `hypernetx` is not installed."</ span >
2710
2708
< 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 "> "CX_to_HG"</ 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
+
2724
2723
< span class ="k "> return</ span > < span class ="n "> HG</ span > </ div >
2725
2724
2726
2725
0 commit comments