homotopy-continuation-chann.../README.md

1.3 KiB

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