56 lines
1.0 KiB
Python
56 lines
1.0 KiB
Python
from collections import deque
|
|
from logging import getLogger
|
|
|
|
import numpy as np
|
|
from scipy import signal
|
|
|
|
bg_dim = 10
|
|
|
|
bg1_deq = deque([],bg_dim)
|
|
bg2_deq = deque([],bg_dim)
|
|
bg3_deq = deque([],bg_dim)
|
|
|
|
|
|
initialized = False
|
|
|
|
|
|
|
|
def process(data, pulse_id, timestamp, params):
|
|
ch0 = data["SATES30-LSCP10-FNS:CH0:VAL_GET"]
|
|
ch1 = data["SATES30-LSCP10-FNS:CH1:VAL_GET"]
|
|
ch2 = data["SATES30-LSCP10-FNS:CH2:VAL_GET"]
|
|
ch3 = data["SATES30-LSCP10-FNS:CH3:VAL_GET"]
|
|
evt = data["SAT-CVME-TIFALL5:EvtSet"][154]
|
|
|
|
|
|
|
|
if evt==1:
|
|
bg1_deq.append(ch1)
|
|
bg2_deq.append(ch2)
|
|
bg3_deq.append(ch3)
|
|
|
|
|
|
bg1 = np.mean(np.array(bg1_deq))
|
|
bg2 = np.mean(np.array(bg2_deq))
|
|
bg3 = np.mean(np.array(bg3_deq))
|
|
|
|
|
|
sig1 = ch1/bg1 -1
|
|
sig2 = ch2/bg2 -1
|
|
sig3 = ch3/bg3 -1
|
|
|
|
|
|
ret = {}
|
|
ret["ch1"] = ch1
|
|
ret["ch2"] = ch2
|
|
ret["ch2"] = ch3
|
|
ret["evt"] = evt
|
|
ret["bg1"] = bg1
|
|
ret["bg2"] = bg2
|
|
ret["bg3"] = bg3
|
|
ret["sig1"] = sig1
|
|
ret["sig2"] = sig2
|
|
ret["sig3"] = sig3
|
|
|
|
return ret
|