Spectrally-resolved higher-order photon statistics of spontaneous parametric down-conversion
Data files
Sep 18, 2025 version files 243.07 GB
-
all_p13wave760_spc.tar
6.02 GB
-
all_p13wave760_spc.tar.sha256
352 B
-
all_p13wave764_spc.tar
6.03 GB
-
all_p13wave764_spc.tar.sha256
352 B
-
all_p13wave768_spc.tar
6.03 GB
-
all_p13wave768_spc.tar.sha256
352 B
-
all_p13wave772_spc.tar
6.03 GB
-
all_p13wave772_spc.tar.sha256
352 B
-
all_p13wave776_spc.tar
6.03 GB
-
all_p13wave776_spc.tar.sha256
352 B
-
all_p13wave780_spc.tar
6.03 GB
-
all_p13wave780_spc.tar.sha256
352 B
-
all_p13wave784_spc.tar
6.02 GB
-
all_p13wave784_spc.tar.sha256
352 B
-
all_p13wave788_spc.tar
6.03 GB
-
all_p13wave788_spc.tar.sha256
352 B
-
all_p13wave792_spc.tar
6.03 GB
-
all_p13wave792_spc.tar.sha256
352 B
-
all_p13wave796_spc.tar
6.02 GB
-
all_p13wave796_spc.tar.sha256
352 B
-
all_p20wave760_spc.tar
6.05 GB
-
all_p20wave760_spc.tar.sha256
352 B
-
all_p20wave764_spc.tar
6.08 GB
-
all_p20wave764_spc.tar.sha256
352 B
-
all_p20wave768_spc.tar
6.08 GB
-
all_p20wave768_spc.tar.sha256
352 B
-
all_p20wave772_spc.tar
6.07 GB
-
all_p20wave772_spc.tar.sha256
352 B
-
all_p20wave776_spc.tar
6.06 GB
-
all_p20wave776_spc.tar.sha256
352 B
-
all_p20wave780_spc.tar
6.05 GB
-
all_p20wave780_spc.tar.sha256
352 B
-
all_p20wave784_spc.tar
6.06 GB
-
all_p20wave784_spc.tar.sha256
352 B
-
all_p20wave788_spc.tar
6.05 GB
-
all_p20wave788_spc.tar.sha256
352 B
-
all_p20wave792_spc.tar
6.05 GB
-
all_p20wave792_spc.tar.sha256
352 B
-
all_p20wave796_spc.tar
6.04 GB
-
all_p20wave796_spc.tar.sha256
352 B
-
all_p30wave760_spc.tar
6.09 GB
-
all_p30wave760_spc.tar.sha256
352 B
-
all_p30wave764_spc.tar
6.13 GB
-
all_p30wave764_spc.tar.sha256
352 B
-
all_p30wave768_spc.tar
6.13 GB
-
all_p30wave768_spc.tar.sha256
352 B
-
all_p30wave772_spc.tar
6.13 GB
-
all_p30wave772_spc.tar.sha256
352 B
-
all_p30wave776_spc.tar
6.12 GB
-
all_p30wave776_spc.tar.sha256
352 B
-
all_p30wave780_spc.tar
6.11 GB
-
all_p30wave780_spc.tar.sha256
352 B
-
all_p30wave784_spc.tar
6.09 GB
-
all_p30wave784_spc.tar.sha256
352 B
-
all_p30wave788_spc.tar
6.07 GB
-
all_p30wave788_spc.tar.sha256
352 B
-
all_p30wave792_spc.tar
6.07 GB
-
all_p30wave792_spc.tar.sha256
352 B
-
all_p30wave796_spc.tar
6.05 GB
-
all_p30wave796_spc.tar.sha256
352 B
-
all_p40wave760_spc.tar
6.13 GB
-
all_p40wave760_spc.tar.sha256
352 B
-
all_p40wave764_spc.tar
6.17 GB
-
all_p40wave764_spc.tar.sha256
352 B
-
all_p40wave768_spc.tar
6.17 GB
-
all_p40wave768_spc.tar.sha256
352 B
-
all_p40wave772_spc.tar
6.15 GB
-
all_p40wave772_spc.tar.sha256
352 B
-
all_p40wave776_spc.tar
6.14 GB
-
all_p40wave776_spc.tar.sha256
352 B
-
all_p40wave780_spc.tar
6.12 GB
-
all_p40wave780_spc.tar.sha256
352 B
-
all_p40wave784_spc.tar
6.11 GB
-
all_p40wave784_spc.tar.sha256
352 B
-
all_p40wave788_spc.tar
6.09 GB
-
all_p40wave788_spc.tar.sha256
352 B
-
all_p40wave792_spc.tar
6.06 GB
-
all_p40wave792_spc.tar.sha256
352 B
-
all_p40wave796_spc.tar
6.06 GB
-
all_p40wave796_spc.tar.sha256
352 B
-
README.md
15.68 KB
Abstract
Time-correlated single photon counting (TCSPC) data is obtained using a Becker & Hickl DPC-230 correlation board in order to study the photon statstics of the incident light beam as functions of different parameters. Here specifically, the photon statistics of spontaneous parametric down-conversion (SPDC) exhibit dependencies on wavelength, pump power, and coincidence time. Notably, the average photon numbers were found to asymmetrically increase with increasing pump power around the degenerate wavelength of emission. By the coupling of the detection scheme to a spectrometer, studying different bandwidths within the emission revealed that shorter wavelengths increased nonlinearly with pump power, while longer wavelengths showed more linear behavior, indicating a wavelength-dependent efficiency in the generation of the SPDC. We employ the use of a four-detector Hanbury Brown and Twiss Interferometer to study the photon statistics of the signal beam, where the idler serves as the herald. The measured statistics were found to be best described by a Negative Binomial Distribution, which is a characteristic of thermal light sources. The detection and characterization of complex light sources has wide ranging applications in the fields of quantum metrology, quantum communications, and quantum computing, more specifically, a system that is sensitive to wavelength and photon number distribution.
Dataset DOI: 10.5061/dryad.c2fqz61nc
Description of the data and file structure
The data in each .spc file is saved as binary data, and needs to be unpacked using high times and low times as outlined in the Becker & Hickl documentation. One example of how to unpack the .spc files using Python is shown https://github.com/laserlab/spcReader. Once the required packages are installed, the .spc file would be unpacked and put into a Pandas DataFrame by running the following commands
import spcReader
spc_path = "/path/to/file.spc"
spc_object = spcReader.readspc(spc_path)
df = spc_object.topandas()
df.head(10)
The provided git repo also provides the option of unpacking the .spc to ascii with the toascii function or to arrays with the datatoarray function. Using this library, the resulting df would have one column for each channel in the measurement and an index which reflects the absolute time. Channel 20 corresponds to the reference pulse channel, and the other four channels are the single photon detectors (APDs).
Within the .spc files, events are recorded in time-correlated single photon counting (TCSPC) fashion, so the data is recorded as the relative time difference between a reference channel and detector events. The photon events, their reference pulse and relative time values are used to reconstruct the photon statistics of the incident light. Here, the photon statistics of spontaneous parametric down-conversion (SPDC) are studied as functions of wavelength, pump power, and coincidence time. The wavelength dependence is studied through utilizing a spectrometer, where the grating can be rotated to adjust which portions of the spectrum coupled into the fiber input of the Hanbury Brown and Twiss (HBT) setup.
Based on the observed spectra there are 10 wavelength measurements obtained for each pump power used. There is a known offset with the particular grating we are using, so the measured wavelengths need to be corrected by a factor of +23 nm. The four pump powers used are approximately 39 mW, 33 mW, 25 mW, and 14 mW. The associated files are named by their pump power and uncorrected grating wavelength, where p40 corresponds to 39 mW, p30 corresponds to 33 mW, and so on. For each measurement, the maximum file size is 5 minutes and each measurement was run for 100 minutes, so every measurement has 20 associated files. Here, the 20 .spc files are put together in a single .tar file and a hash file to verify the integrity of the .tar is also created (.sha256).
Files and variables
File: all_p13wave764_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave768_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave772_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave776_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave780_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave788_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave792_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave796_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave760_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave764_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave768_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave776_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave760_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave780_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave772_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave784_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave788_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave792_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p20wave796_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave760_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave764_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave768_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave772_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave780_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave776_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p13wave784_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave784_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave788_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave792_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave760_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave764_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave768_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p30wave796_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave776_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave772_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave780_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave784_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave788_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave792_spc.tar.sha256
Description: hash file to verify the .tar file containing the .spc files.
File: all_p40wave796_spc.tar.sha256
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave780_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave784_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave788_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave792_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave768_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave760_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave796_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave764_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave796_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave768_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave788_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave772_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave780_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave792_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave776_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p13wave784_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave760_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave768_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave764_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave776_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave784_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave772_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave792_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave772_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave796_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave780_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p20wave788_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave760_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave792_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave764_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave784_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave796_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave788_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave768_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave776_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p30wave780_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave760_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave776_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave764_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
File: all_p40wave772_spc.tar
Description: contains 20 files with the associated measurement in binary data stored as .spc files.
Methods
Since each cycle saved corresponds to five minutes of data, during the unpacking of each .spc file, the files are first concatenated together to create a master Pandas DataFrame reflecting the same information as the individual .spc files. Since the reference pulse numbers restart for every cycle, the maximum value from the preceding file is added to the reference pulse numbers of the next file in an effort to make the reference pulse number not repeat itself unless there are multiple photon detections within that reference pulse.
To count simultaneous events, the data is grouped by the reference pulse and dt (relative time) values using the pd.groupby function. The number of bins in the pd.groupby function can effectively change the coincidence window being applied to count the multi-photon events. Here, five coincidence windows are used, ranging from approximately 165 ps to 823 ps in steps of about 165 ps, resulting in five different coincidence windows. Since each measurement has a corresponding wavelength and pump power, the five coincidence times make the total number of data sets 200.
After counting the coincidence detection events, the probability distributions for each measurement are reconstructed by taking the frequencies of the photon number events (from 1 to 4 since there are four detectors) and applying a derived single photon efficiency of the setup along with the normalization factor of detection opportunities. There is also a photon number resolving correction which is applied to the probability distributions and described in detail in the supplemental of the associated publication.
The probability distributions are then fit using scipy.optimize.differential_evolution, which minimizes a loss function defined here as a least squares difference. The fitting functions used are a Negative Binomial (scipy.stats.nbinom.pmf), Poisson (scipy.stats.poisson.pmf) and a convolution of the two (using np.convolve). Based on the fittings, the average photon numbers are extracted to quantitatively study their dependencies on wavelength, pump power, and coincidence time.
