multipers 2.3.0__cp310-cp310-win_amd64.whl → 2.3.1__cp310-cp310-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 (37) hide show
  1. multipers/{ml/convolutions.py → filtrations/density.py} +45 -2
  2. multipers/filtrations/filtrations.py +2 -2
  3. multipers/function_rips.cp310-win_amd64.pyd +0 -0
  4. multipers/grids.cp310-win_amd64.pyd +0 -0
  5. multipers/gudhi/Simplex_tree_multi_interface.h +1 -1
  6. multipers/gudhi/gudhi/One_critical_filtration.h +2 -1
  7. multipers/gudhi/mma_interface_h0.h +1 -1
  8. multipers/gudhi/mma_interface_matrix.h +8 -1
  9. multipers/gudhi/naive_merge_tree.h +1 -1
  10. multipers/gudhi/truc.h +82 -15
  11. multipers/io.cp310-win_amd64.pyd +0 -0
  12. multipers/io.pyx +14 -11
  13. multipers/ml/point_clouds.py +2 -2
  14. multipers/ml/signed_measures.py +3 -3
  15. multipers/mma_structures.cp310-win_amd64.pyd +0 -0
  16. multipers/mma_structures.pyx +0 -4
  17. multipers/mma_structures.pyx.tp +0 -2
  18. multipers/multiparameter_module_approximation/approximation.h +4 -2
  19. multipers/multiparameter_module_approximation.cp310-win_amd64.pyd +0 -0
  20. multipers/multiparameter_module_approximation.pyx +3 -1
  21. multipers/plots.py +1 -1
  22. multipers/point_measure.cp310-win_amd64.pyd +0 -0
  23. multipers/simplex_tree_multi.cp310-win_amd64.pyd +0 -0
  24. multipers/simplex_tree_multi.pyx +97 -33
  25. multipers/simplex_tree_multi.pyx.tp +13 -5
  26. multipers/slicer.cp310-win_amd64.pyd +0 -0
  27. multipers/slicer.pxd +220 -100
  28. multipers/slicer.pxd.tp +5 -2
  29. multipers/slicer.pyx +484 -204
  30. multipers/slicer.pyx.tp +16 -9
  31. multipers/tensor/tensor.h +1 -1
  32. multipers/torch/rips_density.py +1 -1
  33. {multipers-2.3.0.dist-info → multipers-2.3.1.dist-info}/METADATA +1 -1
  34. {multipers-2.3.0.dist-info → multipers-2.3.1.dist-info}/RECORD +37 -37
  35. {multipers-2.3.0.dist-info → multipers-2.3.1.dist-info}/WHEEL +1 -1
  36. {multipers-2.3.0.dist-info → multipers-2.3.1.dist-info}/LICENSE +0 -0
  37. {multipers-2.3.0.dist-info → multipers-2.3.1.dist-info}/top_level.txt +0 -0
multipers/slicer.pxd CHANGED
@@ -34,6 +34,9 @@ cdef extern from "Persistence_slices_interface.h":
34
34
  C_KSlicer_Matrix0_vine_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int32_t]]&)
35
35
 
36
36
  C_KSlicer_Matrix0_vine_i32& operator=(const C_KSlicer_Matrix0_vine_i32&)
37
+
38
+ C_KSlicer_Matrix0_vine_i32 colexical_rearange() except + nogil
39
+
37
40
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
38
41
  void push_to(const Line[int32_t]&) nogil
39
42
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -61,8 +64,8 @@ cdef extern from "Persistence_slices_interface.h":
61
64
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
62
65
 
63
66
 
64
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
65
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
67
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
68
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
66
69
 
67
70
  #------------------------------------------------------------------------------
68
71
  cdef extern from "Persistence_slices_interface.h":
@@ -74,6 +77,9 @@ cdef extern from "Persistence_slices_interface.h":
74
77
  C_KSlicer_Matrix1_vine_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int32_t]]&)
75
78
 
76
79
  C_KSlicer_Matrix1_vine_i32& operator=(const C_KSlicer_Matrix1_vine_i32&)
80
+
81
+ C_KSlicer_Matrix1_vine_i32 colexical_rearange() except + nogil
82
+
77
83
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
78
84
  void push_to(const Line[int32_t]&) nogil
79
85
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -101,8 +107,8 @@ cdef extern from "Persistence_slices_interface.h":
101
107
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
102
108
 
103
109
 
104
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
105
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
110
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
111
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
106
112
 
107
113
  #------------------------------------------------------------------------------
108
114
  cdef extern from "Persistence_slices_interface.h":
@@ -114,6 +120,9 @@ cdef extern from "Persistence_slices_interface.h":
114
120
  C_KSlicer_Matrix0_vine_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int64_t]]&)
115
121
 
116
122
  C_KSlicer_Matrix0_vine_i64& operator=(const C_KSlicer_Matrix0_vine_i64&)
123
+
124
+ C_KSlicer_Matrix0_vine_i64 colexical_rearange() except + nogil
125
+
117
126
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
118
127
  void push_to(const Line[int64_t]&) nogil
119
128
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -141,8 +150,8 @@ cdef extern from "Persistence_slices_interface.h":
141
150
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
142
151
 
143
152
 
144
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
145
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
153
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
154
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
146
155
 
147
156
  #------------------------------------------------------------------------------
148
157
  cdef extern from "Persistence_slices_interface.h":
@@ -154,6 +163,9 @@ cdef extern from "Persistence_slices_interface.h":
154
163
  C_KSlicer_Matrix1_vine_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int64_t]]&)
155
164
 
156
165
  C_KSlicer_Matrix1_vine_i64& operator=(const C_KSlicer_Matrix1_vine_i64&)
