Guide to Quantum State Tomography

Because measurement of a quantum state typically changes the state being measured, getting a complete picture of that state requires measurements on many state copies. Quantum state tomography is the process by which a quantum state is reconstructed using measurements on an ensemble of identical quantum states.

This page is intended to be useful to a variety of visitors, from experimental research groups setting up quantum tomography systems, to students learning about the theory of characterizing quantum states.

We have a collection of background material, as well as a real-time tomography interface which can process experimental data!

Tomography theory

Books and book chapters

Start here: Photonic State Tomography

This chapter from Advances in Atomic, Molecular and Optical Physics (published by Elsevier in 2005) summarizes both the theoretical foundations of our quantum tomography system and the experimental techiniques used to actually implement that system on photonic qubits.

Qubit Quantum State Tomography. This chapter from Quantum State Estimation (published by Springer in 2004 as part of the Lecture Notes in Physics series) is a shorter version of the chapter above, written to emphasize usefulness for any type of qubit implementation with less emphasis on experimental considerations.

Quantum State Estimation. A book containing tomography articles from groups around the world, including the second book chapter presented above. It is fairly long, and contains articles from a variety of points of view.

Journal articles

bibjekyll error: bibtex2html invocation failed

For more Kwiat group publications, see our Publications page.

Quantum Tomography. A large (90 page) review article published by D'Ariano, Paris, and Sacchi.

Real-time tomography interface

In order to implement the tomography techniques discussed above, we have written a group of MATLAB and (more recently) Python programs which perform the analysis necessary to reconstruct a quantum state from experimental data. You can download and run our code yourself, or use the web interface below.

The web interface currently uses the Python code. We are still verifying the interface functionality.

READ ME: Tutorial for the tomography interface

Python code for download Python code as a single file.

MATLAB code for download

state_tomography.tar.gz All of the MATLAB code, in tarred and gzipped. In linux/Unix, the command tar -xzf state_tomography.tar.gz should unzip the files into their own directory. File Size: 20 KB. All of the MATLAB code in zip format. Windows should be able to automatically unzip these files. File Size: 36 KB.

Introduction to the MATLAB code

The MATLAB code is contained within the following directories:

  • ./state_tomography
  • ./state_tomography/private
  • ./quantum_logic
  • ./quantum_logic/measures
  • ./basic_math
  • ./util
The function state_tomography.m is the top level tomography program, and the place you should start when looking through this code. Its function call looks like this:
[rho, intensity, fval]=state_tomography(raw_counts, intensities, conf)


Most functions included in the code contain commented documentation, but in case you have any further questions about the MATLAB or Python code, you should direct them to Kristina Meier.