added other stuff

This commit is contained in:
gac-alvra
2023-10-23 18:54:59 +02:00
parent fa2caeff3e
commit 7d3b509e51
5 changed files with 1157 additions and 0 deletions

File diff suppressed because one or more lines are too long

47
dioderata/old/main.py Executable file
View File

@ -0,0 +1,47 @@
#!/usr/bin/env python
from time import sleep
from collections import deque
import numpy as np
import scipy.signal
from zoetrope import aniplot as plt
from bstrd import BS, bsstream
plt.blit = False
# config
diode_PV = "SLAAR11-LSCP1-FNS:CH4:VAL_GET"
events_PV = "SAR-CVME-TIFALL4:EvtSet"
length = 1000
# create channel
diode = BS(diode_PV)
events = BS(events_PV)
# create a buffer for the plotting
values = deque(maxlen=length)
# create the empty plot
pd = plt.plot([0])
# some plot settings
plt.suptitle(diode_PV)
#plt.fig.set_figheight(12)
#plt.fig.set_figwidth(9)
plt.tight_layout()
for counter, data in zip(plt.show(), bsstream):
print(counter)
pp_sig = diode.get()
evt_codes = events.get()
values.append(pp_sig)
xs = np.arange(len(values))
pd.set(xs, values)
# this, I need to move into the library
pd.ax.relim()
pd.ax.autoscale_view()
bsstream.close()

72
dioderata/old/pp_sig.py Executable file
View File

@ -0,0 +1,72 @@
#!/usr/bin/env python
from time import sleep
from collections import deque
import numpy as np
import scipy.signal
from zoetrope import aniplot as plt
from bstrd import BS, bsstream
plt.blit = False
def unpumpedXrays(events, *arrays):
laser = events[:, 18]
darkShot = events[:, 21]
background_shots = np.logical_and.reduce((laser, darkShot))
return [a[background_shots] for a in arrays]
def pumpedXrays(events, *arrays):
fel = events[:, 13]
laser = events[:, 18]
darkShot = events[:, 21]
pumped_shots = np.logical_and.reduce((laser, np.logical_not(darkShot)))
return [a[pumped_shots] for a in arrays]
# config
diode_PV = "SLAAR11-LSCP1-FNS:CH4:VAL_GET"
events_PV = "SAR-CVME-TIFALL4:EvtSet"
length = 1000
# create channel
diode = BS(diode_PV)
events = BS(events_PV)
sigs = np.empty(10)
events = np.empty((10,256))
# create a buffer for the plotting
pp_sig = deque(maxlen=length)
# create the empty plot
pd = plt.plot([0])
# some plot settings
plt.suptitle(diode_PV)
#plt.fig.set_figheight(12)
#plt.fig.set_figwidth(9)
plt.tight_layout()
for counter, data in zip(plt.show(), bsstream):
print(counter)
for i in range(10):
diode_sig = diode.get()
evt_codes = events.get()
sigs.append(pp_sig)
evts.append(evt_codes)
i += 1
sig_p = np.mean(pumpedXrays(events, signals))
sig_un = np.mean(unpumpedXrays(events, signals))
pp_sig.append(-np.log10(sig_p/sig_un))
xs = np.arange(len(pp_sig))
pd.set(xs, pp_sig)
# this, I need to move into the library
pd.ax.relim()
pd.ax.autoscale_view()
bsstream.close()

77
dioderata/old/pp_sig2.py Executable file
View File

@ -0,0 +1,77 @@
#!/usr/bin/env python
from time import sleep
from collections import deque
import numpy as np
import scipy.signal
from zoetrope import aniplot as plt
from bstrd import BS, bsstream
plt.blit = False
def unpumpedXrays(events, *arrays):
laser = events[:, 18]
darkShot = events[:, 21]
background_shots = np.logical_and.reduce((laser, darkShot))
return [a[background_shots] for a in arrays]
def pumpedXrays(events, *arrays):
fel = events[:, 13]
laser = events[:, 18]
darkShot = events[:, 21]
pumped_shots = np.logical_and.reduce((laser, np.logical_not(darkShot)))
return [a[pumped_shots] for a in arrays]
# config
chname_diode = "SLAAR11-LSCP1-FNS:CH0:VAL_GET"
chname_events = "SAR-CVME-TIFALL4:EvtSet"
length = 1000
# create channel
ch_diode = BS(chname_diode)
ch_events = BS(chname_events)
n = 10
sigs = np.empty(n)
evts = np.empty((n, 256))
# create a buffer for the plotting
pp_sigs = deque(maxlen=length)
# create the empty plot
pd = plt.plot([0])
# some plot settings
plt.suptitle(chname_diode)
#plt.fig.set_figheight(12)
#plt.fig.set_figwidth(9)
plt.tight_layout()
for counter, data in zip(plt.show(), bsstream):
print(counter)
for i in range(n):
evts[i] = ch_events.get()
sigs[i] = ch_diode.get()
next(bsstream) # this gets the next set of data
sigs_p = pumpedXrays(evts, sigs)
sigs_u = unpumpedXrays(evts, sigs)
sig_p = np.mean(sigs_p)
sig_u = np.mean(sigs_u)
sig = -np.log10(sig_p/sig_u)
pp_sigs.append(sig)
xs = np.arange(len(pp_sigs))
pd.set(xs, pp_sigs)
# this, I need to move into the library
pd.ax.relim()
pd.ax.autoscale_view()
bsstream.close()

7
run Executable file
View File

@ -0,0 +1,7 @@
#!/bin/bash
source /sf/alvra/applications/miniconda3/etc/profile.d/conda.sh
conda activate adaq
source /sf/eido/source-python
$@