166
+
167
+ C_KSlicer_Matrix1_vine_i64 colexical_rearange() except + nogil
168
+
157
169
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
158
170
  void push_to(const Line[int64_t]&) nogil
159
171
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -181,8 +193,8 @@ cdef extern from "Persistence_slices_interface.h":
181
193
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
182
194
 
183
195
 
184
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
185
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
196
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
197
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
186
198
 
187
199
  #------------------------------------------------------------------------------
188
200
  cdef extern from "Persistence_slices_interface.h":
@@ -194,6 +206,9 @@ cdef extern from "Persistence_slices_interface.h":
194
206
  C_KSlicer_Matrix0_vine_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[float]]&)
195
207
 
196
208
  C_KSlicer_Matrix0_vine_f32& operator=(const C_KSlicer_Matrix0_vine_f32&)
209
+
210
+ C_KSlicer_Matrix0_vine_f32 colexical_rearange() except + nogil
211
+
197
212
  vector[vector[pair[float, float]]] get_barcode() nogil
198
213
  void push_to(const Line[float]&) nogil
199
214
  void set_one_filtration(const vector[float]&) nogil
@@ -221,8 +236,8 @@ cdef extern from "Persistence_slices_interface.h":
221
236
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
222
237
 
223
238
 
224
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
225
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
239
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
240
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
226
241
 
227
242
  #------------------------------------------------------------------------------
228
243
  cdef extern from "Persistence_slices_interface.h":
@@ -234,6 +249,9 @@ cdef extern from "Persistence_slices_interface.h":
234
249
  C_KSlicer_Matrix1_vine_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[float]]&)
235
250
 
236
251
  C_KSlicer_Matrix1_vine_f32& operator=(const C_KSlicer_Matrix1_vine_f32&)
252
+
253
+ C_KSlicer_Matrix1_vine_f32 colexical_rearange() except + nogil
254
+
237
255
  vector[vector[pair[float, float]]] get_barcode() nogil
238
256
  void push_to(const Line[float]&) nogil
239
257
  void set_one_filtration(const vector[float]&) nogil
@@ -261,8 +279,8 @@ cdef extern from "Persistence_slices_interface.h":
261
279
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
262
280
 
263
281
 
264
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
265
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
282
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
283
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
266
284
 
267
285
  #------------------------------------------------------------------------------
268
286
  cdef extern from "Persistence_slices_interface.h":
@@ -274,6 +292,9 @@ cdef extern from "Persistence_slices_interface.h":
274
292
  C_KSlicer_Matrix0_vine_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[double]]&)
275
293
 
276
294
  C_KSlicer_Matrix0_vine_f64& operator=(const C_KSlicer_Matrix0_vine_f64&)
295
+
296
+ C_KSlicer_Matrix0_vine_f64 colexical_rearange() except + nogil
297
+
277
298
  vector[vector[pair[double, double]]] get_barcode() nogil
278
299
  void push_to(const Line[double]&) nogil
279
300
  void set_one_filtration(const vector[double]&) nogil
@@ -301,8 +322,8 @@ cdef extern from "Persistence_slices_interface.h":
301
322
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
302
323
 
303
324
 
304
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
305
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
325
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
326
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
306
327
 
307
328
  #------------------------------------------------------------------------------
308
329
  cdef extern from "Persistence_slices_interface.h":
@@ -314,6 +335,9 @@ cdef extern from "Persistence_slices_interface.h":
314
335
  C_KSlicer_Matrix1_vine_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[double]]&)
315
336
 
316
337
  C_KSlicer_Matrix1_vine_f64& operator=(const C_KSlicer_Matrix1_vine_f64&)
338
+
339
+ C_KSlicer_Matrix1_vine_f64 colexical_rearange() except + nogil
340
+
317
341
  vector[vector[pair[double, double]]] get_barcode() nogil
318
342
  void push_to(const Line[double]&) nogil
319
343
  void set_one_filtration(const vector[double]&) nogil
@@ -341,8 +365,8 @@ cdef extern from "Persistence_slices_interface.h":
341
365
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
342
366
 
343
367
 
344
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
345
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
368
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
369
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
346
370
 
347
371
  #------------------------------------------------------------------------------
348
372
  cdef extern from "Persistence_slices_interface.h":
@@ -354,6 +378,9 @@ cdef extern from "Persistence_slices_interface.h":
354
378
  C_Slicer_Matrix0_vine_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int32_t]]&)
355
379
 
356
380
  C_Slicer_Matrix0_vine_i32& operator=(const C_Slicer_Matrix0_vine_i32&)
381
+
382
+ C_Slicer_Matrix0_vine_i32 colexical_rearange() except + nogil
383
+
357
384
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
358
385
  void push_to(const Line[int32_t]&) nogil
359
386
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -381,8 +408,8 @@ cdef extern from "Persistence_slices_interface.h":
381
408
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
382
409
 
383
410
 
384
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
385
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
411
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
412
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
386
413
 
387
414
  #------------------------------------------------------------------------------
388
415
  cdef extern from "Persistence_slices_interface.h":
@@ -394,6 +421,9 @@ cdef extern from "Persistence_slices_interface.h":
394
421
  C_Slicer_Matrix1_vine_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int32_t]]&)
395
422
 
396
423
  C_Slicer_Matrix1_vine_i32& operator=(const C_Slicer_Matrix1_vine_i32&)
424
+
425
+ C_Slicer_Matrix1_vine_i32 colexical_rearange() except + nogil
426
+
397
427
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
398
428
  void push_to(const Line[int32_t]&) nogil
399
429
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -421,8 +451,8 @@ cdef extern from "Persistence_slices_interface.h":
421
451
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
422
452
 
423
453
 
424
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
425
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
454
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
455
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
426
456
 
427
457
  #------------------------------------------------------------------------------
428
458
  cdef extern from "Persistence_slices_interface.h":
@@ -434,6 +464,9 @@ cdef extern from "Persistence_slices_interface.h":
434
464
  C_Slicer_Matrix0_vine_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int64_t]]&)
435
465
 
436
466
  C_Slicer_Matrix0_vine_i64& operator=(const C_Slicer_Matrix0_vine_i64&)
467
+
468
+ C_Slicer_Matrix0_vine_i64 colexical_rearange() except + nogil
469
+
437
470
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
438
471
  void push_to(const Line[int64_t]&) nogil
439
472
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -461,8 +494,8 @@ cdef extern from "Persistence_slices_interface.h":
461
494
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
462
495
 
463
496
 
464
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
465
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
497
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
498
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
466
499
 
467
500
  #------------------------------------------------------------------------------
468
501
  cdef extern from "Persistence_slices_interface.h":
@@ -474,6 +507,9 @@ cdef extern from "Persistence_slices_interface.h":
474
507
  C_Slicer_Matrix1_vine_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int64_t]]&)
475
508
 
476
509
  C_Slicer_Matrix1_vine_i64& operator=(const C_Slicer_Matrix1_vine_i64&)
510
+
511
+ C_Slicer_Matrix1_vine_i64 colexical_rearange() except + nogil
512
+
477
513
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
478
514
  void push_to(const Line[int64_t]&) nogil
479
515
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -501,8 +537,8 @@ cdef extern from "Persistence_slices_interface.h":
501
537
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
502
538
 
503
539
 
504
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
505
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
540
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
541
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
506
542
 
507
543
  #------------------------------------------------------------------------------
508
544
  cdef extern from "Persistence_slices_interface.h":
@@ -514,6 +550,9 @@ cdef extern from "Persistence_slices_interface.h":
514
550
  C_Slicer_Matrix0_vine_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[float]]&)
515
551
 
516
552
  C_Slicer_Matrix0_vine_f32& operator=(const C_Slicer_Matrix0_vine_f32&)
553
+
554
+ C_Slicer_Matrix0_vine_f32 colexical_rearange() except + nogil
555
+
517
556
  vector[vector[pair[float, float]]] get_barcode() nogil
518
557
  void push_to(const Line[float]&) nogil
519
558
  void set_one_filtration(const vector[float]&) nogil
@@ -541,8 +580,8 @@ cdef extern from "Persistence_slices_interface.h":
541
580
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
542
581
 
543
582
 
544
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
545
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
583
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
584
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
546
585
 
547
586
  #------------------------------------------------------------------------------
548
587
  cdef extern from "Persistence_slices_interface.h":
@@ -554,6 +593,9 @@ cdef extern from "Persistence_slices_interface.h":
554
593
  C_Slicer_Matrix1_vine_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[float]]&)
555
594
 
556
595
  C_Slicer_Matrix1_vine_f32& operator=(const C_Slicer_Matrix1_vine_f32&)
596
+
597
+ C_Slicer_Matrix1_vine_f32 colexical_rearange() except + nogil
598
+
557
599
  vector[vector[pair[float, float]]] get_barcode() nogil
558
600
  void push_to(const Line[float]&) nogil
559
601
  void set_one_filtration(const vector[float]&) nogil
@@ -581,8 +623,8 @@ cdef extern from "Persistence_slices_interface.h":
581
623
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
582
624
 
583
625
 
584
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
585
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
626
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
627
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
586
628
 
587
629
  #------------------------------------------------------------------------------
588
630
  cdef extern from "Persistence_slices_interface.h":
@@ -594,6 +636,9 @@ cdef extern from "Persistence_slices_interface.h":
594
636
  C_Slicer_Matrix0_vine_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[double]]&)
595
637
 
596
638
  C_Slicer_Matrix0_vine_f64& operator=(const C_Slicer_Matrix0_vine_f64&)
639
+
640
+ C_Slicer_Matrix0_vine_f64 colexical_rearange() except + nogil
641
+
597
642
  vector[vector[pair[double, double]]] get_barcode() nogil
598
643
  void push_to(const Line[double]&) nogil
599
644
  void set_one_filtration(const vector[double]&) nogil
@@ -621,8 +666,8 @@ cdef extern from "Persistence_slices_interface.h":
621
666
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
622
667
 
623
668
 
624
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
625
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
669
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
670
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
626
671
 
627
672
  #------------------------------------------------------------------------------
628
673
  cdef extern from "Persistence_slices_interface.h":
@@ -634,6 +679,9 @@ cdef extern from "Persistence_slices_interface.h":
634
679
  C_Slicer_Matrix1_vine_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[double]]&)
635
680
 
636
681
  C_Slicer_Matrix1_vine_f64& operator=(const C_Slicer_Matrix1_vine_f64&)
682
+
683
+ C_Slicer_Matrix1_vine_f64 colexical_rearange() except + nogil
684
+
637
685
  vector[vector[pair[double, double]]] get_barcode() nogil
638
686
  void push_to(const Line[double]&) nogil
639
687
  void set_one_filtration(const vector[double]&) nogil
@@ -661,8 +709,8 @@ cdef extern from "Persistence_slices_interface.h":
661
709
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
662
710
 
663
711
 
664
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
665
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
712
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
713
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
666
714
 
667
715
  #------------------------------------------------------------------------------
668
716
  cdef extern from "Persistence_slices_interface.h":
@@ -674,6 +722,9 @@ cdef extern from "Persistence_slices_interface.h":
674
722
  C_KSlicer_Matrix0_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int32_t]]&)
675
723
 
676
724
  C_KSlicer_Matrix0_i32& operator=(const C_KSlicer_Matrix0_i32&)
