multipers 2.2.3__cp312-cp312-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of multipers might be problematic. Click here for more details.

Files changed (189) hide show
  1. multipers/__init__.py +31 -0
  2. multipers/_signed_measure_meta.py +430 -0
  3. multipers/_slicer_meta.py +212 -0
  4. multipers/data/MOL2.py +458 -0
  5. multipers/data/UCR.py +18 -0
  6. multipers/data/__init__.py +1 -0
  7. multipers/data/graphs.py +466 -0
  8. multipers/data/immuno_regions.py +27 -0
  9. multipers/data/minimal_presentation_to_st_bf.py +0 -0
  10. multipers/data/pytorch2simplextree.py +91 -0
  11. multipers/data/shape3d.py +101 -0
  12. multipers/data/synthetic.py +111 -0
  13. multipers/distances.py +198 -0
  14. multipers/filtration_conversions.pxd +229 -0
  15. multipers/filtration_conversions.pxd.tp +84 -0
  16. multipers/filtrations.pxd +224 -0
  17. multipers/function_rips.cp312-win_amd64.pyd +0 -0
  18. multipers/function_rips.pyx +105 -0
  19. multipers/grids.cp312-win_amd64.pyd +0 -0
  20. multipers/grids.pyx +350 -0
  21. multipers/gudhi/Persistence_slices_interface.h +132 -0
  22. multipers/gudhi/Simplex_tree_interface.h +245 -0
  23. multipers/gudhi/Simplex_tree_multi_interface.h +561 -0
  24. multipers/gudhi/cubical_to_boundary.h +59 -0
  25. multipers/gudhi/gudhi/Bitmap_cubical_complex.h +450 -0
  26. multipers/gudhi/gudhi/Bitmap_cubical_complex_base.h +1070 -0
  27. multipers/gudhi/gudhi/Bitmap_cubical_complex_periodic_boundary_conditions_base.h +579 -0
  28. multipers/gudhi/gudhi/Debug_utils.h +45 -0
  29. multipers/gudhi/gudhi/Fields/Multi_field.h +484 -0
  30. multipers/gudhi/gudhi/Fields/Multi_field_operators.h +455 -0
  31. multipers/gudhi/gudhi/Fields/Multi_field_shared.h +450 -0
  32. multipers/gudhi/gudhi/Fields/Multi_field_small.h +531 -0
  33. multipers/gudhi/gudhi/Fields/Multi_field_small_operators.h +507 -0
  34. multipers/gudhi/gudhi/Fields/Multi_field_small_shared.h +531 -0
  35. multipers/gudhi/gudhi/Fields/Z2_field.h +355 -0
  36. multipers/gudhi/gudhi/Fields/Z2_field_operators.h +376 -0
  37. multipers/gudhi/gudhi/Fields/Zp_field.h +420 -0
  38. multipers/gudhi/gudhi/Fields/Zp_field_operators.h +400 -0
  39. multipers/gudhi/gudhi/Fields/Zp_field_shared.h +418 -0
  40. multipers/gudhi/gudhi/Flag_complex_edge_collapser.h +337 -0
  41. multipers/gudhi/gudhi/Matrix.h +2107 -0
  42. multipers/gudhi/gudhi/Multi_critical_filtration.h +1038 -0
  43. multipers/gudhi/gudhi/Multi_persistence/Box.h +171 -0
  44. multipers/gudhi/gudhi/Multi_persistence/Line.h +282 -0
  45. multipers/gudhi/gudhi/Off_reader.h +173 -0
  46. multipers/gudhi/gudhi/One_critical_filtration.h +1431 -0
  47. multipers/gudhi/gudhi/Persistence_matrix/Base_matrix.h +769 -0
  48. multipers/gudhi/gudhi/Persistence_matrix/Base_matrix_with_column_compression.h +686 -0
  49. multipers/gudhi/gudhi/Persistence_matrix/Boundary_matrix.h +842 -0
  50. multipers/gudhi/gudhi/Persistence_matrix/Chain_matrix.h +1350 -0
  51. multipers/gudhi/gudhi/Persistence_matrix/Id_to_index_overlay.h +1105 -0
  52. multipers/gudhi/gudhi/Persistence_matrix/Position_to_index_overlay.h +859 -0
  53. multipers/gudhi/gudhi/Persistence_matrix/RU_matrix.h +910 -0
  54. multipers/gudhi/gudhi/Persistence_matrix/allocators/entry_constructors.h +139 -0
  55. multipers/gudhi/gudhi/Persistence_matrix/base_pairing.h +230 -0
  56. multipers/gudhi/gudhi/Persistence_matrix/base_swap.h +211 -0
  57. multipers/gudhi/gudhi/Persistence_matrix/boundary_cell_position_to_id_mapper.h +60 -0
  58. multipers/gudhi/gudhi/Persistence_matrix/boundary_face_position_to_id_mapper.h +60 -0
  59. multipers/gudhi/gudhi/Persistence_matrix/chain_pairing.h +136 -0
  60. multipers/gudhi/gudhi/Persistence_matrix/chain_rep_cycles.h +190 -0
  61. multipers/gudhi/gudhi/Persistence_matrix/chain_vine_swap.h +616 -0
  62. multipers/gudhi/gudhi/Persistence_matrix/columns/chain_column_extra_properties.h +150 -0
  63. multipers/gudhi/gudhi/Persistence_matrix/columns/column_dimension_holder.h +106 -0
  64. multipers/gudhi/gudhi/Persistence_matrix/columns/column_utilities.h +219 -0
  65. multipers/gudhi/gudhi/Persistence_matrix/columns/entry_types.h +327 -0
  66. multipers/gudhi/gudhi/Persistence_matrix/columns/heap_column.h +1140 -0
  67. multipers/gudhi/gudhi/Persistence_matrix/columns/intrusive_list_column.h +934 -0
  68. multipers/gudhi/gudhi/Persistence_matrix/columns/intrusive_set_column.h +934 -0
  69. multipers/gudhi/gudhi/Persistence_matrix/columns/list_column.h +980 -0
  70. multipers/gudhi/gudhi/Persistence_matrix/columns/naive_vector_column.h +1092 -0
  71. multipers/gudhi/gudhi/Persistence_matrix/columns/row_access.h +192 -0
  72. multipers/gudhi/gudhi/Persistence_matrix/columns/set_column.h +921 -0
  73. multipers/gudhi/gudhi/Persistence_matrix/columns/small_vector_column.h +1093 -0
  74. multipers/gudhi/gudhi/Persistence_matrix/columns/unordered_set_column.h +1012 -0
  75. multipers/gudhi/gudhi/Persistence_matrix/columns/vector_column.h +1244 -0
  76. multipers/gudhi/gudhi/Persistence_matrix/matrix_dimension_holders.h +186 -0
  77. multipers/gudhi/gudhi/Persistence_matrix/matrix_row_access.h +164 -0
  78. multipers/gudhi/gudhi/Persistence_matrix/ru_pairing.h +156 -0
  79. multipers/gudhi/gudhi/Persistence_matrix/ru_rep_cycles.h +376 -0
  80. multipers/gudhi/gudhi/Persistence_matrix/ru_vine_swap.h +540 -0
  81. multipers/gudhi/gudhi/Persistent_cohomology/Field_Zp.h +118 -0
  82. multipers/gudhi/gudhi/Persistent_cohomology/Multi_field.h +173 -0
  83. multipers/gudhi/gudhi/Persistent_cohomology/Persistent_cohomology_column.h +128 -0
  84. multipers/gudhi/gudhi/Persistent_cohomology.h +745 -0
  85. multipers/gudhi/gudhi/Points_off_io.h +171 -0
  86. multipers/gudhi/gudhi/Simple_object_pool.h +69 -0
  87. multipers/gudhi/gudhi/Simplex_tree/Simplex_tree_iterators.h +463 -0
  88. multipers/gudhi/gudhi/Simplex_tree/Simplex_tree_node_explicit_storage.h +83 -0
  89. multipers/gudhi/gudhi/Simplex_tree/Simplex_tree_siblings.h +106 -0
  90. multipers/gudhi/gudhi/Simplex_tree/Simplex_tree_star_simplex_iterators.h +277 -0
  91. multipers/gudhi/gudhi/Simplex_tree/hooks_simplex_base.h +62 -0
  92. multipers/gudhi/gudhi/Simplex_tree/indexing_tag.h +27 -0
  93. multipers/gudhi/gudhi/Simplex_tree/serialization_utils.h +62 -0
  94. multipers/gudhi/gudhi/Simplex_tree/simplex_tree_options.h +157 -0
  95. multipers/gudhi/gudhi/Simplex_tree.h +2794 -0
  96. multipers/gudhi/gudhi/Simplex_tree_multi.h +163 -0
  97. multipers/gudhi/gudhi/distance_functions.h +62 -0
  98. multipers/gudhi/gudhi/graph_simplicial_complex.h +104 -0
  99. multipers/gudhi/gudhi/persistence_interval.h +253 -0
  100. multipers/gudhi/gudhi/persistence_matrix_options.h +170 -0
  101. multipers/gudhi/gudhi/reader_utils.h +367 -0
  102. multipers/gudhi/mma_interface_coh.h +255 -0
  103. multipers/gudhi/mma_interface_h0.h +231 -0
  104. multipers/gudhi/mma_interface_matrix.h +282 -0
  105. multipers/gudhi/naive_merge_tree.h +575 -0
  106. multipers/gudhi/scc_io.h +289 -0
  107. multipers/gudhi/truc.h +888 -0
  108. multipers/io.cp312-win_amd64.pyd +0 -0
  109. multipers/io.pyx +711 -0
  110. multipers/ml/__init__.py +0 -0
  111. multipers/ml/accuracies.py +90 -0
  112. multipers/ml/convolutions.py +520 -0
  113. multipers/ml/invariants_with_persistable.py +79 -0
  114. multipers/ml/kernels.py +176 -0
  115. multipers/ml/mma.py +714 -0
  116. multipers/ml/one.py +472 -0
  117. multipers/ml/point_clouds.py +346 -0
  118. multipers/ml/signed_measures.py +1589 -0
  119. multipers/ml/sliced_wasserstein.py +461 -0
  120. multipers/ml/tools.py +113 -0
  121. multipers/mma_structures.cp312-win_amd64.pyd +0 -0
  122. multipers/mma_structures.pxd +127 -0
  123. multipers/mma_structures.pyx +2746 -0
  124. multipers/mma_structures.pyx.tp +1085 -0
  125. multipers/multi_parameter_rank_invariant/diff_helpers.h +93 -0
  126. multipers/multi_parameter_rank_invariant/euler_characteristic.h +97 -0
  127. multipers/multi_parameter_rank_invariant/function_rips.h +322 -0
  128. multipers/multi_parameter_rank_invariant/hilbert_function.h +769 -0
  129. multipers/multi_parameter_rank_invariant/persistence_slices.h +148 -0
  130. multipers/multi_parameter_rank_invariant/rank_invariant.h +369 -0
  131. multipers/multiparameter_edge_collapse.py +41 -0
  132. multipers/multiparameter_module_approximation/approximation.h +2295 -0
  133. multipers/multiparameter_module_approximation/combinatory.h +129 -0
  134. multipers/multiparameter_module_approximation/debug.h +107 -0
  135. multipers/multiparameter_module_approximation/euler_curves.h +0 -0
  136. multipers/multiparameter_module_approximation/format_python-cpp.h +286 -0
  137. multipers/multiparameter_module_approximation/heap_column.h +238 -0
  138. multipers/multiparameter_module_approximation/images.h +79 -0
  139. multipers/multiparameter_module_approximation/list_column.h +174 -0
  140. multipers/multiparameter_module_approximation/list_column_2.h +232 -0
  141. multipers/multiparameter_module_approximation/ru_matrix.h +347 -0
  142. multipers/multiparameter_module_approximation/set_column.h +135 -0
  143. multipers/multiparameter_module_approximation/structure_higher_dim_barcode.h +36 -0
  144. multipers/multiparameter_module_approximation/unordered_set_column.h +166 -0
  145. multipers/multiparameter_module_approximation/utilities.h +419 -0
  146. multipers/multiparameter_module_approximation/vector_column.h +223 -0
  147. multipers/multiparameter_module_approximation/vector_matrix.h +331 -0
  148. multipers/multiparameter_module_approximation/vineyards.h +464 -0
  149. multipers/multiparameter_module_approximation/vineyards_trajectories.h +649 -0
  150. multipers/multiparameter_module_approximation.cp312-win_amd64.pyd +0 -0
  151. multipers/multiparameter_module_approximation.pyx +217 -0
  152. multipers/pickle.py +53 -0
  153. multipers/plots.py +334 -0
  154. multipers/point_measure.cp312-win_amd64.pyd +0 -0
  155. multipers/point_measure.pyx +320 -0
  156. multipers/simplex_tree_multi.cp312-win_amd64.pyd +0 -0
  157. multipers/simplex_tree_multi.pxd +133 -0
  158. multipers/simplex_tree_multi.pyx +10335 -0
  159. multipers/simplex_tree_multi.pyx.tp +1935 -0
  160. multipers/slicer.cp312-win_amd64.pyd +0 -0
  161. multipers/slicer.pxd +2371 -0
  162. multipers/slicer.pxd.tp +214 -0
  163. multipers/slicer.pyx +15467 -0
  164. multipers/slicer.pyx.tp +914 -0
  165. multipers/tbb12.dll +0 -0
  166. multipers/tbbbind_2_5.dll +0 -0
  167. multipers/tbbmalloc.dll +0 -0
  168. multipers/tbbmalloc_proxy.dll +0 -0
  169. multipers/tensor/tensor.h +672 -0
  170. multipers/tensor.pxd +13 -0
  171. multipers/test.pyx +44 -0
  172. multipers/tests/__init__.py +57 -0
  173. multipers/tests/test_diff_helper.py +73 -0
  174. multipers/tests/test_hilbert_function.py +82 -0
  175. multipers/tests/test_mma.py +83 -0
  176. multipers/tests/test_point_clouds.py +49 -0
  177. multipers/tests/test_python-cpp_conversion.py +82 -0
  178. multipers/tests/test_signed_betti.py +181 -0
  179. multipers/tests/test_signed_measure.py +89 -0
  180. multipers/tests/test_simplextreemulti.py +221 -0
  181. multipers/tests/test_slicer.py +221 -0
  182. multipers/torch/__init__.py +1 -0
  183. multipers/torch/diff_grids.py +217 -0
  184. multipers/torch/rips_density.py +304 -0
  185. multipers-2.2.3.dist-info/LICENSE +21 -0
  186. multipers-2.2.3.dist-info/METADATA +134 -0
  187. multipers-2.2.3.dist-info/RECORD +189 -0
  188. multipers-2.2.3.dist-info/WHEEL +5 -0
  189. multipers-2.2.3.dist-info/top_level.txt +1 -0
