5c060088e034b1c4ec9c3ed686573c0ee037c12d
Homotopy Continuation Channel Decoding
A project using homotopy continuation methods to perform channel decoding.
This repository contains implementations in multiple programming languages, that are independent of each other. E.g., for each programming language there are dedicated examples.
| Directory | Content |
|---|---|
docs/ |
Documentation |
scripts/ |
Utility scripts |
cpp/ |
C++ source code |
python/ |
Python source code |
Use Python Code
$ python python/examples/toy_homotopy.py -o temp.csv
$ python scripts/plot_solution_curve.py -i temp.csv -p 3d
Use C++ Code
On Host System
$ cmake -B build -S cpp
$ cmake --build build
$ ./build/examples/toy_homotopy/toy_homotopy -o temp.csv
$ python scripts/plot_solution_curve.py -i temp.csv -p 3d
In Docker Container
$ docker build . -t hccd
$ docker run --rm -it -u `id -u`:`id -g` -v $PWD:$PWD -w $PWD hccd cmake -B build -S cpp
$ docker run --rm -it -u `id -u`:`id -g` -v $PWD:$PWD -w $PWD hccd cmake --build build
$ docker run --rm -it -u `id -u`:`id -g` -v $PWD:$PWD -w $PWD hccd ./build/examples/toy_homotopy/toy_homotopy -o temp.csv
$ python scripts/plot_solution_curve.py -i temp.csv -p 3d
Description
Languages
C++
80.8%
Python
18.7%
CMake
0.4%