725
+
726
+ C_KSlicer_Matrix0_i32 colexical_rearange() except + nogil
727
+
677
728
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
678
729
  void push_to(const Line[int32_t]&) nogil
679
730
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -698,8 +749,8 @@ cdef extern from "Persistence_slices_interface.h":
698
749
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
699
750
 
700
751
 
701
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
702
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
752
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
753
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
703
754
 
704
755
  #------------------------------------------------------------------------------
705
756
  cdef extern from "Persistence_slices_interface.h":
@@ -711,6 +762,9 @@ cdef extern from "Persistence_slices_interface.h":
711
762
  C_KSlicer_Matrix1_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int32_t]]&)
712
763
 
713
764
  C_KSlicer_Matrix1_i32& operator=(const C_KSlicer_Matrix1_i32&)
765
+
766
+ C_KSlicer_Matrix1_i32 colexical_rearange() except + nogil
767
+
714
768
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
715
769
  void push_to(const Line[int32_t]&) nogil
716
770
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -735,8 +789,8 @@ cdef extern from "Persistence_slices_interface.h":
735
789
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
736
790
 
737
791
 
738
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
739
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
792
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
793
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
740
794
 
741
795
  #------------------------------------------------------------------------------
742
796
  cdef extern from "Persistence_slices_interface.h":
@@ -748,6 +802,9 @@ cdef extern from "Persistence_slices_interface.h":
748
802
  C_KSlicer_Matrix0_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int64_t]]&)
749
803
 
750
804
  C_KSlicer_Matrix0_i64& operator=(const C_KSlicer_Matrix0_i64&)
805
+
806
+ C_KSlicer_Matrix0_i64 colexical_rearange() except + nogil
807
+
751
808
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
752
809
  void push_to(const Line[int64_t]&) nogil
753
810
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -772,8 +829,8 @@ cdef extern from "Persistence_slices_interface.h":
772
829
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
773
830
 
774
831
 
775
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
776
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
832
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
833
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
777
834
 
778
835
  #------------------------------------------------------------------------------
779
836
  cdef extern from "Persistence_slices_interface.h":
@@ -785,6 +842,9 @@ cdef extern from "Persistence_slices_interface.h":
785
842
  C_KSlicer_Matrix1_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int64_t]]&)
786
843
 
787
844
  C_KSlicer_Matrix1_i64& operator=(const C_KSlicer_Matrix1_i64&)
845
+
846
+ C_KSlicer_Matrix1_i64 colexical_rearange() except + nogil
847
+
788
848
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
789
849
  void push_to(const Line[int64_t]&) nogil
790
850
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -809,8 +869,8 @@ cdef extern from "Persistence_slices_interface.h":
809
869
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
810
870
 
811
871
 
812
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
813
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
872
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
873
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
814
874
 
815
875
  #------------------------------------------------------------------------------
816
876
  cdef extern from "Persistence_slices_interface.h":
@@ -822,6 +882,9 @@ cdef extern from "Persistence_slices_interface.h":
822
882
  C_KSlicer_Matrix0_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[float]]&)
823
883
 
824
884
  C_KSlicer_Matrix0_f32& operator=(const C_KSlicer_Matrix0_f32&)
885
+
886
+ C_KSlicer_Matrix0_f32 colexical_rearange() except + nogil
887
+
825
888
  vector[vector[pair[float, float]]] get_barcode() nogil
826
889
  void push_to(const Line[float]&) nogil
827
890
  void set_one_filtration(const vector[float]&) nogil
@@ -846,8 +909,8 @@ cdef extern from "Persistence_slices_interface.h":
846
909
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
847
910
 
848
911
 
849
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
850
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
912
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
913
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
851
914
 
852
915
  #------------------------------------------------------------------------------
853
916
  cdef extern from "Persistence_slices_interface.h":
@@ -859,6 +922,9 @@ cdef extern from "Persistence_slices_interface.h":
859
922
  C_KSlicer_Matrix1_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[float]]&)
860
923
 
861
924
  C_KSlicer_Matrix1_f32& operator=(const C_KSlicer_Matrix1_f32&)
925
+
926
+ C_KSlicer_Matrix1_f32 colexical_rearange() except + nogil
927
+
862
928
  vector[vector[pair[float, float]]] get_barcode() nogil
863
929
  void push_to(const Line[float]&) nogil
864
930
  void set_one_filtration(const vector[float]&) nogil
@@ -883,8 +949,8 @@ cdef extern from "Persistence_slices_interface.h":
883
949
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
884
950
 
885
951
 
886
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
887
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
952
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
953
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
888
954
 
889
955
  #------------------------------------------------------------------------------
890
956
  cdef extern from "Persistence_slices_interface.h":
@@ -896,6 +962,9 @@ cdef extern from "Persistence_slices_interface.h":
896
962
  C_KSlicer_Matrix0_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[double]]&)
897
963
 
898
964
  C_KSlicer_Matrix0_f64& operator=(const C_KSlicer_Matrix0_f64&)
965
+
966
+ C_KSlicer_Matrix0_f64 colexical_rearange() except + nogil
967
+
899
968
  vector[vector[pair[double, double]]] get_barcode() nogil
900
969
  void push_to(const Line[double]&) nogil
901
970
  void set_one_filtration(const vector[double]&) nogil
@@ -920,8 +989,8 @@ cdef extern from "Persistence_slices_interface.h":
920
989
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
921
990
 
922
991
 
923
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
924
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
992
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
993
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
925
994
 
926
995
  #------------------------------------------------------------------------------
927
996
  cdef extern from "Persistence_slices_interface.h":
@@ -933,6 +1002,9 @@ cdef extern from "Persistence_slices_interface.h":
933
1002
  C_KSlicer_Matrix1_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[double]]&)
934
1003
 
