multipers 2.4.0b1__cp312-cp312-macosx_11_0_arm64.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.
- multipers/.dylibs/libboost_timer.dylib +0 -0
- multipers/.dylibs/libc++.1.0.dylib +0 -0
- multipers/.dylibs/libtbb.12.17.dylib +0 -0
- multipers/__init__.py +33 -0
- multipers/_signed_measure_meta.py +426 -0
- multipers/_slicer_meta.py +231 -0
- multipers/array_api/__init__.py +62 -0
- multipers/array_api/numpy.py +124 -0
- multipers/array_api/torch.py +133 -0
- multipers/data/MOL2.py +458 -0
- multipers/data/UCR.py +18 -0
- multipers/data/__init__.py +1 -0
- multipers/data/graphs.py +466 -0
- multipers/data/immuno_regions.py +27 -0
- multipers/data/minimal_presentation_to_st_bf.py +0 -0
- multipers/data/pytorch2simplextree.py +91 -0
- multipers/data/shape3d.py +101 -0
- multipers/data/synthetic.py +113 -0
- multipers/distances.py +202 -0
- multipers/filtration_conversions.pxd +736 -0
- multipers/filtration_conversions.pxd.tp +226 -0
- multipers/filtrations/__init__.py +21 -0
- multipers/filtrations/density.py +529 -0
- multipers/filtrations/filtrations.py +480 -0
- multipers/filtrations.pxd +534 -0
- multipers/filtrations.pxd.tp +332 -0
- multipers/function_rips.cpython-312-darwin.so +0 -0
- multipers/function_rips.pyx +104 -0
- multipers/grids.cpython-312-darwin.so +0 -0
- multipers/grids.pyx +538 -0
- multipers/gudhi/Persistence_slices_interface.h +213 -0
- multipers/gudhi/Simplex_tree_interface.h +274 -0
- multipers/gudhi/Simplex_tree_multi_interface.h +648 -0
- multipers/gudhi/gudhi/Bitmap_cubical_complex.h +450 -0
- multipers/gudhi/gudhi/Bitmap_cubical_complex_base.h +1070 -0
- multipers/gudhi/gudhi/Bitmap_cubical_complex_periodic_boundary_conditions_base.h +579 -0
- multipers/gudhi/gudhi/Debug_utils.h +52 -0
- multipers/gudhi/gudhi/Degree_rips_bifiltration.h +2307 -0
- multipers/gudhi/gudhi/Dynamic_multi_parameter_filtration.h +2524 -0
- multipers/gudhi/gudhi/Fields/Multi_field.h +453 -0
- multipers/gudhi/gudhi/Fields/Multi_field_operators.h +460 -0
- multipers/gudhi/gudhi/Fields/Multi_field_shared.h +444 -0
- multipers/gudhi/gudhi/Fields/Multi_field_small.h +584 -0
- multipers/gudhi/gudhi/Fields/Multi_field_small_operators.h +490 -0
- multipers/gudhi/gudhi/Fields/Multi_field_small_shared.h +580 -0
- multipers/gudhi/gudhi/Fields/Z2_field.h +391 -0
- multipers/gudhi/gudhi/Fields/Z2_field_operators.h +389 -0
- multipers/gudhi/gudhi/Fields/Zp_field.h +493 -0
- multipers/gudhi/gudhi/Fields/Zp_field_operators.h +384 -0
- multipers/gudhi/gudhi/Fields/Zp_field_shared.h +492 -0
- multipers/gudhi/gudhi/Flag_complex_edge_collapser.h +337 -0
- multipers/gudhi/gudhi/Matrix.h +2200 -0
- multipers/gudhi/gudhi/Multi_filtration/Multi_parameter_generator.h +1712 -0
- multipers/gudhi/gudhi/Multi_filtration/multi_filtration_conversions.h +237 -0
- multipers/gudhi/gudhi/Multi_filtration/multi_filtration_utils.h +225 -0
- multipers/gudhi/gudhi/Multi_parameter_filtered_complex.h +485 -0
- multipers/gudhi/gudhi/Multi_parameter_filtration.h +2643 -0
- multipers/gudhi/gudhi/Multi_persistence/Box.h +233 -0
- multipers/gudhi/gudhi/Multi_persistence/Line.h +309 -0
- multipers/gudhi/gudhi/Multi_persistence/Multi_parameter_filtered_complex_pcoh_interface.h +268 -0
- multipers/gudhi/gudhi/Multi_persistence/Persistence_interface_cohomology.h +159 -0
- multipers/gudhi/gudhi/Multi_persistence/Persistence_interface_matrix.h +463 -0
- multipers/gudhi/gudhi/Multi_persistence/Point.h +853 -0
- multipers/gudhi/gudhi/Off_reader.h +173 -0
- multipers/gudhi/gudhi/Persistence_matrix/Base_matrix.h +834 -0
- multipers/gudhi/gudhi/Persistence_matrix/Base_matrix_with_column_compression.h +838 -0
- multipers/gudhi/gudhi/Persistence_matrix/Boundary_matrix.h +833 -0
- multipers/gudhi/gudhi/Persistence_matrix/Chain_matrix.h +1367 -0
- multipers/gudhi/gudhi/Persistence_matrix/Id_to_index_overlay.h +1157 -0
- multipers/gudhi/gudhi/Persistence_matrix/Position_to_index_overlay.h +869 -0
- multipers/gudhi/gudhi/Persistence_matrix/RU_matrix.h +905 -0
- multipers/gudhi/gudhi/Persistence_matrix/allocators/entry_constructors.h +122 -0
- multipers/gudhi/gudhi/Persistence_matrix/base_pairing.h +260 -0
- multipers/gudhi/gudhi/Persistence_matrix/base_swap.h +288 -0
- multipers/gudhi/gudhi/Persistence_matrix/chain_pairing.h +170 -0
- multipers/gudhi/gudhi/Persistence_matrix/chain_rep_cycles.h +247 -0
- multipers/gudhi/gudhi/Persistence_matrix/chain_vine_swap.h +571 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/chain_column_extra_properties.h +182 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/column_dimension_holder.h +130 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/column_utilities.h +235 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/entry_types.h +312 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/heap_column.h +1092 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/intrusive_list_column.h +923 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/intrusive_set_column.h +914 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/list_column.h +930 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/naive_vector_column.h +1071 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/row_access.h +203 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/set_column.h +886 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/unordered_set_column.h +984 -0
- multipers/gudhi/gudhi/Persistence_matrix/columns/vector_column.h +1213 -0
- multipers/gudhi/gudhi/Persistence_matrix/index_mapper.h +58 -0
- multipers/gudhi/gudhi/Persistence_matrix/matrix_dimension_holders.h +227 -0
- multipers/gudhi/gudhi/Persistence_matrix/matrix_row_access.h +200 -0
- multipers/gudhi/gudhi/Persistence_matrix/ru_pairing.h +166 -0
- multipers/gudhi/gudhi/Persistence_matrix/ru_rep_cycles.h +319 -0
- multipers/gudhi/gudhi/Persistence_matrix/ru_vine_swap.h +562 -0
- multipers/gudhi/gudhi/Persistence_on_a_line.h +152 -0
- multipers/gudhi/gudhi/Persistence_on_rectangle.h +617 -0
- multipers/gudhi/gudhi/Persistent_cohomology/Field_Zp.h +118 -0
- multipers/gudhi/gudhi/Persistent_cohomology/Multi_field.h +173 -0
- multipers/gudhi/gudhi/Persistent_cohomology/Persistent_cohomology_column.h +128 -0
- multipers/gudhi/gudhi/Persistent_cohomology.h +769 -0
- multipers/gudhi/gudhi/Points_off_io.h +171 -0
- multipers/gudhi/gudhi/Projective_cover_kernel.h +379 -0
- multipers/gudhi/gudhi/Simple_object_pool.h +69 -0
- multipers/gudhi/gudhi/Simplex_tree/Simplex_tree_iterators.h +559 -0
- multipers/gudhi/gudhi/Simplex_tree/Simplex_tree_node_explicit_storage.h +83 -0
- multipers/gudhi/gudhi/Simplex_tree/Simplex_tree_siblings.h +121 -0
- multipers/gudhi/gudhi/Simplex_tree/Simplex_tree_star_simplex_iterators.h +277 -0
- multipers/gudhi/gudhi/Simplex_tree/filtration_value_utils.h +155 -0
- multipers/gudhi/gudhi/Simplex_tree/hooks_simplex_base.h +62 -0
- multipers/gudhi/gudhi/Simplex_tree/indexing_tag.h +27 -0
- multipers/gudhi/gudhi/Simplex_tree/serialization_utils.h +60 -0
- multipers/gudhi/gudhi/Simplex_tree/simplex_tree_options.h +105 -0
- multipers/gudhi/gudhi/Simplex_tree.h +3170 -0
- multipers/gudhi/gudhi/Slicer.h +848 -0
- multipers/gudhi/gudhi/Thread_safe_slicer.h +393 -0
- multipers/gudhi/gudhi/distance_functions.h +62 -0
- multipers/gudhi/gudhi/graph_simplicial_complex.h +104 -0
- multipers/gudhi/gudhi/multi_simplex_tree_helpers.h +147 -0
- multipers/gudhi/gudhi/persistence_interval.h +263 -0
- multipers/gudhi/gudhi/persistence_matrix_options.h +188 -0
- multipers/gudhi/gudhi/reader_utils.h +367 -0
- multipers/gudhi/gudhi/simple_mdspan.h +484 -0
- multipers/gudhi/gudhi/slicer_helpers.h +779 -0
- multipers/gudhi/tmp_h0_pers/mma_interface_h0.h +223 -0
- multipers/gudhi/tmp_h0_pers/naive_merge_tree.h +536 -0
- multipers/io.cpython-312-darwin.so +0 -0
- multipers/io.pyx +472 -0
- multipers/ml/__init__.py +0 -0
- multipers/ml/accuracies.py +90 -0
- multipers/ml/invariants_with_persistable.py +79 -0
- multipers/ml/kernels.py +176 -0
- multipers/ml/mma.py +713 -0
- multipers/ml/one.py +472 -0
- multipers/ml/point_clouds.py +352 -0
- multipers/ml/signed_measures.py +1667 -0
- multipers/ml/sliced_wasserstein.py +461 -0
- multipers/ml/tools.py +113 -0
- multipers/mma_structures.cpython-312-darwin.so +0 -0
- multipers/mma_structures.pxd +134 -0
- multipers/mma_structures.pyx +1483 -0
- multipers/mma_structures.pyx.tp +1126 -0
- multipers/multi_parameter_rank_invariant/diff_helpers.h +85 -0
- multipers/multi_parameter_rank_invariant/euler_characteristic.h +95 -0
- multipers/multi_parameter_rank_invariant/function_rips.h +317 -0
- multipers/multi_parameter_rank_invariant/hilbert_function.h +761 -0
- multipers/multi_parameter_rank_invariant/persistence_slices.h +149 -0
- multipers/multi_parameter_rank_invariant/rank_invariant.h +350 -0
- multipers/multiparameter_edge_collapse.py +41 -0
- multipers/multiparameter_module_approximation/approximation.h +2541 -0
- multipers/multiparameter_module_approximation/debug.h +107 -0
- multipers/multiparameter_module_approximation/format_python-cpp.h +292 -0
- multipers/multiparameter_module_approximation/utilities.h +428 -0
- multipers/multiparameter_module_approximation.cpython-312-darwin.so +0 -0
- multipers/multiparameter_module_approximation.pyx +286 -0
- multipers/ops.cpython-312-darwin.so +0 -0
- multipers/ops.pyx +231 -0
- multipers/pickle.py +89 -0
- multipers/plots.py +550 -0
- multipers/point_measure.cpython-312-darwin.so +0 -0
- multipers/point_measure.pyx +409 -0
- multipers/simplex_tree_multi.cpython-312-darwin.so +0 -0
- multipers/simplex_tree_multi.pxd +136 -0
- multipers/simplex_tree_multi.pyx +11719 -0
- multipers/simplex_tree_multi.pyx.tp +2102 -0
- multipers/slicer.cpython-312-darwin.so +0 -0
- multipers/slicer.pxd +2097 -0
- multipers/slicer.pxd.tp +263 -0
- multipers/slicer.pyx +13042 -0
- multipers/slicer.pyx.tp +1259 -0
- multipers/tensor/tensor.h +672 -0
- multipers/tensor.pxd +13 -0
- multipers/test.pyx +44 -0
- multipers/tests/__init__.py +70 -0
- multipers/torch/__init__.py +1 -0
- multipers/torch/diff_grids.py +240 -0
- multipers/torch/rips_density.py +310 -0
- multipers/vector_interface.pxd +46 -0
- multipers-2.4.0b1.dist-info/METADATA +131 -0
- multipers-2.4.0b1.dist-info/RECORD +184 -0
- multipers-2.4.0b1.dist-info/WHEEL +6 -0
- multipers-2.4.0b1.dist-info/licenses/LICENSE +21 -0
- multipers-2.4.0b1.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/* This file is part of the Gudhi Library - https://gudhi.inria.fr/ - which is released under MIT.
|
|
2
|
+
* See file LICENSE or go to https://gudhi.inria.fr/licensing/ for full license details.
|
|
3
|
+
* Author(s): Vincent Rouvreau
|
|
4
|
+
*
|
|
5
|
+
* Copyright (C) 2023 Inria
|
|
6
|
+
*
|
|
7
|
+
* Modification(s):
|
|
8
|
+
* - YYYY/MM Author: Description of the modification
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
#ifndef SIMPLEX_TREE_SERIALIZATION_UTILS_H_
|
|
12
|
+
#define SIMPLEX_TREE_SERIALIZATION_UTILS_H_
|
|
13
|
+
|
|
14
|
+
#include <cstring> // for memcpy and std::size_t
|
|
15
|
+
|
|
16
|
+
namespace Gudhi {
|
|
17
|
+
|
|
18
|
+
namespace simplex_tree {
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* @private
|
|
22
|
+
* @ingroup simplex_tree
|
|
23
|
+
* @brief Serialize the given value and insert it at start position.
|
|
24
|
+
*
|
|
25
|
+
* @param[in] value The value to serialize.
|
|
26
|
+
* @param[in] start Start position where the value is serialized.
|
|
27
|
+
* @return The new position in the array of char for the next serialization.
|
|
28
|
+
*
|
|
29
|
+
* @warning It is the user's responsibility to provide a pointer to a buffer with enough memory space.
|
|
30
|
+
*/
|
|
31
|
+
template<class ArgumentType>
|
|
32
|
+
char* serialize_trivial(ArgumentType value, char* start) {
|
|
33
|
+
std::size_t arg_size = sizeof(ArgumentType);
|
|
34
|
+
memcpy(start, &value, arg_size);
|
|
35
|
+
return start + arg_size;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* @private
|
|
40
|
+
* @ingroup simplex_tree
|
|
41
|
+
* \brief Deserialize at the start position in an array of char and sets the value with it.
|
|
42
|
+
*
|
|
43
|
+
* @param[in] value The value where to deserialize based on its type.
|
|
44
|
+
* @param[in] start Start position where the value is serialized.
|
|
45
|
+
* @return The new position in the array of char for the next deserialization.
|
|
46
|
+
*
|
|
47
|
+
* @warning It is the user's responsibility to ensure that the pointer will not go out of bounds.
|
|
48
|
+
*/
|
|
49
|
+
template<class ArgumentType>
|
|
50
|
+
const char* deserialize_trivial(ArgumentType& value, const char* start) {
|
|
51
|
+
std::size_t arg_size = sizeof(ArgumentType);
|
|
52
|
+
memcpy(&value, start, arg_size);
|
|
53
|
+
return (start + arg_size);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
} // namespace simplex_tree
|
|
57
|
+
|
|
58
|
+
} // namespace Gudhi
|
|
59
|
+
|
|
60
|
+
#endif // SIMPLEX_TREE_SERIALIZATION_UTILS_H_
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/* This file is part of the Gudhi Library - https://gudhi.inria.fr/ - which is released under MIT.
|
|
2
|
+
* See file LICENSE or go to https://gudhi.inria.fr/licensing/ for full license details.
|
|
3
|
+
* Author(s): Vincent Rouvreau
|
|
4
|
+
*
|
|
5
|
+
* Copyright (C) 2023 Inria
|
|
6
|
+
*
|
|
7
|
+
* Modification(s):
|
|
8
|
+
* - YYYY/MM Author: Description of the modification
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
#ifndef SIMPLEX_TREE_SIMPLEX_TREE_OPTIONS_H_
|
|
12
|
+
#define SIMPLEX_TREE_SIMPLEX_TREE_OPTIONS_H_
|
|
13
|
+
|
|
14
|
+
#include <gudhi/Simplex_tree/indexing_tag.h>
|
|
15
|
+
|
|
16
|
+
#include <cstdint>
|
|
17
|
+
#include <type_traits> // void_t
|
|
18
|
+
|
|
19
|
+
namespace Gudhi {
|
|
20
|
+
|
|
21
|
+
/** \addtogroup simplex_tree
|
|
22
|
+
* Pre-defined options for the Simplex_tree.
|
|
23
|
+
* @{
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/** Model of SimplexTreeOptions.
|
|
27
|
+
*
|
|
28
|
+
* Default options version of the Simplex_tree.
|
|
29
|
+
*
|
|
30
|
+
* Maximum number of simplices to compute persistence is <CODE>std::numeric_limits<std::uint32_t>::max()</CODE>
|
|
31
|
+
* (about 4 billions of simplices). */
|
|
32
|
+
struct Simplex_tree_options_default {
|
|
33
|
+
typedef linear_indexing_tag Indexing_tag;
|
|
34
|
+
typedef int Vertex_handle;
|
|
35
|
+
typedef double Filtration_value;
|
|
36
|
+
typedef std::uint32_t Simplex_key;
|
|
37
|
+
static const bool store_key = true;
|
|
38
|
+
static const bool store_filtration = true;
|
|
39
|
+
static const bool contiguous_vertices = false;
|
|
40
|
+
static const bool link_nodes_by_label = false;
|
|
41
|
+
static const bool stable_simplex_handles = false;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
/** Model of SimplexTreeOptions.
|
|
45
|
+
*
|
|
46
|
+
* Maximum number of simplices to compute persistence is <CODE>std::numeric_limits<std::uint32_t>::max()</CODE>
|
|
47
|
+
* (about 4 billions of simplices). */
|
|
48
|
+
struct Simplex_tree_options_full_featured {
|
|
49
|
+
typedef linear_indexing_tag Indexing_tag;
|
|
50
|
+
typedef int Vertex_handle;
|
|
51
|
+
typedef double Filtration_value;
|
|
52
|
+
typedef std::uint32_t Simplex_key;
|
|
53
|
+
static const bool store_key = true;
|
|
54
|
+
static const bool store_filtration = true;
|
|
55
|
+
static const bool contiguous_vertices = false;
|
|
56
|
+
static const bool link_nodes_by_label = true;
|
|
57
|
+
static const bool stable_simplex_handles = true;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
/** Model of SimplexTreeOptions.
|
|
61
|
+
*
|
|
62
|
+
* Minimal version of the Simplex_tree. No filtration values are stored and it is impossible to compute persistence
|
|
63
|
+
* with these options. */
|
|
64
|
+
struct Simplex_tree_options_minimal {
|
|
65
|
+
typedef linear_indexing_tag Indexing_tag;
|
|
66
|
+
typedef int Vertex_handle;
|
|
67
|
+
typedef double Filtration_value;
|
|
68
|
+
typedef std::uint32_t Simplex_key;
|
|
69
|
+
static const bool store_key = false;
|
|
70
|
+
static const bool store_filtration = false;
|
|
71
|
+
static const bool contiguous_vertices = false;
|
|
72
|
+
static const bool link_nodes_by_label = false;
|
|
73
|
+
static const bool stable_simplex_handles = false;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
/** @private @brief Model of SimplexTreeOptions, faster than `Simplex_tree_options_default` but note the unsafe
|
|
77
|
+
* `contiguous_vertices` option.
|
|
78
|
+
*
|
|
79
|
+
* Maximum number of simplices to compute persistence is <CODE>std::numeric_limits<std::uint32_t>::max()</CODE>
|
|
80
|
+
* (about 4 billions of simplices). */
|
|
81
|
+
struct Simplex_tree_options_fast_persistence {
|
|
82
|
+
typedef linear_indexing_tag Indexing_tag;
|
|
83
|
+
typedef int Vertex_handle;
|
|
84
|
+
typedef float Filtration_value;
|
|
85
|
+
typedef std::uint32_t Simplex_key;
|
|
86
|
+
static const bool store_key = true;
|
|
87
|
+
static const bool store_filtration = true;
|
|
88
|
+
static const bool contiguous_vertices = true;
|
|
89
|
+
static const bool link_nodes_by_label = false;
|
|
90
|
+
static const bool stable_simplex_handles = false;
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
/** @}*/ // end addtogroup simplex_tree
|
|
94
|
+
|
|
95
|
+
struct No_simplex_data {};
|
|
96
|
+
|
|
97
|
+
// Nested `type` is O::Simplex_data if that exists, No_simplex_data otherwise
|
|
98
|
+
template <class, class=void> struct Get_simplex_data_type { typedef No_simplex_data type; };
|
|
99
|
+
template <class O>
|
|
100
|
+
struct Get_simplex_data_type<O, std::void_t<typename O::Simplex_data>> { typedef typename O::Simplex_data type; };
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
} // namespace Gudhi
|
|
104
|
+
|
|
105
|
+
#endif // SIMPLEX_TREE_SIMPLEX_TREE_OPTIONS_H_
|