@@ -0,0 +1,127 @@
1
+ from libcpp.utility cimport pair
2
+ from libcpp cimport bool
3
+ from libcpp.vector cimport vector
4
+ from libc.stdint cimport uintptr_t,intptr_t
5
+
6
+
7
+
8
+ from multipers.filtrations cimport *
9
+ ctypedef vector[unsigned int] boundary_type
10
+ ctypedef vector[boundary_type] boundary_matrix
11
+ ctypedef vector[int] simplex_type
12
+
13
+ cdef extern from "multiparameter_module_approximation/approximation.h" namespace "Gudhi::multiparameter::mma":
14
+ cdef cppclass Summand[T=*]:
15
+ ctypedef vector[T] corner_type
16
+ ctypedef T value_type
17
+
18
+ ctypedef pair[vector[T],vector[T]] interval
19
+ Summand() except +
20
+ Summand(vector[One_critical_filtration[T]]&, vector[One_critical_filtration[T]]&, int) except + nogil
21
+ T get_interleaving() nogil
22
+ T get_local_weight(const vector[T]&, const T) nogil
23
+ void add_bar(T, T, const vector[T]&, vector[T]&, vector[T]&, const bool, const interval&) nogil
24
+ vector[One_critical_filtration[T]] get_birth_list() nogil
25
+ vector[One_critical_filtration[T]] get_death_list() nogil
26
+ void complete_birth(const T) nogil
27
+ void complete_death(const T) nogil
28
+ int get_dimension() nogil const
29
+ void set_dimension(int) nogil
30
+ bool contains(const vector[T]&) nogil const
31
+ Box[T] get_bounds() nogil const
32
+ void rescale(const vector[T]&) nogil
33
+
34
+
35
+
36
+
37
+
38
+ cdef extern from "multiparameter_module_approximation/utilities.h" namespace "Gudhi::multiparameter::mma":
39
+ cdef cppclass MultiDiagram_point[T=*]:
40
+ ctypedef T value_type
41
+ ctypedef One_critical_filtration[double] filtration_type
42
+ MultiDiagram_point() except + nogil
43
+ MultiDiagram_point(int , T , T ) except + nogil
44
+ const T& get_birth() nogil const
45
+ const T& get_death() nogil const
46
+ int get_dimension() nogil const
47
+
48
+ cdef extern from "multiparameter_module_approximation/utilities.h" namespace "Gudhi::multiparameter::mma":
49
+ cdef cppclass MultiDiagram[T=*, value_type=*]:
50
+ MultiDiagram() except + nogil
51
+ ctypedef pair[vector[T], vector[T]] bar
52
+ ctypedef vector[bar] barcode
53
+ ctypedef vector[float] multipers_bar
54
+ ctypedef vector[multipers_bar] multipers_barcode
55
+
56
+ vector[pair[vector[value_type],vector[value_type]]] get_points(const int) const
57
+ vector[vector[double]] to_multipers(const int) nogil const
58
+ vector[MultiDiagram_point[T]].const_iterator begin()
59
+ vector[MultiDiagram_point[T]].const_iterator end()
60
+ unsigned int size() const
61
+ MultiDiagram_point[T]& at(unsigned int) nogil
62
+
63
+ cdef extern from "multiparameter_module_approximation/utilities.h" namespace "Gudhi::multiparameter::mma":
64
+ cdef cppclass MultiDiagrams[T=*, value_type=*]:
65
+ MultiDiagrams() except + nogil
66
+ ctypedef pair[vector[pair[double, double]], vector[unsigned int]] plot_interface_type
67
+ ctypedef vector[T] corner_type
68
+ ctypedef pair[corner_type, corner_type] bar
69
+ ctypedef vector[bar] barcode
70
+ ctypedef vector[T] multipers_bar
71
+ ctypedef vector[multipers_bar] multipers_barcode
72
+ ctypedef vector[barcode] barcodes
73
+ vector[vector[vector[double]]] to_multipers() nogil const
74
+ MultiDiagram[T, value_type]& at(const unsigned int) nogil
75
+ unsigned int size() nogil const
76
+ vector[MultiDiagram[T, value_type]].const_iterator begin()
77
+ vector[MultiDiagram[T, value_type]].const_iterator end()
78
+ plot_interface_type _for_python_plot(int, double) nogil
79
+ vector[vector[pair[vector[value_type], vector[value_type]]]] get_points() nogil
80
+
81
+ cdef extern from "multiparameter_module_approximation/approximation.h" namespace "Gudhi::multiparameter::mma":
82
+ cdef cppclass Module[T=*]:
83
+ ctypedef vector[vector[T]] image_type
84
+ Module() except + nogil
85
+ void resize(unsigned int) nogil
86
+ Summand[T]& at(unsigned int) nogil
87
+ vector[Summand[T]].iterator begin()
88
+ vector[Summand[T]].iterator end()
89
+ void clean(const bool) nogil
90
+ void fill(const T) nogil
91
+ # vector[image_type] get_vectorization(const T,const T, unsigned int,unsigned int,const Box&)
92
+ # image_type get_vectorization_in_dimension(const int,const T,unsigned int,unsigned int,const Box&)
93
+ void add_summand(Summand[T]) nogil
94
+ void add_summand(Summand[T], int) nogil
95
+ unsigned int size() const
96
+ Box[T] get_box() const
97
+ Box[T] get_bounds() nogil const
98
+ void set_box(Box[T]) nogil
99
+ int get_dimension() const
100
+ vector[pair[vector[vector[T]], vector[vector[T]]]] get_corners_of_dimension(unsigned int) nogil
101
+ image_type get_vectorization_in_dimension(const int, const T, const T, const bool, Box[T]&, unsigned int, unsigned int) nogil
102
+ vector[image_type] get_vectorization(const T, const T, const bool, Box[T], unsigned int, unsigned int) nogil
103
+ MultiDiagram[One_critical_filtration[T], T] get_barcode(Line[T]&, const int, const bool) nogil
104
+ vector[vector[pair[T,T]]] get_barcode2(Line[T]&, const int) nogil
105
+ MultiDiagrams[One_critical_filtration[T],T] get_barcodes(const vector[One_critical_filtration[T]]& , const int, const bool ) nogil
106
+ vector[vector[vector[pair[T,T]]]] get_barcodes2(const vector[Line[T]]& , const int, ) nogil
107
+ image_type get_landscape(const int,const unsigned int,Box[T],const vector[unsigned int]&) nogil
108
+ vector[image_type] get_landscapes(const int,const vector[unsigned int],Box[T],const vector[unsigned int]&) nogil
109
+ vector[int] euler_curve(const vector[One_critical_filtration[T]]&) nogil
110
+ void rescale(vector[T]&, int) nogil
111
+ void translate(vector[T]&, int) nogil
112
+ vector[vector[T]] compute_pixels(vector[vector[T]], vector[int], Box[T], T, T, bool,int) nogil
113
+ vector[vector[pair[vector[vector[int]],vector[vector[int]]]]] to_idx(vector[vector[T]]) nogil
114
+ vector[vector[vector[int]]] to_flat_idx(vector[vector[T]]) nogil
115
+ vector[vector[vector[int]]] compute_distances_idx_to(vector[vector[T]],bool, int) nogil
116
+ vector[vector[T]] compute_distances_to(vector[vector[T]],bool, int) nogil
117
+ vector[T] get_interleavings(Box[T]) nogil
118
+ vector[int] get_degree_splits() nogil
119
+ void compute_distances_to(T*,vector[vector[T]],bool, int) nogil
120
+
121
+
122
+
123
+
124
+
125
+
126
+ cdef inline list[tuple[list[double],list[double]]] _bc2py(vector[pair[vector[double],vector[double]]] bc):
127
+ return bc