935
1004
  C_KSlicer_Matrix1_f64& operator=(const C_KSlicer_Matrix1_f64&)
1005
+
1006
+ C_KSlicer_Matrix1_f64 colexical_rearange() except + nogil
1007
+
936
1008
  vector[vector[pair[double, double]]] get_barcode() nogil
937
1009
  void push_to(const Line[double]&) nogil
938
1010
  void set_one_filtration(const vector[double]&) nogil
@@ -957,8 +1029,8 @@ cdef extern from "Persistence_slices_interface.h":
957
1029
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
958
1030
 
959
1031
 
960
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
961
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
1032
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
1033
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
962
1034
 
963
1035
  #------------------------------------------------------------------------------
964
1036
  cdef extern from "Persistence_slices_interface.h":
@@ -970,6 +1042,9 @@ cdef extern from "Persistence_slices_interface.h":
970
1042
  C_Slicer_Matrix0_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int32_t]]&)
971
1043
 
972
1044
  C_Slicer_Matrix0_i32& operator=(const C_Slicer_Matrix0_i32&)
1045
+
1046
+ C_Slicer_Matrix0_i32 colexical_rearange() except + nogil
1047
+
973
1048
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
974
1049
  void push_to(const Line[int32_t]&) nogil
975
1050
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -994,8 +1069,8 @@ cdef extern from "Persistence_slices_interface.h":
994
1069
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
995
1070
 
996
1071
 
997
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
998
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
1072
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
1073
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
999
1074
 
1000
1075
  #------------------------------------------------------------------------------
1001
1076
  cdef extern from "Persistence_slices_interface.h":
@@ -1007,6 +1082,9 @@ cdef extern from "Persistence_slices_interface.h":
1007
1082
  C_Slicer_Matrix1_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int32_t]]&)
1008
1083
 
1009
1084
  C_Slicer_Matrix1_i32& operator=(const C_Slicer_Matrix1_i32&)
1085
+
1086
+ C_Slicer_Matrix1_i32 colexical_rearange() except + nogil
1087
+
1010
1088
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
1011
1089
  void push_to(const Line[int32_t]&) nogil
1012
1090
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -1031,8 +1109,8 @@ cdef extern from "Persistence_slices_interface.h":
1031
1109
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1032
1110
 
1033
1111
 
1034
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
1035
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
1112
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
1113
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
1036
1114
 
1037
1115
  #------------------------------------------------------------------------------
1038
1116
  cdef extern from "Persistence_slices_interface.h":
@@ -1044,6 +1122,9 @@ cdef extern from "Persistence_slices_interface.h":
1044
1122
  C_Slicer_Matrix0_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int64_t]]&)
1045
1123
 
1046
1124
  C_Slicer_Matrix0_i64& operator=(const C_Slicer_Matrix0_i64&)
1125
+
1126
+ C_Slicer_Matrix0_i64 colexical_rearange() except + nogil
1127
+
1047
1128
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
1048
1129
  void push_to(const Line[int64_t]&) nogil
1049
1130
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -1068,8 +1149,8 @@ cdef extern from "Persistence_slices_interface.h":
1068
1149
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1069
1150
 
1070
1151
 
1071
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
1072
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
1152
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
1153
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
1073
1154
 
1074
1155
  #------------------------------------------------------------------------------
1075
1156
  cdef extern from "Persistence_slices_interface.h":
@@ -1081,6 +1162,9 @@ cdef extern from "Persistence_slices_interface.h":
1081
1162
  C_Slicer_Matrix1_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int64_t]]&)
1082
1163
 
1083
1164
  C_Slicer_Matrix1_i64& operator=(const C_Slicer_Matrix1_i64&)
1165
+
1166
+ C_Slicer_Matrix1_i64 colexical_rearange() except + nogil
1167
+
1084
1168
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
1085
1169
  void push_to(const Line[int64_t]&) nogil
1086
1170
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -1105,8 +1189,8 @@ cdef extern from "Persistence_slices_interface.h":
1105
1189
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1106
1190
 
1107
1191
 
1108
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
1109
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
1192
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
1193
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
1110
1194
 
1111
1195
  #------------------------------------------------------------------------------
1112
1196
  cdef extern from "Persistence_slices_interface.h":
@@ -1118,6 +1202,9 @@ cdef extern from "Persistence_slices_interface.h":
1118
1202
  C_Slicer_Matrix0_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[float]]&)
1119
1203
 
1120
1204
  C_Slicer_Matrix0_f32& operator=(const C_Slicer_Matrix0_f32&)
1205
+
1206
+ C_Slicer_Matrix0_f32 colexical_rearange() except + nogil
1207
+
1121
1208
  vector[vector[pair[float, float]]] get_barcode() nogil
1122
1209
  void push_to(const Line[float]&) nogil
1123
1210
  void set_one_filtration(const vector[float]&) nogil
@@ -1142,8 +1229,8 @@ cdef extern from "Persistence_slices_interface.h":
1142
1229
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1143
1230
 
1144
1231
 
1145
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
1146
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
1232
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
1233
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
1147
1234
 
1148
1235
  #------------------------------------------------------------------------------
1149
1236
  cdef extern from "Persistence_slices_interface.h":
@@ -1155,6 +1242,9 @@ cdef extern from "Persistence_slices_interface.h":
1155
1242
  C_Slicer_Matrix1_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[float]]&)
1156
1243
 
1157
1244
  C_Slicer_Matrix1_f32& operator=(const C_Slicer_Matrix1_f32&)
1245
+
1246
+ C_Slicer_Matrix1_f32 colexical_rearange() except + nogil
1247
+
1158
1248
  vector[vector[pair[float, float]]] get_barcode() nogil
1159
1249
  void push_to(const Line[float]&) nogil
