A Python script simulating a single-photon counting experiment using a Hanbury-Brown and Twiss (HBT) interferometer. The code simulates photon emission from a semiconductor quantum dot and its subsequent detection and processing, including calculations of the source's photon intensity autocorrelation function g²(τ). Realistic experimental parameters such as detector response functions, detector dead time, dark counts, and multiphoton emission are included. This program may serve as a digital companion to physical experimentation, helping to predict, interpret, and cross-verify experimental results. A full description of the code can be found here
This work was undertaken under the supervision of James Fraser and in collaboration with James Godfrey at Queen’s University during the summer of 2020 while Covid collectively kept us at home and out of the lab.
To run this code simply clone this repository and run the photon_counting_experiment.py script with Python (the numpy and matplotlib modules are required):
$ git clone https://github.com/bcolmey/Single-Photon-Counting-Statistics
$ cd Single-Photon-Counting-Statistics
$ python photon_counting_experiment.py
Here are some examples of plots produced by the program.