Skip to main content

Light Weight Homology Framework

Project description

LHF: Lightweight Homology Framework

LHF is a homology framework designed for enabling modular pipelines for preprocessing and experiments around computing persistent homology. The base pipelines enable LHF to compute persistence intervals of an input point cloud by evaluating the distance matrix, building the simplicial complex, and reducing the complex to identify the persistence intervals at different dimensions.

Additional pipelines have been created for preprocessing, approximations of the boundary matrix, approximate simplicial complexes representing the input point cloud, boundary extraction, and upscaling based on previous studies detailed in several of the references below. The intent for LHF is to provide a modular framework to continue exploring, developing, and evaluating mechanisms for approximating or optimizing the computation of persistent homology over an input point cloud.


REQUIREMENTS

  • C++14

  • CMake

  • OpenMPI (if build / run for distributed)

  • Numpy


Installing

$ pip install lhf

RUNNING

S    python3 -m pyLHF <Arguments>

ARGUMENTS

Argument Shorthand Description Default
"--preprocessor" "-pre" Preprocessing Method None
"--clusters" "-k" Number of preprocessing clusters 5
"--dimensions" "-d" Max dimensions to run at 3
"--epsilon" "-e" Epsilon value for simplicial complexes 5
"--lambda" "-l" Lambda value (decay factor) for DenStream .25
"--mode" "-m" Mode to run LHF in (fast, slidingwindow, upscaling, etc.) default
"--complexType" "-c" Simplicial complex constructed SimplexArrayList
"--inputFile" "-i" File to read into pipeline None
"--outputFile" "-o" File to output to None
"--debug" "-x" Debug mode 0

EXAMPLES:

$    python3 -m pyLHF -m fast --inputFile testData.csv
$    python3 -m pyLHF --pipeline distMatrix.distMatrix.distMatrix -i testData.csv -o output.csv

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lhf-1.2.1-py3-none-manylinux_2_28_x86_64.whl (4.1 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

File details

Details for the file lhf-1.2.1-py3-none-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: lhf-1.2.1-py3-none-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 4.1 MB
  • Tags: Python 3, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.10.1 urllib3/1.26.14 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.8

File hashes

Hashes for lhf-1.2.1-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1a14e63bd4dd4117583b82b23e02281c8340c4094e92d1a175caad7be502113b
MD5 b1a4e593514682ea3ed5a4a12469a345
BLAKE2b-256 8fc2146a8db1243fb1a6bb1158c287e94d3a868d365f9a8a059bc4773b987dad

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page