masspcf: A computational package for discrete objects in Python and C++#
masspcf is a Python package with a C++/CUDA backend for GPU-accelerated computations on piecewise constant functions (PCFs) and related discrete objects such as point clouds, persistence barcodes, and distance matrices. The primary audience is practitioners within Topological Data Analysis (TDA) wanting to do statistical analysis on invariants such as stable rank, Euler characteristic curves, Betti curves, and so on.
The core data structures are NumPy-like multidimensional tensors supporting slicing, broadcasting, arithmetic, and reductions. Key operations include pairwise \(L_p\) distance matrices, \(L_2\) kernels, norms, and persistent homology (via Ripser). The resulting distance matrices and kernels can be used directly with scikit-learn and other machine learning libraries for clustering, classification, and dimensionality reduction.
Install masspcf, quick start examples, and tutorials.
In-depth guides on core concepts, tensors, distances, persistence, and GPU acceleration.
Detailed descriptions of the Python API.
Citing masspcf, acknowledgments, and licensing.
Architecture of the C++/CUDA engine: block execution, double buffering, and extensibility.
Release history and version notes.