1160
1250
  void set_one_filtration(const vector[float]&) nogil
@@ -1179,8 +1269,8 @@ cdef extern from "Persistence_slices_interface.h":
1179
1269
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1180
1270
 
1181
1271
 
1182
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
1183
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
1272
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
1273
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
1184
1274
 
1185
1275
  #------------------------------------------------------------------------------
1186
1276
  cdef extern from "Persistence_slices_interface.h":
@@ -1192,6 +1282,9 @@ cdef extern from "Persistence_slices_interface.h":
1192
1282
  C_Slicer_Matrix0_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[double]]&)
1193
1283
 
1194
1284
  C_Slicer_Matrix0_f64& operator=(const C_Slicer_Matrix0_f64&)
1285
+
1286
+ C_Slicer_Matrix0_f64 colexical_rearange() except + nogil
1287
+
1195
1288
  vector[vector[pair[double, double]]] get_barcode() nogil
1196
1289
  void push_to(const Line[double]&) nogil
1197
1290
  void set_one_filtration(const vector[double]&) nogil
@@ -1216,8 +1309,8 @@ cdef extern from "Persistence_slices_interface.h":
1216
1309
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1217
1310
 
1218
1311
 
1219
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
1220
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
1312
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
1313
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
1221
1314
 
1222
1315
  #------------------------------------------------------------------------------
1223
1316
  cdef extern from "Persistence_slices_interface.h":
@@ -1229,6 +1322,9 @@ cdef extern from "Persistence_slices_interface.h":
1229
1322
  C_Slicer_Matrix1_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[double]]&)
1230
1323
 
1231
1324
  C_Slicer_Matrix1_f64& operator=(const C_Slicer_Matrix1_f64&)
1325
+
1326
+ C_Slicer_Matrix1_f64 colexical_rearange() except + nogil
1327
+
1232
1328
  vector[vector[pair[double, double]]] get_barcode() nogil
1233
1329
  void push_to(const Line[double]&) nogil
1234
1330
  void set_one_filtration(const vector[double]&) nogil
@@ -1253,8 +1349,8 @@ cdef extern from "Persistence_slices_interface.h":
1253
1349
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1254
1350
 
1255
1351
 
1256
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
1257
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
1352
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
1353
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
1258
1354
 
1259
1355
  #------------------------------------------------------------------------------
1260
1356
  cdef extern from "Persistence_slices_interface.h":
@@ -1266,6 +1362,9 @@ cdef extern from "Persistence_slices_interface.h":
1266
1362
  C_KSlicer_GudhiCohomology0_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int32_t]]&)
1267
1363
 
1268
1364
  C_KSlicer_GudhiCohomology0_i32& operator=(const C_KSlicer_GudhiCohomology0_i32&)
1365
+
1366
+ C_KSlicer_GudhiCohomology0_i32 colexical_rearange() except + nogil
1367
+
1269
1368
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
1270
1369
  void push_to(const Line[int32_t]&) nogil
1271
1370
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -1290,8 +1389,8 @@ cdef extern from "Persistence_slices_interface.h":
1290
1389
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
1291
1390
 
1292
1391
 
1293
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
1294
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
1392
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
1393
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
1295
1394
 
1296
1395
  #------------------------------------------------------------------------------
1297
1396
  cdef extern from "Persistence_slices_interface.h":
@@ -1303,6 +1402,9 @@ cdef extern from "Persistence_slices_interface.h":
1303
1402
  C_KSlicer_GudhiCohomology0_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[int64_t]]&)
1304
1403
 
1305
1404
  C_KSlicer_GudhiCohomology0_i64& operator=(const C_KSlicer_GudhiCohomology0_i64&)
1405
+
1406
+ C_KSlicer_GudhiCohomology0_i64 colexical_rearange() except + nogil
1407
+
1306
1408
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
1307
1409
  void push_to(const Line[int64_t]&) nogil
1308
1410
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -1327,8 +1429,8 @@ cdef extern from "Persistence_slices_interface.h":
1327
1429
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
1328
1430
 
1329
1431
 
1330
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
1331
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
1432
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
1433
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
1332
1434
 
1333
1435
  #------------------------------------------------------------------------------
1334
1436
  cdef extern from "Persistence_slices_interface.h":
@@ -1340,6 +1442,9 @@ cdef extern from "Persistence_slices_interface.h":
1340
1442
  C_KSlicer_GudhiCohomology0_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[float]]&)
1341
1443
 
1342
1444
  C_KSlicer_GudhiCohomology0_f32& operator=(const C_KSlicer_GudhiCohomology0_f32&)
1445
+
1446
+ C_KSlicer_GudhiCohomology0_f32 colexical_rearange() except + nogil
1447
+
1343
1448
  vector[vector[pair[float, float]]] get_barcode() nogil
1344
1449
  void push_to(const Line[float]&) nogil
1345
1450
  void set_one_filtration(const vector[float]&) nogil
@@ -1364,8 +1469,8 @@ cdef extern from "Persistence_slices_interface.h":
1364
1469
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
1365
1470
 
1366
1471
 
1367
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
1368
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
1472
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
1473
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
1369
1474
 
1370
1475
  #------------------------------------------------------------------------------
1371
1476
  cdef extern from "Persistence_slices_interface.h":
@@ -1377,6 +1482,9 @@ cdef extern from "Persistence_slices_interface.h":
1377
1482
  C_KSlicer_GudhiCohomology0_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[Multi_critical_filtration[double]]&)
1378
1483
 
1379
1484
  C_KSlicer_GudhiCohomology0_f64& operator=(const C_KSlicer_GudhiCohomology0_f64&)
