Create a Custom Channel
The simulator is designed for black-box use, but it is possible to implement your own channel.
If you want to create your own decoder without dealing with the complex, factory-heavy binary, example CVQKD chains are provided in src/examples/.
Understanding the Examples
The example files illustrate how AFF3CT tasks are connected depending on the channel, simulation mode, and coding scheme. Their filenames follow this convention:
<channel>_<coding scheme>[_pip|_seq]
- The channel name comes first, then the coding scheme type.
- The suffix
_pipindicates a pipeline, and_seqindicates a sequence.
Info
When a coding scheme is described in the filename as syndrome concatenation WITHOUT coset, it uses the original AFF3CT decoder. Such an example is provided for educational purposes only as their \(\beta\)/FER performance will be lower than with the modified decoder.
Creating a Custom File
Once you have created your own .cpp file (or adapted an example) in src/, register it in CMakeLists.txt:
1. Add the executable:
add_executable(new_cpp_file_binary_name
$<TARGET_OBJECTS:CVQKD-obj>
${CMAKE_CURRENT_SOURCE_DIR}/src/new_cpp_file.cpp
)