An open API service indexing awesome lists of open source software.

https://github.com/phdenzel/bb84


https://github.com/phdenzel/bb84

Last synced: 4 months ago
JSON representation

Awesome Lists containing this project

README

          

#+AUTHOR: phdenzel
#+TITLE: BB84 for SoME3
#+DATE: 2023-08-14 Mon
#+OPTIONS: author:nil title:t date:nil timestamp:nil toc:nil num:nil \n:nil

These are scripts and utilities for the BB84 project.

- ~svg_components.py~: generates the individual SVG files in ~assets/images~
- ~layout.py~: composes SVG Figures from individual SVG components
- ~anim.py~: produces animation frames from PNG-converted SVG Figures
- ~bb84.py~: BB84 algorithm implemented in qiskit

**** Frame naming scheme
#+begin_src
{scene}_{alice:detector}-{bob:detector}.{signal}.{polarisation}
#+end_src

- scene
- ~transmission~
- ~transition~
- ~TODO~
- detector
- 0 - ~assets/images/detector0.svg~
- 1 - ~assets/images/detector1.svg~
- signal
- 0 - ~assets/images/wave0.svg~
- 1 - ~assets/images/wave1.svg~
- etc.
- polarisation
- 0 - no perspective
- 1 - vertical
- 2 - horizontal

*** Download frames/clips

The frames and clips are stored at [[https://mega.nz/folder/9WZmyYCR#E1padX062WtV4hcmmuhTGA][https://mega.nz/folder/9WZmyYCR#E1padX062WtV4hcmmuhTGA]]
and [[https://drive.google.com/drive/folders/1RoI0nVuxQE_02RrG49R2ZYG5NRMj_YNz?usp=drive_link][https://drive.google.com/drive/folders/1RoI0nVuxQE_02RrG49R2ZYG5NRMj_YNz?usp=drive_link]]

*** Requirements

- ~python >= 3.6~
- ~numpy~
- ~matplotlib~
- ~bb84.py~
- ~qiskit~
- ~qiskit-aer~
- ~pylatexenc~
- ~layout.py~ & ~anim.py~
- ~svgutils~
- ~cairosvg~
- ~Pillow~
- ~compile_clips.sh~
- ~ffmpeg~

*** Install

Best to run the code from a virtual python environment (should work with anything above 3.6)
#+begin_src shell
virtualenv venv
source venv/bin/activate
pip install -r requirements.txt
#+end_src