Skip to content

mqcomplab/CPP-MDANCE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

220 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CPP-MDANCE

A c++ implementation of MDANCE, a flexible n-ary clustering package for all applications

Getting Started with MDance

Before you begin, make sure you have Eigen installed.

Step 1: get source code

To build MDance from source, first clone the GitHub repository:

git clone https://github.com/mqcomplab/CPP-MDANCE.git

Then navigate into the directory:

cd CPP-MDANCE

Step 2: Configure with CMake

Run CMake to generate the build configuration files:

cmake -S . -B build

(Optional) You can choose from three different build types:

  1. Release (Default)
  2. Debug
  3. RelWithDebInfo To specify a different build type:
cmake -S . -B build -DCMAKE_BUILD_TYPE=<BuildType>

Step 3: Build MDance

Compile MDance by running:

cmake --build build

Step 4: Run Tests

Navigate to build/tests/ folder:

cd build/tests/

Use ctest to execute the tests:

ctest

An example output is:

    Start 1: mdance_tests
1/1 Test #1: mdance_tests .....................   Passed    2.71 sec

100% tests passed, 0 tests failed out of 1

Total Test time (real) =   2.71 sec

TODO: add instructions for installation and figure out how to make CPP-MDANCE easily portable.

Important files

  • src/cluster/KmeansRex/KmeansRexCore.cpp: Has NANI implementation
  • src/cluster/divine.cpp: Has DIVINE implementation
  • src/tools: Has supporting functions, such as BTS, type definitions, and score calculations.
  • TODO: implement HELM
  • tests/runTests.sh: Bash script for testing code by comoparing output to that of the Python library
    • tests/data: stores datasets
    • tests/results: Stores the results of the test. The results themselves are stored in the *Results.txt files, while the time and any error messages are stored in *Time.txt files

About

A c++ implementation of MDANCE, a flexible n-ary clustering package for all applications

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors