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! Our code is a quantum open source library available in python and in matlab. We will continue to update and expand on our code as approach this next quantum leap.

Tomography theory


State Tomography and Process Tomography tutorial presented by Spencer Johnson.

These youtube videos will focuses on basic theory of quantum tomography and the application of the tomography of photon polarization qubits.

Books and book chapters

Start here: Photonic State Tomography

This chapter from Advances in Atomic, Molecular and Optical Physics (published in 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

Ancilla-assisted quantum process tomography. J. B. Altepeter, D. Branning, E. R. Jeffrey, T.-C. Wei, P. G. Kwiat, R. Thew, J. L. O'Brien, M. Nielsen, and A. G. White. Physical Review Letters, 2003. [ DOI | pdf ]
Precise creation, characterization, and manipulation of single optical qubits. N. A. Peters, J. B. Altepeter, and E. R. Jeffrey. 2005. [ arXiv | pdf ]
Measurement of qubits. D. F. V. James, P. G. Kwiat, W. J. Munro, and A. G. White. Physical Review A, 2001. [ DOI | pdf ]
Testing the Limits of Nonlocality. J. B. Altepeter. PHD Thesis UIUC, 2006. [  pdf ]

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

For more Kwiat group publications, see our Publications page.

Open source Python Code

We have a seperate website all about our python tomography library. This includes online applications and a overview of the algorithm.

Make sure to checkout our Documentation Page!

Online Interface

We provide a web interface that implements the tomography techniques discussed above.

The web interface currently uses the Python code.


You can download and run our code yourself with the links below. We are still verifying the MATLAB code's functionality.



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. All of the MATLAB code in zip format. Windows should be able to automatically unzip these files.
File Size: 20 KB. File Size: 36 KB.

Click me for More Info!


Most functions included commented documentation, but in case you have any further questions about the MATLAB or Python code feel free to contact us.