Reports until 17:20, Friday 01 March 2024
GQuEST General (GQuEST)
Daniel Grass - posted 17:20, Friday 01 March 2024 (11497)
Optimal Filter for Photon Counting

I wanted to calculate the filter that provides the best SNR^2/Time for Photon Counting. It turns into maximizing an integral squared over another integral with a filter function F(\epsilon). I don't know nearly enough optimization theory to solve this analytically, so I used SciPy's optimizer. To approximate GQuEST's signal and noise, I set the signal to a constant height of 1 and the noise to be a Lorentzian with height 1e6 at 0 and 10 at 1. I then created numpy arrays to act as the noise and the filter. I optimize the SNR^2/Time by changing the filter outputs at all frequencies, ensuring the filter outputs are between 0 and 1.

The resulting filter looks very much like a boxcar filter, with a value of 0 between 0 and 0.48 and 1 between 0.48 and 1. Perhaps this makes sense; either you want to integrate over a frequency or you don't.

If I assume the filter is a boxcar instead of any filter, maximizing SNR^2/Time turns into maximizing a function of 1 variable (from infinite variables).

I plan on writing up my findings in an Overleaf document soon.

Images attached to this report
Non-image files attached to this report