This is a new submission to CRAN.
The{phutil} packageis intended to be a low-level package for hosting persistence data. Itis part of theTDAverse suite of packages, which are designedto provide a collection of packages for enabling machine learning anddata science tasks using persistent homology.
The package currently exposes:
persistenceclass) for hosting persistence data;data.frame,tibble,list,matrix,PHom anddiagramclasses);bottleneck_distance()andwasserstein_distance())and from a sample of persistence diagrams in a pairwise manner (bottleneck_pairwise_distance()andwasserstein_pairwise_distance()).Messages, warnings and errors are relayed to the user using the{rlang} package and the{cli} package which are both licensedunder the MIT license and with no dependency trail.
Computation of distances is performed using the BSD-licensedHera C++ library. The codeinterfacing R and C++ is generated by the header-only{cpp11} package which isMIT-licensed. Computation of pairwise distances is parallelized over thenumber of pairs usingOpenMP.