1485
+
1486
+ C_KSlicer_GudhiCohomology0_f64 colexical_rearange() except + nogil
1487
+
1380
1488
  vector[vector[pair[double, double]]] get_barcode() nogil
1381
1489
  void push_to(const Line[double]&) nogil
1382
1490
  void set_one_filtration(const vector[double]&) nogil
@@ -1401,8 +1509,8 @@ cdef extern from "Persistence_slices_interface.h":
1401
1509
  void write_to_scc_file(const string&, int, int, bool, bool, bool, bool) nogil
1402
1510
 
1403
1511
 
1404
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
1405
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
1512
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
1513
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
1406
1514
 
1407
1515
  #------------------------------------------------------------------------------
1408
1516
  cdef extern from "Persistence_slices_interface.h":
@@ -1414,6 +1522,9 @@ cdef extern from "Persistence_slices_interface.h":
1414
1522
  C_Slicer_GudhiCohomology0_i32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int32_t]]&)
1415
1523
 
1416
1524
  C_Slicer_GudhiCohomology0_i32& operator=(const C_Slicer_GudhiCohomology0_i32&)
1525
+
1526
+ C_Slicer_GudhiCohomology0_i32 colexical_rearange() except + nogil
1527
+
1417
1528
  vector[vector[pair[int32_t, int32_t]]] get_barcode() nogil
1418
1529
  void push_to(const Line[int32_t]&) nogil
1419
1530
  void set_one_filtration(const vector[int32_t]&) nogil
@@ -1438,8 +1549,8 @@ cdef extern from "Persistence_slices_interface.h":
1438
1549
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1439
1550
 
1440
1551
 
1441
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]]) nogil
1442
- vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]]) nogil
1552
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[vector[int32_t]], bool) nogil
1553
+ vector[vector[vector[pair[int32_t, int32_t]]]] persistence_on_lines(vector[pair[vector[int32_t],vector[int32_t]]],bool) nogil
1443
1554
 
1444
1555
  #------------------------------------------------------------------------------
1445
1556
  cdef extern from "Persistence_slices_interface.h":
@@ -1451,6 +1562,9 @@ cdef extern from "Persistence_slices_interface.h":
1451
1562
  C_Slicer_GudhiCohomology0_i64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[int64_t]]&)
1452
1563
 
1453
1564
  C_Slicer_GudhiCohomology0_i64& operator=(const C_Slicer_GudhiCohomology0_i64&)
1565
+
1566
+ C_Slicer_GudhiCohomology0_i64 colexical_rearange() except + nogil
1567
+
1454
1568
  vector[vector[pair[int64_t, int64_t]]] get_barcode() nogil
1455
1569
  void push_to(const Line[int64_t]&) nogil
1456
1570
  void set_one_filtration(const vector[int64_t]&) nogil
@@ -1475,8 +1589,8 @@ cdef extern from "Persistence_slices_interface.h":
1475
1589
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1476
1590
 
1477
1591
 
1478
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]]) nogil
1479
- vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]]) nogil
1592
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[vector[int64_t]], bool) nogil
1593
+ vector[vector[vector[pair[int64_t, int64_t]]]] persistence_on_lines(vector[pair[vector[int64_t],vector[int64_t]]],bool) nogil
1480
1594
 
1481
1595
  #------------------------------------------------------------------------------
1482
1596
  cdef extern from "Persistence_slices_interface.h":
@@ -1488,6 +1602,9 @@ cdef extern from "Persistence_slices_interface.h":
1488
1602
  C_Slicer_GudhiCohomology0_f32(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[float]]&)
1489
1603
 
1490
1604
  C_Slicer_GudhiCohomology0_f32& operator=(const C_Slicer_GudhiCohomology0_f32&)
1605
+
1606
+ C_Slicer_GudhiCohomology0_f32 colexical_rearange() except + nogil
1607
+
1491
1608
  vector[vector[pair[float, float]]] get_barcode() nogil
1492
1609
  void push_to(const Line[float]&) nogil
1493
1610
  void set_one_filtration(const vector[float]&) nogil
@@ -1512,8 +1629,8 @@ cdef extern from "Persistence_slices_interface.h":
1512
1629
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1513
1630
 
1514
1631
 
1515
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]]) nogil
1516
- vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]]) nogil
1632
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[vector[float]], bool) nogil
1633
+ vector[vector[vector[pair[float, float]]]] persistence_on_lines(vector[pair[vector[float],vector[float]]],bool) nogil
1517
1634
 
1518
1635
  #------------------------------------------------------------------------------
1519
1636
  cdef extern from "Persistence_slices_interface.h":
@@ -1525,6 +1642,9 @@ cdef extern from "Persistence_slices_interface.h":
1525
1642
  C_Slicer_GudhiCohomology0_f64(const vector[vector[unsigned int]]&, const vector[int]&, const vector[One_critical_filtration[double]]&)
1526
1643
 
1527
1644
  C_Slicer_GudhiCohomology0_f64& operator=(const C_Slicer_GudhiCohomology0_f64&)
1645
+
1646
+ C_Slicer_GudhiCohomology0_f64 colexical_rearange() except + nogil
1647
+
1528
1648
  vector[vector[pair[double, double]]] get_barcode() nogil
1529
1649
  void push_to(const Line[double]&) nogil
1530
1650
  void set_one_filtration(const vector[double]&) nogil
@@ -1549,8 +1669,8 @@ cdef extern from "Persistence_slices_interface.h":
1549
1669
  void build_from_scc_file(const string&, bool, bool, int) except + nogil
1550
1670
 
1551
1671
 
1552
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]]) nogil
1553
- vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]]) nogil
1672
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[vector[double]], bool) nogil
1673
+ vector[vector[vector[pair[double, double]]]] persistence_on_lines(vector[pair[vector[double],vector[double]]],bool) nogil
1554
1674
 
