Skip to content

Instruments to extract photocounting statistics from oscilloscope measurements

License

Notifications You must be signed in to change notification settings

vongostev/OscSiPM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

python 3.6-3.8 pypi Language grade: Python

OscSiPM

Instruments to make a photocounting statistics from histograms and raw oscillograms (made by LeCroy oscilloscope or old Tektronix oscilloscope) of SiPM signal. One can correct the baseline of the oscillogram and compensate a crosstalk noise in the photocounting statistics.

Installation

OscSiPM is available at pip. It may be installed with

pip install oscsipm

How to use?

Import necessary modules:

from oscsipm import PulsesHistMaker, QStatisticsMaker, find_pcrosstalk, compensate

Import an experimental data

datadir = "C:\\expdata\\"
parser = PulsesHistMaker(datadir, vendor='tek', parallel=True, parallel_jobs=-2)
parser.read()

Make a histogram

histfile = "C:\\histograms\\test.txt"
parser.multi_pulse_histogram(frequency=1e6, time_window=10e-9)
parser.save_hist(histfile)

Make a photocounting statistics

histfile = "C:\\histograms\\test.txt"
qmaker = QStatisticsMaker(histfile, amplitude_discrete=0.021, method='manual')
Q = qmaker.Q

Determine a crosstalk probability (if an optical signal is coherent) and compensate it

PDE = 0.4
pcrosstalk, res = find_pcrosstalk(Q, PDE, N=50)
Q1 = compensate(Q, pcrosstalk)

Requirements

See requirements.txt