/spin_qudit_tomography

Some codes written for a paper on spin qudit tomography.

Primary LanguagePythonMIT LicenseMIT

Spin Qudit Tomography

This repository contains some codes I wrote for this paper on spin qudit tomography. Disclaimer: I (Michael A. Perlin) am merely a physicist, with little training in "proper" code design and maintenance. I am happy to make these codes publicly available, but I do not have the time to clean them up or make an API. The codes here should therefore be considered "research grade", and may require manual inspection / cleanup for custom use. If you do make use of these codes, I only ask that cite my paper accordingly.

All codes here are written in python3, and external dependencies include the wigner and py3nj libraries.

Contents:

  • qudit_tomo_methods.py is the main "methods" file for this project.
  • compute_tomo_times.py computes the classical error scale, quantum error scale, or reconstruction error for various spin qudit dimensions. Results are printed to a data file, together with the mean computation time for each qudit dimension.
  • plot_tomo_times.py plots the data generated by compute_tomo_times.py to generate Figure 2 here.
  • compute_axis_num_data.py generates random measurement axes and computes their associated quantum error scale. Results are printed to a data file, together with the mean computation time for number of axes.
  • plot_axis_num_data.py plots some of the data generated by compute_axis_num_data.py to generate Figure 3 here.
  • compute_opt_angles.py computes the quantum error scale associated with different choices of the polar angle that must be chosen to carry out the tomography protocol in this paper.
  • plot_opt_angles.py plots some of the results from compupe_opt_angles.py to generate Figures 4 and 5 here.
  • compute_opt_axes.py first generates random measurement axes, then takes the best found measurment axes and tries to further optimize them by minimizing their associated quantum error scale. This is the script that generates the data in ./data/best_axes_d*.txt.