1555
1675
 
1556
1676
 
@@ -1573,51 +1693,51 @@ cdef extern from "multiparameter_module_approximation/approximation.h" namespace
1573
1693
 
1574
1694
  import multipers.slicer as mps
1575
1695
  from cython.operator cimport dereference
1576
- cdef inline Module[float] _multiparameter_module_approximation_f32(object slicer, One_critical_filtration[float] direction, float max_error, Box[float] box, bool threshold, bool complete, bool verbose):
1696
+ cdef inline Module[double] _multiparameter_module_approximation_f64(object slicer, One_critical_filtration[double] direction, double max_error, Box[double] box, bool threshold, bool complete, bool verbose):
1577
1697
  import multipers.slicer as mps
1578
1698
  cdef intptr_t slicer_ptr = <intptr_t>(slicer.get_ptr())
1579
- cdef Module[float] mod
1699
+ cdef Module[double] mod
1580
1700
  if False:
1581
1701
  pass
1582
- elif isinstance(slicer, mps._KSlicer_Matrix0_vine_f32):
1702
+ elif isinstance(slicer, mps._KSlicer_Matrix0_vine_f64):
1583
1703
  with nogil:
1584
- mod = multiparameter_module_approximation(dereference(<C_KSlicer_Matrix0_vine_f32*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1704
+ mod = multiparameter_module_approximation(dereference(<C_KSlicer_Matrix0_vine_f64*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1585
1705
  return mod
1586
- elif isinstance(slicer, mps._KSlicer_Matrix1_vine_f32):
1706
+ elif isinstance(slicer, mps._KSlicer_Matrix1_vine_f64):
1587
1707
  with nogil:
1588
- mod = multiparameter_module_approximation(dereference(<C_KSlicer_Matrix1_vine_f32*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1708
+ mod = multiparameter_module_approximation(dereference(<C_KSlicer_Matrix1_vine_f64*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1589
1709
  return mod
1590
- elif isinstance(slicer, mps._Slicer_Matrix0_vine_f32):
1710
+ elif isinstance(slicer, mps._Slicer_Matrix0_vine_f64):
1591
1711
  with nogil:
1592
- mod = multiparameter_module_approximation(dereference(<C_Slicer_Matrix0_vine_f32*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1712
+ mod = multiparameter_module_approximation(dereference(<C_Slicer_Matrix0_vine_f64*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1593
1713
  return mod
1594
- elif isinstance(slicer, mps._Slicer_Matrix1_vine_f32):
1714
+ elif isinstance(slicer, mps._Slicer_Matrix1_vine_f64):
1595
1715
  with nogil:
1596
- mod = multiparameter_module_approximation(dereference(<C_Slicer_Matrix1_vine_f32*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1716
+ mod = multiparameter_module_approximation(dereference(<C_Slicer_Matrix1_vine_f64*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1597
1717
  return mod
1598
1718
  else:
1599
1719
  raise ValueError(f"Unsupported slicer type {type(slicer)}")
1600
- cdef inline Module[double] _multiparameter_module_approximation_f64(object slicer, One_critical_filtration[double] direction, double max_error, Box[double] box, bool threshold, bool complete, bool verbose):
1720
+ cdef inline Module[float] _multiparameter_module_approximation_f32(object slicer, One_critical_filtration[float] direction, float max_error, Box[float] box, bool threshold, bool complete, bool verbose):
1601
1721
  import multipers.slicer as mps
1602
1722
  cdef intptr_t slicer_ptr = <intptr_t>(slicer.get_ptr())
1603
- cdef Module[double] mod
1723
+ cdef Module[float] mod
1604
1724
  if False:
1605
1725
  pass
1606
- elif isinstance(slicer, mps._KSlicer_Matrix0_vine_f64):
1726
+ elif isinstance(slicer, mps._KSlicer_Matrix0_vine_f32):
1607
1727
  with nogil:
1608
- mod = multiparameter_module_approximation(dereference(<C_KSlicer_Matrix0_vine_f64*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1728
+ mod = multiparameter_module_approximation(dereference(<C_KSlicer_Matrix0_vine_f32*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1609
1729
  return mod
1610
- elif isinstance(slicer, mps._KSlicer_Matrix1_vine_f64):
1730
+ elif isinstance(slicer, mps._KSlicer_Matrix1_vine_f32):
1611
1731
  with nogil:
1612
- mod = multiparameter_module_approximation(dereference(<C_KSlicer_Matrix1_vine_f64*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1732
+ mod = multiparameter_module_approximation(dereference(<C_KSlicer_Matrix1_vine_f32*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1613
1733
  return mod
1614
- elif isinstance(slicer, mps._Slicer_Matrix0_vine_f64):
1734
+ elif isinstance(slicer, mps._Slicer_Matrix0_vine_f32):
1615
1735
  with nogil:
1616
- mod = multiparameter_module_approximation(dereference(<C_Slicer_Matrix0_vine_f64*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1736
+ mod = multiparameter_module_approximation(dereference(<C_Slicer_Matrix0_vine_f32*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1617
1737
  return mod
1618
- elif isinstance(slicer, mps._Slicer_Matrix1_vine_f64):
1738
+ elif isinstance(slicer, mps._Slicer_Matrix1_vine_f32):
1619
1739
  with nogil:
1620
- mod = multiparameter_module_approximation(dereference(<C_Slicer_Matrix1_vine_f64*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1740
+ mod = multiparameter_module_approximation(dereference(<C_Slicer_Matrix1_vine_f32*>(slicer_ptr)), direction, max_error, box, threshold, complete, verbose)
1621
1741
  return mod
1622
1742
  else:
1623
1743
  raise ValueError(f"Unsupported slicer type {type(slicer)}")