Adding mono + commit after the sticky bit.

This commit is contained in:
2025-03-27 09:42:30 +01:00
parent 792e562d48
commit 3d20248efe
62 changed files with 2156 additions and 249 deletions

287
channels/bs_channels.py Normal file → Executable file
View File

@ -1,18 +1,17 @@
# Channels to save at Cristallina endstation
##########################################################################################################
##########################################################################################################
##########################################################################################################
# BS channels
### JUNGFRAU DETECTORS
from slic.core.acquisition.detcfg import DetectorConfig
# TODO: JF settings regarding raw conversion, compression, etc.
detectors = [
"JF16T03V02",
# "JF16T03V01",
# "JF17T16V01",
"JF20T01V01",
"JF16T03V02", # 1.5M from 2025
# "JF16T03V01", # 1.5M from 2022
# "JF17T16V01", # 8M
"JF20T01V01", # IO
# "JF05T01V01", # 0.5M stripsel borrowed from Bernina, now registered in esc network
]
# ALLOWED_PARAMS = dict(
@ -53,26 +52,35 @@ detectors = DetectorConfig(detectors)
detectors_MX = DetectorConfig()
detectors_MX.add("JF17T16V01", adc_to_energy=True, compression=True, crystfel_lists_laser=True, double_pixels_action="mask", factor=11.00, remove_raw_files=True, save_dap_results=True, geometry=True)
detectors_MX.add("JF17T16V01", adc_to_energy=True, compression=True, crystfel_lists_laser=True, double_pixels_action="mask", factor=12.00, remove_raw_files=True, save_dap_results=True, geometry=False)
##########################################################################################################
##########################################################################################################
##########################################################################################################
### BS CHANNELS
###########################################################################
#### CAMERAS COLLECTED
camera_channels = [
# "SARES30-CAMS156-PCO1:FPICTURE", # PCO edge camera for the wavefront analysis (from Alvra)
# "SARES30-CAMS156-SMX-OAV:FPICTURE", # SwissMX OAV camera picture
# "SARES30-CAMS156-SMX-OAV.jet_projection", #SWISSMX oav jET PROJECTION
# "SARES30-CAMS156-SMX-OAV:FPICTURE", # SwissMX OAV camera picture
# "SARES30-CAMS156-SMX-OAV.jet_projection", #SWISSMX oav jET PROJECTION
# "SARES30-CAMS156-XE:FPICTURE", # X-ray eye
]
####################
# Machine gas intensity monitor
channels_gas_monitor = [
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-AVG",
# "SARFE10-PBPG050:SLOW-X",
# "SARFE10-PBPG050:SLOW-Y",
"SARFE10-PBIG050-EVR0:CALCI", # good for correlations with total beam intensity
"SARFE10-PBPG050:HAMP-INTENSITY-CAL",
]
###########################################################################
#### MACHINE
# RF phases and amplitudes
channels_RF = [
@ -145,36 +153,38 @@ channels_RF = [
"S30CB14-RLLE-DSP:AMPLT-VS",
]
channels_Xeye = ["SARES30-CAMS156-XE:intensity",
"SARES30-CAMS156-XE:x_center_of_mass",
"SARES30-CAMS156-XE:x_fit_amplitude",
"SARES30-CAMS156-XE:x_fit_mean",
"SARES30-CAMS156-XE:x_fit_offset",
"SARES30-CAMS156-XE:x_fit_standard_deviation",
"SARES30-CAMS156-XE:x_fwhm",
"SARES30-CAMS156-XE:x_profile",
"SARES30-CAMS156-XE:x_rms",
"SARES30-CAMS156-XE:y_center_of_mass",
"SARES30-CAMS156-XE:y_fit_amplitude",
"SARES30-CAMS156-XE:y_fit_mean",
"SARES30-CAMS156-XE:y_fit_offset",
"SARES30-CAMS156-XE:y_fit_standard_deviation",
"SARES30-CAMS156-XE:y_fwhm",
"SARES30-CAMS156-XE:y_profile",
"SARES30-CAMS156-XE:y_rms",
# "SARES30-CAMS156-XE:FPICTURE",
]
######################
# PBPS053
###########################################################################
#### FRONT-END
####################
# Gas intensity monitor PBPG050
channels_gas_monitor = [
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-AVG",
# "SARFE10-PBPG050:SLOW-X",
# "SARFE10-PBPG050:SLOW-Y",
"SARFE10-PBIG050-EVR0:CALCI", # good for correlations with total beam intensity
"SARFE10-PBPG050:HAMP-INTENSITY-CAL",
]
###################
# Beam position and intensity monitor PBPS053
channels_PBPS053 = [
"SARFE10-PBPS053:INTENSITY",
"SARFE10-PBPS053:XPOS",
"SARFE10-PBPS053:YPOS",
]
####################
# PSSS059
###################
# Spectrometer PSSS059
channels_PSSS059 = [
"SARFE10-PSSS059:FIT-COM",
"SARFE10-PSSS059:FIT-FWHM",
@ -190,7 +200,9 @@ channels_PSSS059 = [
"SARFE10-PSSS059:processing_parameters",
]
# Large bandwidth camera
###################
# Spectrometer PSSS059, large bandwidth camera
channels_PSSS059_LB = [
"SARFE10-PSSS059-LB:FIT-COM",
"SARFE10-PSSS059-LB:FIT-FWHM",
@ -207,18 +219,13 @@ channels_PSSS059_LB = [
"SARFE10-PSSS059-LB:FIT-BRT",
]
###################################
## Bernina channels
# Beam position monitor PBPS113
#channels_Bernina = [
# "SAROP21-PBPS103:INTENSITY",
# "SAROP21-PBPS103:XPOS",
# "SAROP21-PBPS103:YPOS",
# #"SAROP21-PPRM113:FPICTURE",
# "SAROP21-PPRM113:intensity",
# "SAROP21-PPRM113:x_fit_mean",
# "SAROP21-PPRM113:y_fit_mean",
#]
###########################################################################
#### BERNINA BRANCH until DCM
###################
# Bernina beam intensity and position monitor PBPS113 (alias PBPS103)
channels_PBPS113_bernina = [
"SAROP21-PBPS103:INTENSITY",
@ -231,6 +238,10 @@ channels_PBPS113_bernina = [
"SAROP21-PBPS103:YPOS",
]
###################
# Bernina screen PPRM113
channels_PPRM113_bernina = [
"SAROP21-PPRM113:intensity",
"SAROP21-PPRM113:x_center_of_mass",
@ -253,8 +264,15 @@ channels_PPRM113_bernina = [
]
###################################
# Beam position monitor PBPS113
###########################################################################
#### CRISTALLINA BRANCH
###################
## Beam position and intensity monitor PBPS113
channels_PBPS113 = [
"SAROP31-PBPS113:INTENSITY",
"SAROP31-PBPS113:INTENSITY_UJ",
@ -262,11 +280,11 @@ channels_PBPS113 = [
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD1",
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD2",
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD3",
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD4",
"SAROP31-PBPS113:XPOS",
"SAROP31-PBPS113:YPOS",
]
# purpose?
channels_PBPS113_waveforms = [
"SAROP31-PBPS113:Lnk9Ch0-WF-DATA",
"SAROP31-PBPS113:Lnk9Ch1-WF-DATA",
@ -286,8 +304,18 @@ channels_PBPS113_waveforms = [
"SAROP31-PBPS113:Lnk9Ch15-WF-DATA",
]
####################
# Profile monitor PPRM113 (from _proc process)
###################
# Diode PDIM113
channels_PDIM113 = [
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD4",
]
###################
# Beam profile monitor PPRM113
channels_PPRM113 = [
"SAROP31-PPRM113:intensity",
"SAROP31-PPRM113:x_center_of_mass",
@ -309,13 +337,10 @@ channels_PPRM113 = [
# "SAROP31-PPRM113:FPICTURE", # full pictures for debugging purposes at the moment, from _ib process
]
###########################
# Beam position monitor PBPS149
# "SARES30-CAMS156-PCO1:FPICTURE", # PCO edge camera for the wavefront analysis (from Alvra)
# "SARES30-CAMS156-SMX-OAV:FPIC
###########################
# Beam position monitor
###################
# Beam position and intensity monitor PBPS149
channels_PBPS149 = [
"SAROP31-PBPS149:INTENSITY",
"SAROP31-PBPS149:INTENSITY_UJ",
@ -327,6 +352,7 @@ channels_PBPS149 = [
"SAROP31-PBPS149:YPOS",
]
#######################
# Profile monitor PPRM150 (from _proc process)
channels_PPRM150 = [
@ -350,14 +376,32 @@ channels_PPRM150 = [
# "SAROP31-PPRM150:FPICTURE", # full pictures for debugging purposes at the moment, from _ib process
]
####################
# Diode under screen between the KB's PSCD153
channels_PSCD153 = [
"SAROP31-PBPS149:Lnk9Ch0-PP_VAL_PD4",
]
###########################################################################
#### GENERAL PURPOSE EXPERIMENT
#######################
# Cristallina event reciever
channels_EVR = [
"SAR-CVME-TIFALL6:EvtSet",
]
#######################
# Digitizer
channels_digitizer = [
# extra non-beam synchronous channels:
#"SARES30-LTIM01-EVR0:DUMMY_PV1_NBS",
@ -366,37 +410,126 @@ channels_digitizer = [
#"SARES30-LTIM01-EVR0:DUMMY_PV4_NBS",
# other EVR channels:
"SARES30-LSCP1-FNS:CH0:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH1:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH2:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH3:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH4:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH5:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH6:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH7:VAL_GET", # Signal-Background
"SARES30-LSCP1-CRISTA1:CH0:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH2:1", # Waveform trigger
"SARES30-LSCP1-CRISTA1:CH1:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH2:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH3:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH4:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH5:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH6:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH7:1", # Waveform signal
# "SARES30-LSCP1-CRISTA1:CH2:1", # Waveform trigger
"SARES30-LTIM01-EVR0:CALCI", # Calculated intensity
]
#######################
# Other BS channels that we sometimes use
channels_other = [
# "SARFE10-PPRM053:FPICTURE", # TODO: Test if this works here
# "SARFE10-PPRM064:FPICTURE", # TODO: Test if this works here
]
# X-ray eye
channels_Xeye = [
"SARES30-CAMS156-XE:intensity",
"SARES30-CAMS156-XE:x_center_of_mass",
"SARES30-CAMS156-XE:x_fit_amplitude",
"SARES30-CAMS156-XE:x_fit_mean",
"SARES30-CAMS156-XE:x_fit_offset",
"SARES30-CAMS156-XE:x_fit_standard_deviation",
"SARES30-CAMS156-XE:x_fwhm",
"SARES30-CAMS156-XE:x_profile",
"SARES30-CAMS156-XE:x_rms",
"SARES30-CAMS156-XE:y_center_of_mass",
"SARES30-CAMS156-XE:y_fit_amplitude",
"SARES30-CAMS156-XE:y_fit_mean",
"SARES30-CAMS156-XE:y_fit_offset",
"SARES30-CAMS156-XE:y_fit_standard_deviation",
"SARES30-CAMS156-XE:y_fwhm",
"SARES30-CAMS156-XE:y_profile",
"SARES30-CAMS156-XE:y_rms",
# "SARES30-CAMS156-XE:FPICTURE",
]
###########################################################################
#### CRISTALLINA-Q EXPERIMENT
#######################
# Diffractometer 1 bs_channels
ID_dm1 = "SARES31-GPS"
diffractometer_1_bs = [
ID_dm1 + ":ROT2THETA-BS",
ID_dm1 + ":ROTTHETA-BS",
ID_dm1 + ":TRX-BS",
ID_dm1 + ":TRY-BS",
ID_dm1 + ":TRZ-BS",
ID_dm1 + ":TD-BS",
ID_dm1 + ":TRXBASE-BS",
ID_dm1 + ":TRYBASE-BS",
ID_dm1 + ":TRYBASE-Avg-BS",
ID_dm1 + "::CALC1",
ID_dm1 + "::CALC2",
ID_dm1 + "::CALC3",
ID_dm1 + "::CALC4",
]
###########################################################################
#### CHANNEL GROUPS
bs_channels = (
camera_channels
+ channels_gas_monitor
channels_gas_monitor
# + channels_RF
+ channels_Xeye
+ channels_PBPS053
+ channels_PSSS059
+ channels_PSSS059_LB
+ channels_PBPS113
# + channels_PBPS113_waveforms
+ channels_PDIM113
# + channels_PPRM113
+ channels_PBPS149
# + channels_PBPS149_waveforms
# + channels_PPRM150 # only if screen is inserted
+ channels_PSCD153
+ channels_EVR
# + channels_digitizer
+ channels_other
+ channels_digitizer
# + channels_Xeye
# + diffractometer_1_bs
# + camera_channels
)
bs_channels_cristallina_beamline = (
channels_gas_monitor
# + channels_RF
+ channels_PBPS053
+ channels_PSSS059
+ channels_PSSS059_LB
+ channels_PBPS113
# + channels_PBPS113_waveforms
+ channels_PDIM113
# + channels_PPRM113
+ channels_PBPS149
# + channels_PBPS149_waveforms
# + channels_PPRM150 # only if screen is inserted
+ channels_PSCD153
+ channels_EVR
)
bs_channels_bernina_DCM = (
channels_gas_monitor
# + channels_RF