Skip to content

This is the GitHub repository to the Paper "An efficient volume-preserving MBO scheme for data clustering and classification".

License

Notifications You must be signed in to change notification settings

fabiuskt/VolumeMBO_OS

Repository files navigation

VolumeMBO_OS

License: Apache 2.0 Build

volumembo is a python package providing an implementation of an "efficient volume-preserving MBO scheme for data clustering and classification" discussed in Krämer, Laux, arXiv:2412.17694 (2024). volumembo also provides a C++ backend with an efficient implementation of the volume-preserving MBO scheme.

💻 Installation

Prerequisites

Using volumembo requires the following software installed:

  • Python >= 3.10

In order to build the package from source, the following tools are also needed.

  • A C++20-compliant compiler
  • CMake >= 3.30

Building from source using pip

The following sequence of commands is used to build volumeMBO from source:

git clone https://github.com/fabiuskt/VolumeMBO_OS
cd VolumeMBO_OS
python -m pip install .

Development installation

If you intend to contribute to the development of volumembo, we recommend a locally compiled version using these instructions:

git clone --recurse-submodules https://github.com/fabiuskt/VolumeMBO_OS
cd VolumeMBO_OS
python -m pip install -r requirements-dev.txt
python -m pip install --no-build-isolation --config-settings=build-dir="build" -v -e .

This clones the repository including all submodules, installs the volumembo package, and exposes the CMake build directory as build. The -e (editable) flag allows the change of Python sources of volumembo without reinstalling the package. The -v flag enables verbose output which gives you detailed information about the compilation process that you should include into potential bug reports. To recompile the C++ source, please re-run pip install.

Demo

Example 1 Example 2

📚 Literature

Krämer, F., and Laux, T., "An efficient volume-preserving MBO scheme for data clustering and classification." arXiv:2412.17694 (2024). DOI: 10.48550/arXiv.2412.17694

📜 License

See LICENSE.md.

About

This is the GitHub repository to the Paper "An efficient volume-preserving MBO scheme for data clustering and classification".

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •