Wiki source code of The FLASH HDF5 structure

Version 104.2 by sndueste on 2025-12-15 13:12

Show last authors
1 == Contents ==
2
3
4
5 {{toc/}}
6
7
8 == General information about HDF5 ==
9
10 HDF5 is a data format maintained by the HDF group. For detailed general information see [[here>>url:https://portal.hdfgroup.org/display/support||shape="rect"]]
11
12 To download the HDF5 Viewer click [[here>>url:https://portal.hdfgroup.org/display/support/Download+HDFView||shape="rect"]]
13
14 For use on the DESY Maxwell or PAL (max-fsc or pal) **hdfview** is available in the xray module :
15 {{code language="none"}}> module load xray{{/code}}
16 {{code language="none"}}> hdfview{{/code}}
17
18 or you can use
19
20 {{code language="none"}}
21 > silx view
22 {{/code}}
23
24
25 [[Contents>>doc:||anchor="Contents"]]
26
27 == The FLASH HDF5 format ==
28
29 FLASH provides a conversion of its data acquisition (DAQ) to the commonly used [[HDF5>>url:https://www.hdfgroup.org/solutions/hdf5/||shape="rect"]] format. Correlated  data are mapped by a primary index called **train ID**. Every data set has an individual index of train IDs to identify the data even when data are missing or deviate in update rate. If the data set of choice contains gaps,  users have to decide how to treat missing values. DAQ channels are spread across various files with one file name pattern for each DAQ. This means users have to assemble data from different files if necessary.
30
31 The hierarchy is realized using a human readable named HDF tree with each DAQ channel containing the data sets "//value//" and "//index//". Additionally, the HDF group //zraw// contains a tree of the original DAQ channel names.
32
33 Reference implementation, which follows the concept of Python libraries like Pandas, Xarray, or Dask, is given below.
34
35 {{expand title="Discontinued HDF formats"}}
36 === Comparison to FLASH's deprecated HDF formats ===
37
38 Before 2021, FLASH provided two different HDF formats formally known as //near-online// and //offline// HDF files.
39
40 All data sets were aligned by the same global index by filling in missing data. Fast DAQ channels  (pulse synchronous data - update 10 Hz) are filled in by NaN or 0, slow channels (not pulse synchronous data - update e.g. 1 Hz ) are interpolated by the DAQs libraries, by keeping the value constant up to the next change.
41
42 While the near-online HDF files were converted live during the beamtime, the offline HDF files were manually compiled weeks/months later. Near-online HDF files were used by a provided API [[BeamtimeDaqAccess>>url:https://confluence.desy.de/display/FLASHUSER/Near-Online+data+analysis#Near-Onlinedataanalysis-BriefUserGuidetoBeamtimeDAQAccess||shape="rect"]], which also searches for DAQ channels in files. With assembled files "by run", all DAQ channels were existing in the same HDF file. While shorter runs usually fitted into one file, longer runs still had to be aggregated over several files. The creation of the assembled type of files still involves the use of fairly unstable DAQ Mex-functions As the environment required for using the Mex-functions is already deprecated, its continued existence is uncertain.
43
44 The HDF hierarchy is almost identical in all formats. While in the the recent format each DAQ channel contains the data sets "value" and "index", the deprecated format had one data set for each DAQ channel. The deprecated formats supplies no time axis parameters for spectra data types.
45
46
47 **HDF5 example files (old format)**
48
49 Here we have a few HDF5 samples (User data combined with Photon diagnostics data) from a few beamtimes showing the different kind options.
50
51 [[image:attach:image2019-10-21_17-2-50.png||thumbnail="true" width="300"]] [[download HDF5 (Images @ FL2)>>url:https://desycloud.desy.de/index.php/s/nyEgeCWJFC4gao2||shape="rect"]]
52
53
54 [[~[~[image:attach:image2019-10-22_10-52-27.png~|~|thumbnail="true" width="300"~]~]download HDF5 (GHz ADC and OPIS @ FL2)>>url:https://desycloud.desy.de/index.php/s/AeA2kPNNnZgX95A||shape="rect"]]
55
56
57
58 {{/expand}}
59
60 === HDF examples: ===
61
62 * ADC data as example for **fast** **data** (10 Hz):            
63
64 [[image:attach:image2020-11-16_15-26-28.png||height="250"]]
65
66 * The //average// FEL pulse energy as example for the **slow** **data**. Here the data is not saved with 10 Hz  - thus not for every FEL pulse train.  The data is typically saved with 1 Hz if the values are changing (like the FEL energy) and every about 20 sec if there is no change for longer time ( e.g. motor set values). Thus to use the data together with the "fast" one, one has to interpolate the data as explained in the examples in the repos below show (e.g. {{code language="none"}}df['GMD_T_average'] = df['GMD_T_average'].interpolate(method='linear'){{/code}})
67
68 ( as example only every 10th train ID is listed in the HDF group "index")
69
70 [[image:attach:image2020-11-16_15-31-45.png||height="250"]]
71
72 * (((
73 //zraw// group contains the **original DAQ (DOOCS) names**
74 )))
75
76 of the properties saved in the DESY internal raw format. (For experts)
77
78
79 [[image:attach:image2020-11-16_16-26-3.png||height="400"]]
80
81 {{info}}
82 === There are different options that help you to work with the FLASH HDF5 data in Python ===
83
84 * The currently developed option for large data sets: [[the FAB package>>url:https://hasfcpkg.desy.de/fab/fab.html||shape="rect"]] ... see below
85 * and for smaller projects:  (% class="Object" %)[[https:~~/~~/gitlab.desy.de/christopher.passow/flash-daq-hdf>>url:https://gitlab.desy.de/christopher.passow/flash-daq-hdf||shape="rect"]]
86
87 (% class="Object" %)See also the collection of Demo data and sample scripts : [[Collection of HDF5 sample data from different beamlines>>doc:FLASHUSER.Offline data analysis (DAQ).Collection of HDF5 sample data from different beamlines.WebHome]] and [[DEMO - Working with FLASH data>>doc:FLASHUSER.Offline data analysis (DAQ).DEMO - Working with FLASH data.WebHome]]
88 {{/info}}
89
90
91
92 == Complete list of recordable parameters ==
93
94 The complete list for the relation between DOOCS names and HDF5 names for the recordable parameters can be found in [[DESY's Repository>>url:https://stash.desy.de/projects/CS/repos/pah/browse/src/camp/data/channel2HdfName.dat||shape="rect"]].
95
96 == Most popular FLASH parameters and their names in HDF5, DOOCS and (.raw) DAQ ==
97
98 {{id name="DOOCSparameters"/}}
99
100
101 === FLASH1 ===
102
103
104 In the Shutdown 2024 / 2025  the complete photon diagnostic and experiment control was renewed and thus the Doocs names and also some HDF5 names had to be changed. The new naming will be documented here as soon as the systems are online again.
105
106 The previously used naming scheme (2024 and before) can be found here:
107
108 {{expand expanded="false" title="FLASH1 naming scheme used until 2024"}}
109 ==== (% id="cke_bm_8853497S" style="display:none" %) (%%)Beamline info (FLASH1) ====
110
111 {{code language="none"}}/FL1/Beamlines/Attenuator/pressure{{/code}}
112 //always saved (PBD)//
113 DOOCS prop : {{code language="none"}}FLASH.FEL/GAS_DOSING/FL1.ATTENUATOR/PRESSURE{{/code}}
114 DAQ channel: {{code language="none"}}FLASH.FEL/GAS_DOSING/FL1.ATTENUATOR/PRESSURE{{/code}}
115 desc: set pressure in the gas attenuator
116 units: mbar
117
118 {{code language="none"}}/FL1/Beamlines/BL/Fast shutter/open{{/code}}
119 //always saved (PBD)//
120 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/BL.SHUTTER/CH00.TD{{/code}}
121 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/BL.SHUTTER{{/code}}
122 desc: BL Beamline Fast shutter state: 1 is open, 0 is closed ( for technical reasons there are 100 vales of this state saved ...)
123 units: none
124
125 {{code language="none"}}/FL1/Beamlines/PG/Fast shutter/open{{/code}}
126 //always saved (PBD)//
127 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/PG.SHUTTER/CH00.TD{{/code}}
128 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/PG.SHUTTER{{/code}}
129 desc: PG Beamline Fast shutter state: 1 is open, 0 is closed ( for technical reasons there are 100 vales of this state saved ...)
130 units: none
131
132 {{code language="none"}}/FL1/Beamlines/BL/Filters/BL filter wheel/position filter 1{{/code}}
133 //always saved (PBD)//
134 DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
135 DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
136 desc: Position of the BL filter wheel 1 - to correlate with the filter material please look [[here>>doc:FS-FLASH USER tmp.jddd-linked help pages.Filter-Units.Filter wheels in FLASH1 and FLASH2.WebHome]]
137 units: degree
138
139 {{code language="none"}}/FL1/Beamlines/BL/Filters/BL filter wheel/position filter 2{{/code}}
140 //always saved (PBD)//
141 DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
142 DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
143 desc: Position of the BL filter wheel 2 - to correlate with the filter material please look [[here>>doc:FS-FLASH USER tmp.jddd-linked help pages.Filter-Units.Filter wheels in FLASH1 and FLASH2.WebHome]]
144 units: degree
145
146 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 1{{/code}}
147 //always saved (PBD)//
148 DOOCS prop : = TTF2.FEL/BDAF1/BDA.F1/FW.MOTOR.POS=
149 DAQ channel: {{code language="none"}}TTF2.FEL/BDAF1/BDA.F1/FW.MOTOR.POS{{/code}}
150 desc: Position of the PG filter wheel 1
151 units: degree
152
153 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 2{{/code}}
154 //always saved (PBD)//
155 DOOCS prop : {{code language="none"}}TTF2.FEL/BDAF2/BDA.F2/FW.MOTOR.POS{{/code}}
156 DAQ channel: {{code language="none"}}TTF2.FEL/BDAF2/BDA.F2/FW.MOTOR.POS{{/code}}
157 desc: Position of the PG filter wheel 2
158 units: degree
159
160 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 3{{/code}}
161 //always saved (PBD)//
162 DOOCS prop : {{code language="none"}}TTF2.FEL/PGFILTERS/PGFILTERS/FW.MOTOR.POS{{/code}}
163 DAQ channel: {{code language="none"}}TTF2.FEL/PGFILTERS/PGFILTERS/FW.MOTOR.POS{{/code}}
164 desc: Position of the PG filter wheel 3
165 units: degree
166
167
168
169 NOTE: Aperture positions in the beamline as well as the positions of the beam steering mirrors are also saved. For more Info contact your local contact
170
171 [[Contents>>doc:||anchor="Contents"]]
172
173
174 ==== Photon Diagnostics SASE ([[GMD>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/gmd_intensity_and_position/index_eng.html||shape="rect"]]) ====
175
176 {{expand title="Discontinued GMD format (used until 2021)"}}
177 (% style="color:#000000" %)**Discontinued GMD data recording / evaluation  (VME + PhotonFlux ML server)**
178
179 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
180 //always saved (PBD)//
181
182 (% style="color:#000000" %)DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT04/VAL{{/code}} (%%)
183 (% style="color:#000000" %)DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENPULSEIC{{/code}}(%%)
184 desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator (ion current)
185 units : microJ
186
187 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
188 //always saved (PBD)//
189
190 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT34/VAL{{/code}}
191 DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.USER{{/code}}
192 desc :Energy per pulse Tunnel (from e-) - the values are set to "0" if there was no SASE beam in the FEL
193 units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FS-FLASH USER tmp.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
194
195 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel (raw){{/code}}
196 //always saved (PBD)//
197 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT14/VAL{{/code}}
198 DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.FF{{/code}}
199 desc :Energy per pulse Tunnel (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise
200 units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FS-FLASH USER tmp.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
201
202 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy BDA{{/code}}
203 //always saved (PBD)//
204
205 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT05/VAL{{/code}}
206 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENPULSEIC{{/code}}
207 desc : calibrated average SASE Energy/pulse measured in the BDA (in the experimental hall) after the attenuator (ion current)
208 units : microJ
209
210 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA{{/code}}
211 //always saved (PBD)//
212
213 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT35/VAL{{/code}}
214 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.USER{{/code}}
215 desc :Energy per pulse BDA (from e-) - the values are set to "0" if there was no SASE beam in the FEL
216 units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FS-FLASH USER tmp.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
217
218 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA (raw){{/code}}
219 //always saved (PBD)//
220 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT15/VAL{{/code}}
221 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.FF{{/code}}
222 desc :Energy per pulse BDA (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise
223 units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision)** [[see here for help>>doc:FS-FLASH USER tmp.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
224 {{/expand}}
225
226
227 (% style="color:#000000; letter-spacing:0px" %)**NEW (since 2021) GMD data recording / evaluation  (same format as FLASH2 and XFEL)**
228
229 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
230 //always saved (PBD)//
231 (% style="color:#000000" %)DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL1.TUNNEL/PHOTONFLUX.UJ{{/code}} (%%)
232 (% style="color:#000000" %)DAQ channel: {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL1.TUNNEL/PHOTONFLUX.UJ{{/code}}
233
234 desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator
235 units : microJ
236
237
238 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
239 //always saved (PBD)//
240
241 (% style="color:#000000" %)DOOCS prop : (%%)
242 (% style="color:#000000" %){{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL1.TUNNEL/INTENSITY.TD{{/code}}DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL1.TUNNEL/INTENSITY.TD{{/code}}
243
244 desc : Energy per pulse measured in the Tunnel.  In addition measurement errors and beam position are included for EACH pulse in the pulse train  !! (see below)
245 units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision)** [[see here for help>>doc:FS-FLASH USER tmp.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
246
247 {{info title="GMD pulse resolved data structure"}}
248 For every pulse in the pulse train the information is saved:
249
250 1. **Intensity per pulse** (a.u. (more or less µJ ))
251 1. Intensity per pulse (auxillary GMD) - not used
252 1. Position horizontal (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
253 1. Position vertical (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
254 1. **Intensity per pulse sigma** (a.u. (more or less µJ ), (% style="color:#000000" %)This parameter gives an indication of the error of the measurement of the pulse energy. This takes signal to noise,  detector resolution, uncertainties in crossection etc into account. (it is NOT the measurement of the statistical fluctuation of the SASE pulses)(%%))
255 1. Position horizontal sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
256 1. Position vertical sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
257 1. Combined warning and error flags
258
259 The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 
260 file
261
262 [[image:image2021-2-9_10-51-6.png]]
263
264
265 {{/info}}
266
267 All values for the GMD are also available for the** BDA GMD **which is located in the experimental hall down stream the gas attenuator. If the attenuator is on the ratio between BDA and Tunnel signal shows the attenuation. **BUT NOTE** that the filter units  are downstream the GMD. So if filters  are used this influence is NOT measured by the GMD BDA !
268
269
270 Besides  pulse energy the GMD also provides information about the beam position
271
272 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal{{/code}}
273 //always saved (PBD)//
274 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
275 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
276 desc :Beam position of the photon Beam determined by the GMD (BDA, x=horizontal)
277 units : mm
278
279 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical{{/code}}
280 //always saved (PBD)//
281 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
282 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
283 desc :Beam position of the photon Beam determined by the GMD (BDA, y=vertical)
284 units : mm
285
286 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal{{/code}}
287 //always saved (PBD)//
288 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
289 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
290 desc :Beam position of the photon Beam determined by the GMD (TUNNEL, x=horizontal)
291 units : mm
292
293 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical{{/code}}
294 //always saved (PBD)//
295 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
296 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
297 desc :Beam position of the photon Beam determined by the GMD (TUNNEL, y=vertical)
298 units : mm
299
300
301 ==== Spectrometer (FLASH1) ====
302
303 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength{{/code}}
304 _always saved (when Spectrum is measured !!) (PBD) _
305 DOOCS prop : {{code language="none"}}TTF2.EXP/PHOTONWL.ML/WAVE_LENGTH/VAL.TD{{/code}}
306 DAQ channel: {{code language="none"}}PBD.PHOTONWL.ML/WAVE_LENGTH{{/code}}
307 desc : XUV Spectrum measured with the "tunnel spectrometer"
308 units :
309
310 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength start value{{/code}}
311 _always saved (when Spectrum is measured !!) (PBD) _
312 DOOCS prop : {{code language="none"}}TTF2.EXP/PBD.PHOTONWL.ML/BSTART/VAL{{/code}}
313 DAQ channel: {{code language="none"}}TTF2.EXP/PBD.PHOTONWL.ML/BSTART/VAL{{/code}}
314 desc : start value (in nm) for the wavelength axis of the XUV Spectrum measured with the "tunnel spectrometer"
315 units : nm
316
317 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength increment{{/code}}
318 _always saved (when Spectrum is measured !!) (PBD) _
319 DOOCS prop : ==
320 DAQ channel: ==
321 desc : increment value (in nm) for each pixel for the wavelength axis of the XUV Spectrum measured with the "tunnel spectrometer"
322 units : nm
323
324 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy{{/code}}
325 //saved on DEMAND (PBD spectrometer stream)//
326 DOOCS prop : ==
327 DAQ channel: {{code language="none"}}PBD.PHOTONEN.ML/PHOTON_ENERGY{{/code}}
328 desc : XUV Spectrum in eV measured with the "PG2 spectrometer"
329 units :
330
331 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy start value{{/code}}
332 //saved on DEMAND (PBD spectrometer stream)//
333 DOOCS prop : ==
334 DAQ channel: ==
335 desc : start value (in eV) for the wavelength axis of the XUV Spectrum measured with the "PG2 spectrometer"
336 units : eV
337
338 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy increment{{/code}}
339 //saved on DEMAND (PBD spectrometer stream)//
340 DOOCS prop : ==
341 DAQ channel: ==
342 desc : increment value (in eV) for each pixel for the wavelength axis of the XUV Spectrum measured with the "PG spectrometer"
343 units : eV
344
345 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength{{/code}}
346 //saved on DEMAND (PBD spectrometer stream)//
347 DOOCS prop : ==
348 DAQ channel: {{code language="none"}}PHOTONEN.ML/PHOTON_WAVE_LEN{{/code}}
349 desc : XUV Spectrum in nm measured with the "PG2 spectrometer"
350 units :
351
352 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength increment{{/code}}
353 //saved on DEMAND (PBD spectrometer stream)//
354 DOOCS prop : ==
355 DAQ channel: ==
356 desc : start value (in nm) for the wavelength axis of the XUV Spectrum measured with the "PG2 spectrometer"
357 units : nm
358
359 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength start value{{/code}}
360 //saved on DEMAND (PBD spectrometer stream)//
361 DOOCS prop : ==
362 DAQ channel: ==
363 desc : increment value (in nm) for each pixel for the wavelength axis of the XUV Spectrum measured with the "PG spectrometer"
364 units : nm
365
366 [[Contents>>doc:||anchor="Contents"]]
367
368 ==== Electron Beam properties (FLASH1) ====
369
370 ===== bunch charge =====
371
372 {{code language="none"}}/FL1/Electron Diagnostic/Bunch charge/after undulator{{/code}}
373 //always saved (PBD)//
374 DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/12EXP/CHARGE.FLASH1{{/code}}
375 DAQ channel: {{code language="none"}}FLASH.DIAG/TOROID/12EXP{{/code}}
376 desc: electron bunch charge (FLASH1)
377 units: nC
378
379 =====
380 arrival time (BAM) =====
381
382 {{info title="BAM information: updates 2022 (status 2025)"}}
383 * see: [[Info collection about the BAMs and how to use the BAM data>>doc:FS-FLASH USER tmp.jddd-linked help pages.Info collection for the BAM.WebHome||shape="rect"]]
384 * The data format of the BAM has been completely altered in the 2022 shutdown
385 * before 2022 BAMs were always saving the arrival time information for each 1µs bucked regardless if there were electrons in the accelerator or not. IN addition the arrival times for  FL1 and FL2 were saved in the same parameter ...
386 * THIS is now different. There are new parameters saving only the arrival times for pulses that go to FL1 and to FL2 (in detail: first time slot of the accelerator and second)
387 * There has been also a renaming  (and relocation) of the BAMs.
388 ** acc:  4DBC3 → FL0.DBC2
389 ** FL1: 1SFELC →  FL1.SFELC
390 ** FL2: FL2XTDS → (% style="color:#172b4d" %)FL2.SEED5
391 * for more Info: [[LINK to detailed infos from MSK>>doc:SDiag.How-to articles.BAM Data Structure.WebHome||shape="rect"]]
392 * [[Link a collection of papers related to the BAM and the analysis of pump-probe experiments>>doc:FS-FLASH USER tmp.Additional helpful things1.FLASH beamlines and instruments references.WebHome]]
393 * a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
394 {{/info}}
395
396 {{expand title="Discontinued BAM format (used until end 2021)"}}
397 (% style="color:#000000" %)**Discontinued BAM data recording **
398
399 {{code language="none"}}/FL1/Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}}
400 //always saved (PBD)//
401 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
402 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
403 desc: Electron bunch arrival time measured with the BAM inside the accelerator - however shows a very good correlation to the arrivaltime  of the XUV pulses in the experiment (pulse resolved data).
404 units: ps (bigger numbers indicate later arrivaltime of the electrons)
405
406
407 {{code language="none"}}/FL1/Electron Diagnostic/BAM/1SFELC/electron bunch arrival time (low charge){{/code}}
408 //always saved (PBD)//
409 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/1SFELC/LOW_CHARGE_ARRIVAL_TIME{{/code}}
410 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/1SFELC.LOW_CHARGE_ARRIVAL_TIME{{/code}}
411 desc: Electron bunch arrival time measured with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020.
412 units: ps (bigger numbers indicate later arrival time of the electrons)
413 {{/expand}}
414
415 ====== **BAM FL0.DBC2**{{code language="none"}}{{/code}} ======
416
417 (% style="color:#ff6600" %)**DBC2**/electron bunch arrival time  (HDF5 name not yet implemented - see zraw)(%%)
418 //always saved (PBD)//
419 {{code language="none"}}/FL1/Electron Diagnostic/BAM/ {{/code}}DOOCS prop : FLASH.SDIAG/BAM/**FL0.DBC2**/ARRIVAL_TIME.ABSOLUTE.SA1.COMP
420 DAQ (% style="color:#000000" %)channel: FLASH.SDIAG/BAM/**FL0.DBC2**/ARRIVAL_TIME.ABSOLUTE.SA1.COMP (%%)
421 desc: Electron bunch arrival time measured with the BAM inside the accelerator (after bunch compressor 2). The property contains only the arrival time of the bunches sent to FL1 (e.g. if there are 30 bunches in FL1 the first 30 values are the arrival time the remaining numbers  still may have arbitrary numbers looking like a signal which they are not ). These are the same values as the "raw" data below - just "cleaned". The values show a very good correlation to the arrival time  of the XUV pulses in the experiment (see help).
422
423 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
424
425
426 (% style="color:#ff6600" %)DBC2/electron bunch arrival time (raw)  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
427 //always saved (PBD)//
428 DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE
429 DAQ channel: (% style="color:#000000" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE (%%)
430 desc: Electron bunch arrival time measured with the BAM inside the accelerator (after bunch compressor 2). Here the complete bunch train from the FEL is recorded (FLASH1 and FLASH2 pulses). Thus there are values from FLASH 1 in the first part. they may be separated by several "0" values if the reprate is different from 1 MHz ...  - It shows a very good correlation to the arrival time  of the XUV pulses in the experiment (see help). 
431 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
432
433
434 (% style="color:#ff6600" %)DBC2/error (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
435 //always saved (PBD)//
436 DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM(% style="color:#000000" %)E.bamError.1(%%)
437 DAQ channel: (% style="color:#000000" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMERROR.1(%%)
438 desc:(% style="letter-spacing:0.0px" %) status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
439
440
441 (% style="color:#ff6600" %)DBC2/status  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
442 //always saved (PBD)//
443 DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM(% style="color:#000000" %)E..bamStatus.//1//(%%)
444 DAQ channel(% style="color:#000000" %): FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMSTATUS.1(%%)
445 desc: (% style="letter-spacing:0.0px" %) status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
446
447
448 ====== **BAM FL1.SFELC**{{code language="none"}}{{/code}} ======
449
450 (% style="font-family:SFMono-Medium,~"SF Mono~",~"Segoe UI Mono~",~"Roboto Mono~",~"Ubuntu Mono~",Menlo,Courier,monospace; letter-spacing:0.0px" %)/FL1/Electron Diagnostic/BAM/**SFELC**(% style="color:#ff6600" %)/electron bunch arrival time  (HDF5 name not yet implemented - see zraw)
451
452 //always saved (PBD)//
453 (% style="color:#172b4d" %)**FL1.SFELC**(%%)
454 (% style="color:#000000" %)channel: FLASH.SDIAG/BAM/(% style="color:#172b4d" %)FL1.SFELC(% style="color:#000000" %)/ARRIVAL_TIME.ABSOLUTE.SA1.COMP(%%)
455 (% style="color:#000000" %){{code language="none"}} DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE.SA1.COMPDAQ {{/code}}(% style="letter-spacing:0.0px" %)desc: Electron bunch arrival time measured  with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020.. The property contains only the arrival time of the bunches sent to FL1 (e.g. if there are 30 bunches in FL1 the first 30 values are the arrival time the remaining numbers still may have arbitrary numbers looking like a signal which they are not). These are the same values as the "raw" data below - just "cleaned". The values show a very good correlation to the arrival time  of the XUV pulses in the experiment (see help).
456 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
457
458
459
460 (% style="color:#172b4d" %)SFELC(% style="color:#ff6600" %)/electron bunch arrival time (raw) (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
461 //always saved (PBD)//
462 DOOCS prop : FLASH.SDIAG/BAM/(% style="color:#172b4d" %)FL1.SFELC(%%)/ARRIVAL_TIME.ABSOLUTE
463 DAQ channel:** **(% style="color:#000000" %)FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.ABSOLUTE (%%)
464 desc: Electron bunch arrival time measured  with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020. Here the complete bunch train from the FEL is recorded (FLASH1 and FLASH2 pulses). Thus there are values from FLASH 1 in the first part. they may be separated by several "0" values if the reprate is different from 1 MHz ...  - It shows a very good correlation to the arrival time  of the XUV pulses in the experiment (see help). 
465 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
466
467
468 (% style="color:#172b4d" %)SFELC(% style="color:#ff6600" %)/error (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
469 //always saved (PBD)//
470 DOOCS prop : FLASH.SDIAG/BAM/(% style="color:#172b4d" %)FL1.SFELC(%%)/ARRIVAL_TIM(% style="color:#000000" %)E.bamError(%%)
471 DAQ channel(% style="color:#000000" %): FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.BAMERROR(%%)
472 desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !!
473
474
475 (% style="color:#172b4d" %)SFELC(% style="color:#ff6600" %)/status  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
476 //always saved (PBD)//
477 DOOCS prop : FLASH.SDIAG/BAM/(% style="color:#172b4d" %)FL1.SFELC(%%)/ARRIVAL_TIM(% style="color:#000000" %)E..bamStatus.//1//(%%)
478 DAQ chann(% style="color:#000000" %)el: FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.BAMSTATUS.1(%%)
479 desc: status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
480
481
482
483 ===== electron beam profile =====
484
485 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile{{/code}}
486 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
487 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/OUT.PROF.CCCED{{/code}}
488 DAQ channel: {{code language="none"}}PBD.BEAM.PROF.ML/DAQ.OUT.PROF.CCCED{{/code}}
489 desc: temporal profile of electron bunch, y axis in Ampers (FLASH1)
490 units: pixel
491
492 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/Expert stuff/TDS calibration constant{{/code}}
493 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
494 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/CALIB.CONST.T{{/code}}
495 DAQ channel: = PBD.BEAM.PROF.ML/CCT=
496 desc: TDS calibration constant for the x-axis of the profiles: fs per pixel
497 units: fs per pixel
498
499 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile width rms{{/code}}
500 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
501 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/SOWS.W.CCTED{{/code}}
502 DAQ channel: {{code language="none"}}PBD.BEAM.PROF.ML/PROFWIDTHCCTED{{/code}}
503 desc: rms pulse width of the measures TDS electron bunch profile
504 units: fs
505
506 ===== electron bunch energy =====
507
508 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/average electron energy{{/code}}
509 //always saved (PBD)//
510 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_INTRA_MEAN/VAL{{/code}}
511 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_MEAN{{/code}}
512 desc: electron bunch energy (average over the bunch train)
513 units: (% class="twikiNewLink" %)MeV
514
515 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/pulse resolved energy{{/code}}
516 //always saved (PBD)//
517 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_SPECT/VAL.TD{{/code}}
518 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_SPECT{{/code}}
519 desc: electron bunch energy bunch resolved
520 units: (% class="twikiNewLink" %)MeV
521
522
523 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/wavelength bunch train average{{/code}}
524 //always saved (PBD)//
525 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/LAMBDA_MEAN/VAL{{/code}}
526 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/LAMBDA_MEAN{{/code}}
527 desc: Wavelength calculated by the electron bunch energy (average over the bunch train) (FLASH1)
528 units: nm
529
530 [[Contents>>doc:||anchor="Contents"]]
531
532
533 ==== ====
534
535
536 ==== Timing information, rep rate etc.  (FLASH1) ====
537
538 ===== bunch repetition rate =====
539
540 {{code language="none"}}/Timing/repetition rate{{/code}}
541 //always saved (PBD)//
542 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.1{{/code}}
543 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.1{{/code}}
544 desc: repetition rate of the bunches / pulses within the burst (FLASH1)
545 units: kHz
546
547 ===== set number of pulses =====
548
549 (% style="color:#ff6600" %)(HDF5 name not yet implemented - see zraw)(% style="color:#ff0000" %){{code language="none"}}/Timing/set number of bunches {{/code}}(%%)
550 //always saved (PBD)//
551 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1 [4th number]{{/code}}
552 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1 [4th number]{{/code}}
553 desc: Number of bunches set in the control (timing) system.  The property contains 4 numbers. the last one is the number of pulses (see also [[doc:FLASH.Timing properties]] (internal link)).  If pulses are used for diagnostic of the protection system of the accelerator limits the number of bunches to be accelerated and thus the actual number of pulses may be smaller than the set one 
554 units:
555
556 ===== actual number of pulses =====
557
558 {{code language="none"}}/FL1/Timing/actual number of bunches{{/code}}
559 //always saved (PBD)//
560 DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/12EXP/NUMBEROFBUNCHES.FLASH1{{/code}}
561 DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}}
562 desc: Number of bunches measured BEHIND the undulator. If pulses are used for diagnostic of the protection system of the accelerator limits the number of bunches to be accelerated this is the actual number that created XUV radiation.The number is calculated by the DAQ middle layer server, (FLASH1)
563 units:
564
565 ===== actual pulse pattern recorded after the undulator =====
566
567 {{code language="none"}}/FL1/Timing/Bunch pattern/pattern after undulator{{/code}}
568 //always saved (PBD)//
569 DOOCS prop : {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP/CHARGE.TD{{/code}}
570 DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}}
571 desc: The bunch pattern as function of time in a burst recorded by toroid diagnostic BEHIND the undulator. (FLASH1)
572 units:
573
574 ===== Train ID =====
575
576 {{code language="none"}}/Timing/train ID{{/code}}
577 //always saved (PBD)//
578 DOOCS prop : {{code language="none"}}none{{/code}}
579 DAQ channel: {{code language="none"}}none{{/code}}
580 desc: Each 10 Hz burst has its unique train ID. For the HDF5 data set the ID is the same for all parameters with the same index (note camera images may be shifted by 1 ID - talk to the experts !)
581 units:
582
583 ===== (% style="color:#e67e22" %)Train time(%%) =====
584
585 (% style="color:#e67e22" %){{code language="none"}}/Timing/train time{{/code}}
586 desc:Local time as array of day, hour, minute, second, and centisecond. This data set is meant for visualization purposes only. For correlations use the train ID or the Unix time of the time stamp
587 units: d h min s cs
588
589 (% style="color:#e67e22" %){{code language="none"}}/Timing/time stamp{{/code}}
590 desc:first column: Local time in unix time. To get day, hour, minute, second you can use unix: e.g. date ~-~-date='@1553617729' or matlab, python etc
591 second column: microseconds
592 third column: Train ID of FLASH
593
594 currently it is saved as Unix time in : /zraw/FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1/dGroup/time
595
596 {{expand expanded="false" title="Timestamp help for python"}}
597 import time
598
599 # epoch time is found in /zraw/FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1/dGroup/time #!!! a leading 1 has to be added !!!
600 # The time and date of the start of the data taking in the HDF file is encoded in the filename - to roughly check the time
601 epoch_time = 1709051499.17 # Replace with your epoch time
602
603 formatted_time = time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(epoch_time))
604 print(formatted_time)
605 {{/expand}}
606
607
608
609
610 ==== Pump Probe Laser (FLASH1) ====
611
612 **PIGLET (PG laser)**
613
614 **{{code language="none"}}/FL1/Experiment/Pump probe laser{{/code}}**
615
616 {{info width="30%"}}
617 list of saved parameters status May 2024 (up to now the parameters can be found in /zraw/ ... )
618
619 Download the PDF:
620
621 {{view-file att--filename="FSLADAQ-DAQParameterlistPiGLET.pdf"}}{{/view-file}}
622
623
624
625 {{/info}}
626
627 {{expand title="Parameters used until 2021"}}
628 {{code language="none"}}
629 /FL1/Experiment/Pump probe laser/laser attenuation
630 {{/code}}
631
632 //always saved (PBD)//
633 DOOCS prop : {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/ROT2.CURRENT{{/code}}
634 DAQ channel: {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/ROT2.CURRENT{{/code}}
635 desc: attenuation of the PPLaser (rotation of a waveplate)
636 units : 0 no transmission , 1: full transmission
637
638
639 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay{{/code}}
640 //always saved (PBD)//
641 DOOCS prop : {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/DLY1.CURRENT{{/code}}
642 DAQ channel: {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/DLY1.CURRENT{{/code}}
643 desc: delay of the Pump probe laser - measured by the read back position of the motor. only read out every secound ... better use the encoder
644 units : ps ( pos delay means IR comes later)
645
646
647 {{code language="none"}}/FL1/Experiment/Pump probe laser/delay line IK220.0/ENC.DELAY{{/code}}
648 //always saved (PBD)//
649 DOOCS prop : {{code language="none"}}TTF2.FEL/DELLINE.ENC/IK220.0/ENC.DELAY{{/code}}
650 DAQ channel: {{code language="none"}}TTF2.FEL/DELLINE.ENC/IK220.0:ENC.DELAY{{/code}}
651 subsystem: {{code language="none"}}DELLINE.ENC{{/code}} desc : delay of the Pump probe laser - measured by an encoder. The position is read out with 10Hz train synchronized and should be used to determine the actual laser delay (the motor position is only read out about every second
652 units : ps ( pos delay means IR comes later)
653
654
655 {{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS GECCO{{/code}}
656 //always saved (PBD)//
657 DOOCS prop : {{code language="none"}}FLASH.SYNC/F1PPL.LASER_LOCK/28C.F1PPL1.CONTROLLER/ADV_CTRL_MANAGER.0.PID_INPUT_JITTER.2.RD{{/code}}
658 DAQ channel: {{code language="none"}}FLASH.SYNC/F1PPL.LASER_LOCK/28C.F1PPL1.CONTROLLER/ADV_CTRL_MANAGER.0.PID_INPUT_JITTER.2.RD{{/code}}
659 desc: rms jitter of the GECCO (% class="twikiNewLink" %)TiSa(%%) Oscillator units: fs
660
661
662 {{code language="none"}}/FL1/Experiment/Pump probe laser/streak camera delay time{{/code}}
663 //always saved (PBD)//
664 DOOCS prop : {{code language="none"}}TTF2.FEL/TDOLFEL/TDOLFEL/STREAK.CAM.TIME{{/code}}
665 DOOCS prop : {{code language="none"}}TTF2.FEL/TDOLFEL/TDOLFEL/STREAK.CAM.TIME{{/code}}
666 desc: delay time between the optical laser and the FEL units: ps
667 {{/expand}}
668
669
670 [[Contents>>doc:||anchor="Contents"]]
671
672
673 ==== User Data (FLASH1) ====
674
675 The data saved specifically for detectors at an experiment will show up in /Experiment/ there is a large number of options for cameras or monitoring of slow properties (motor positions etc) for user experiments. For details please ask your local contact.
676
677 NOTE: If parameters for an experiment are included on short notice the correct naming in the HDF5 may not be in time and the data will show up in /uncategorized/ with the DOOCS names
678
679 The most common and permanently installed device used by experiment are our ADCs:
680
681 ===== GHz ADCs =====
682
683 ADC traces of the (SPDevices 412) GHZ ADCs available for the users . More information about the ADCs can be found** [[here>>doc:FS-FLASH USER tmp.Data Acquisition and controls 1.Controls (DOOCS, jDDD,\.\.\.).MTCA ADCs.WebHome]]**
684 //saved on DEMAND in the user DAQ//
685 \\The HDF5 names for the ADC traces are depending on the beamline :
686 \\PG Beamline:
687 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH00/TD{{/code}}
688 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH01/TD{{/code}}
689 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH02/TD{{/code}}
690 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH03/TD{{/code}}
691
692 BL Beamlines:
693 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH00/TD{{/code}}
694 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH01/TD{{/code}}
695 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH02/TD{{/code}}
696 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH03/TD{{/code}}
697 \\{{code language="none"}}/FL1/Experiment/BL2/ADQ412 GHz ADC/CH00/TD{{/code}}
698 {{code language="none"}}/FL1/Experiment/BL2/ADQ412 GHz ADC/CH01/TD{{/code}}
699 \\{{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH02/TD{{/code}}
700 {{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH03/TD{{/code}}
701
702 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
703 here the {{code language="none"}}CH00.TD{{/code}} is the full ADC trace as it is sampled ( typically several 100.000 samples per pulse train) while the {{code language="none"}}CH00.DAQ.TD{{/code}} trace only has the number of samples which are sent to the DAQ OR if //grouping// is activated the {{code language="none"}}CH00.DAQ.TD{{/code}} contains only the grouped spectra. To read the ADC trace with an online analysis program the {{code language="none"}}CH00.DAQ.TD{{/code}} is used preferably.
704 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00{{/code}}
705
706 In addition there are also additional parameters saved like:
707
708 * {{code language="none"}}sample frequency{{/code}}: it shows the sample frequency in MHz (number of samples per µs). NOTE: the clock of the ADC is NOT synchronized to the FLASH timing system. Thus the number of samples between bunches in the bunch train may be not integer numbers which will be show up for long bunch trains.
709 * {{code language="none"}}number of samples{{/code}}: total number of samples recorded for each 10 Hz trigger
710 * {{code language="none"}}error (ADC):{{/code}}0 indicates that there was no error
711
712 ===== MHz ADCs =====
713
714 similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
715 {{code language="none"}}/FL1/Experiment/BL1/SIS8300 100MHz ADC/CH2/TD{{/code}}
716 DOOCS prop : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02/CH00.TD
717 DAQ channel: : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02
718
719 In addition there are also additional parameters saved like:
720
721 * {{code language="none"}}sample frequency{{/code}}: it shows the sample frequency in MHz (number of samples per µs). NOTE: the clock of the ADC is NOT synchronized to the FLASH timing system. Thus the number of samples between bunches in the bunch train may be not integer numbers which will be show up for long bunch trains.
722 * {{code language="none"}}number of samples{{/code}}: total number of samples recorded for each 10 Hz trigger
723
724 [[Contents>>doc:||anchor="Contents"]]
725 {{/expand}}
726
727
728 === FLASH2 ===
729
730 There is analog to FLASH1 a permanently running "PhotonDagnostic DAQ FLASH2" (PBD2) and 2 User DAQs
731
732 ==== Beamline info (FLASH2) ====
733
734 {{code language="none"}}/FL2/Beamlines/Attenuator/pressure  {{/code}}
735 (% style="color:#000000" %)DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
736 (% style="color:#000000" %)DAQ channel:  {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
737 (% style="color:#000000" %)desc: set pressure in the gas attenuator (%%)
738 (% style="color:#000000" %)units: mbar
739
740 {{code language="none"}}/FL2/Beamlines/FL20/Shutter/open{{/code}}
741 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER/CH00.TD{{/code}}
742 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER{{/code}}
743 desc: BL Beamline Fast shutter state: 1 is open, 0 is closed ( for technical reasons there are 100 vales of this state saved ...)
744 units: none
745
746
747 {{code language="none"}}/FL2/Beamlines/Filter wheel/position wheel 1{{/code}}
748 DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS{{/code}}
749 DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS
750 desc: Position of the BL filter wheel 1 - to correlate with the filter material please look **[[here>>doc:FS-FLASH USER tmp.jddd-linked help pages.Filter-Units.Filter wheels in FLASH1 and FLASH2.WebHome]]**
751 units: degree
752
753 /FL2/Beamlines/Filter wheel/position wheel 2
754 DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS{{/code}}
755 DAQ channel: {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS{{/code}}
756 desc: Position of the BL filter wheel 2 - to correlate with the filter material please look [[here>>doc:FS-FLASH USER tmp.jddd-linked help pages.Filter-Units.Filter wheels in FLASH1 and FLASH2.WebHome]]
757 units: degree
758
759
760 NOTE: Aperture positions in the beamline as well as the positions of the beam steering mirrors are also saved. for more Info contact your local contact
761
762 [[Contents>>doc:||anchor="Contents"]]
763
764
765
766 ==== Photon Diagnostics SASE ([[XGMD>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/gmd_intensity_and_position/index_eng.html||shape="rect"]] - FLASH2) ====
767
768 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
769 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ{{/code}}
770 DAQ channel:{{code language="none"}} FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ{{/code}}
771 desc : calibrated average ( ~~ 20 sec averaging time ) SASE Energy/pulse measured in the TUNNEL before the attenuator (ion current)
772 units : microJ
773
774
775 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
776 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
777 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
778 desc : Energy per pulse measured in the Tunnel  (in front of the gas attenuator and the apertures in the Hall) In addition measurement errors and beam position are included for EACH pulse in the pulse train  !! (see below)
779 units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision)** [[see here for help>>doc:FS-FLASH USER tmp.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
780
781 {{info title="GMD pulse resolved data structure"}}
782 For every pulse in the pulse train the information is saved:
783
784 1. **Intensity per pulse** (a.u. (more or less µJ ))
785 1. Intensity per pulse (auxillary GMD) - not used
786 1. Position horizontal (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
787 1. Position vertical (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
788 1. **Intensity per pulse sigma** (a.u. (more or less µJ ), (% style="color:#000000" %)This parameter gives an indication of the error of the measurement of the pulse energy. This takes signal to noise,  detector resolution, uncertainties in crossection etc into account. (it is NOT the measurement of the statistical fluctuation of the SASE pulses)(%%))
789 1. Position horizontal sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
790 1. Position vertical sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
791 1. Combined warning and error flags
792
793 The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 
794 file
795
796
797 [[image:attach:image2021-2-9_10-51-6.png||height="250"]]
798
799
800 {{/info}}
801
802
803 All values for the GMD are also available for the** HALL GMD **which is located in the experimental hall down stream the gas attenuator. If the attenuator is on the ratio between Hall and Tunnel signal shows the attenuation. **BUT NOTE** that the filter unit and the Aperture 4 are downstream the GMD. So if filters and aperture are used this influence is NOT measured by the GMD hall !
804
805
806 Besides  pulse energy the GMD also provides information about the beam position
807
808
809 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average Beam position/position tunnel horizontal{{/code}}
810 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
811 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
812 desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
813 units : mm
814
815
816 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average Beam position/position tunnel vertical{{/code}}
817 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
818 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
819 desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
820 units : mm
821
822
823 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel x
824 DOOCS prop : FLASH.FEL/XGM.BPM/FL2.HALL/X.TD
825 DAQ channel: FLASH.FEL/XGM.BPM/FL2.HALL:2
826 desc: Besides the well calibrated averaged beam position information there is also the option to measure the beam position on a single bunch level. HOWEVER this methide needs a perfectly adjusted signal level (talk to your local contact !!) and also then the signal to noise is rather small and one needs some averaging ... BUT with this option one can determine if there was a spatial slope on a burst (say forst bunches were lower than the last ones or so ...)
827 units : mm   
828
829 (x=horizontal, y = vertial)
830
831 again the same parameter set is available for the **HALL GMD**
832
833
834
835 ==== Photon Diagnostics OPIS[[ >>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]](FLASH2) ====
836
837 for more info see:** [[ OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]]**
838
839 (The OPIS hall is not installed yet ...)
840
841
842 {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean photon energy{{/code}}
843 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042{{/code}}
844 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042{{/code}}
845 desc : mean photon energy ( ~~ 1 sec averaging time ) measured in the TUNNEL for a specific bunch out of the bunch train (via photoelectron spectroscopy)
846 units : eV
847
848
849 {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean wavelength{{/code}}
850 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}}
851 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}}
852 desc : mean wavelength ( ~~ 1 sec averaging time ) measured in the TUNNEL for a specific bunch out of the bunch train (via photoelectron spectroscopy)
853 units : nm
854
855
856 {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/number of analyzed bunch        (in older version this can be found in OPIS tunnel/Expert stuff/General operation parameters/){{/code}}
857 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL060{{/code}}
858 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL060{{/code}}
859 desc : The bunch number of the bunch used for the wavelength calculation
860 units :
861
862
863
864
865 If Opis is running typically on the the averaged data is saved. For several experiments it may make sense to save the information for each single bunch. This is up to now done by saving the complete ADC trace of the TOF setup. This is a huge amount of data and needs processing. This has to be performed after the beamtime in close contact to [[Markus Braune>>mailto:markus.braune@desy.de||shape="rect"]] ( responsible for [[OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]])
866
867
868 In case OPIS was not operating there is still information about the **set wavelength** for the undulators (see below) which may differ by up to 5 % from the actual wavelength due to different settings in the FEL ...
869
870
871
872 ==== Electron Beam properties (FLASH2) ====
873
874 ===== bunch charge =====
875
876 {{code language="none"}}/FL2/Electron Diagnostic/Bunch charge/after undulator{{/code}}
877 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
878 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
879 desc: electron bunch charge FLASH2 (average value for each bunchtrain).
880 units: nC
881
882
883 ===== electron bunch energy =====
884
885 {{code language="none"}}/FL2/Electron Diagnostic/Electron energy/energy of first bunch/behind undulators{{/code}}
886 DOOCS prop : {{code language="none"}}FLASH.DIAG/BEAM_ENERGY_MEASUREMENT/FL2XTDS/ENERGY.FLASH2{{/code}}
887 DAQ channel: (% style="color:#5e6c84" %)TTF2.DAQ/PBD2.BEAM.ENERGY.MEAS.ML.COPY/FL2XTDS.ENERGY.FLASH2{{code language="none"}}{{/code}}(%%)
888 desc: electron bunch energy measured behind the undulator. Data is saved with 10 Hz - BUT (for computation reasons) only the energy of the FIRST bunch is recorded. The data is also available for (% style="color:#5e6c84" %)extraction and septum  in the beginning of FLASH2
889
890 (% style="letter-spacing:0.0px" %)units: (% class="twikiNewLink" %)MeV
891
892
893 (% style="color: rgb(94, 108, 132); font-weight: 600; letter-spacing: 0px;" %)
894 ===== undulator settings =====
895
896 {{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/set wavelength 1{{/code}}
897 DOOCS prop : {{code language="none"}}FLASH.FEL/FL2.WAVELENGTHCONTROL/FLASH2.COLOR1/WAVELENGTH{{/code}}
898 DAQ channel:  {{code language="none"}}FLASH.FEL/FL2.WAVELENGTHCONTROL/FLASH2.COLOR1/WAVELENGTH{{/code}}
899 desc: Set value for the anticipated wavelength 1 . This parameter is used to set the undulator gap. It may however deviate from the actual wavelength by several % ... For 2 color operation there is also  the same parameter for COLOR 2
900 units: nm
901
902 {{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/SASE13 gap{{/code}}
903 DOOCS prop : {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE13/GAP{{/code}}
904 DAQ channel:  {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE13/GAP{{/code}}
905 desc: gap value of the undulators. This can be used to follow up how many undulators were closed and if there was a taper. 
906 units: mm
907
908 The gap values are saved for all 12 undulators (Nr 2 to 13). Undulator 13 is the one closest to the experimental hall.
909
910 =====
911 arrival time (BAM) =====
912
913 {{info title="BAM information: updates 2022 (status 2025)"}}
914 * see: [[Info collection about the BAMs and how to use the BAM data>>doc:FS-FLASH USER tmp.jddd-linked help pages.Info collection for the BAM.WebHome||shape="rect"]]
915 * The data format of the BAM has been completely altered in the 2022 shutdown
916 * before 2022 BAMs were always saving the arrival time information for each 1µs bucked regardless if there were electrons in the accelerator or not. IN addition the arrival times for  FL1 and FL2 were saved in the same parameter ...
917 * THIS is now different. There are new parameters saving only the arrival times for pulses that go to FL1 and to FL2 (in detail: first time slot of the accelerator and second)
918 * There has been also a renaming  (and relocation) of the BAMs.
919 ** acc:  4DBC3 → FL0.DBC2
920 ** FL1: 1SFELC →  FL1.SFELC
921 ** FL2: FL2XTDS → (% style="color:#172b4d" %)FL2.SEED5
922 * for more Info: [[LINK to detailed infos from MSK>>doc:SDiag.How-to articles.BAM Data Structure.WebHome||shape="rect"]]
923 * [[Link a collection of papers related to the BAM and the analysis of pump-probe experiments>>doc:FS-FLASH USER tmp.Additional helpful things1.FLASH beamlines and instruments references.WebHome]]
924 * a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
925 {{/info}}
926
927 {{expand title="Discontinued BAM format (used until end 2021)"}}
928 (% style="color:#000000" %)**Discontinued BAM data recording **
929
930 {{code language="none"}}/FL2/Electron Diagnostic/BAM/8FL2XTDS/electron bunch arrival time (low charge){{/code}}
931 //always saved (PBD2)//
932 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/8FL2XTDS/LOW_CHARGE_ARRIVAL_TIME{{/code}}
933 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/8FL2XTDS.LOW_CHARGE_ARRIVAL_TIME{{/code}}
934 desc: Electron bunch arrival time measured with the BAM after the FLASH2 undulator (pulse resolved data)
935 units: ps (bigger numbers indicate later arrivaltime of the electrons)
936
937 **FL1**{{code language="none"}}//Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}}
938 //always saved (PBD2)//
939 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
940 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
941 desc: Electron bunch arrival time measured with the BAM  in the accelerator  (pulse resolved data)
942 units: ps (bigger numbers indicate later arrivaltime of the electrons)
943
944 {{info title="BAM hints"}}
945 * The BAM 4DBC3 measures the arrivaltime of** FLASH 1 and FLASH2** in the same data set (thus also sorted in at /FL1/ !).
946 * The BAM 8FL2XTDS measures only for FLASH2 BUT has the same data structure as the other BAMS ... thus there are also (random) values in in the  FLASH1 time slot 
947 ** Structure: The first values are for FLASH1 bunches. After a gap of about 70 micros ( 70 colums)  with  as entry for the switching between FLASH 1 and 2 the values for the electrons used in FLASH2 start.  The start time of FLASH2 is also recorded in the DAQ. FLASH1 start time is for historic reasons 700. thus if e.g. the start time of FLASH2 ( property name see below) is 1200 it means that FLASH starts at column 500 (1200-700) ... .In case of doubt ask your local contact
948 * [[Link a collection of papers related to the BAM and the analysis of pump-probe experiments >>doc:FS-FLASH USER tmp.Additional helpful things1.FLASH beamlines and instruments references.WebHome]]
949 * [[LINK to detailed infos from MSK (may only work inside DESY network~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|height="12" width="13"~]~]>>url:http://www.desy.de/~~mbock/pages/BAM_daq_channel_descriptions.html||shape="rect"]]
950 * a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
951 {{/info}}
952 {{/expand}}
953
954
955 ====== **BAM FL0.DBC2**{{code language="none"}}{{/code}} ======
956
957 (% style="color:#ff6600" %)**DBC2**/electron bunch arrival time  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}
958
959 {{code language="none"}}
960 /zraw/FLASH.SDIAG/BAM.DAQ/FL0.DBC2.ARRIVAL_TIME.ABSOLUTE.SA2.COMP/dGroup/
961 {{/code}}
962
963 //always saved (PBD)//
964 **FL0.DBC2**
965 (% style="color:#000000" %)channel: FLASH.SDIAG/BAM/**FL0.DBC2**/ARRIVAL_TIME.ABSOLUTE.SA2.COMP
966 {{code language="none"}} DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE.SA2.COMPDAQ {{/code}}(% style="letter-spacing:0.0px" %)desc: Electron bunch arrival time measured with the BAM inside the accelerator (after bunch compressor 2). The property contains only the arrival time of the bunches sent to FL2 (e.g. if there are 30 bunches in FL2 the first 30 values are the arrival time the remaining numbers still may have arbitrary numbers looking like a signal which they are not0). These are the same values as the "raw" data below - just "cleaned". The values show a very good correlation to the arrival time  of the XUV pulses in the experiment (see help).
967 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
968
969
970 (% style="color:#ff6600" %)DBC2/electron bunch arrival time (raw)  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}
971
972 {{code language="none"}}/zraw/FLASH.SDIAG/BAM.DAQ/FL0.DBC2.ARRIVAL_TIME.ABSOLUTE.SA2/dGroup/{{/code}}
973 //always saved (PBD)//
974 {{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE{{/code}}
975 (% style="color:#000000" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE {{code language="none"}}DAQ channel: {{/code}}(%%)
976 desc: Electron bunch arrival time measured with the BAM inside the accelerator (after bunch compressor 2). Here the complete bunch train from the FEL is recorded (FLASH1 and FLASH2 pulses). Thus there are values from FLASH 2 in the second part. they may be separated by several "0" values if the reprate is different from 1 MHz ...  - It shows a very good correlation to the arrival time  of the XUV pulses in the experiment (see help). 
977 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
978
979
980 DBC2/error (% style="color:#f39c12" %)(HDF5 name not yet implemented - see zraw)(%%)/FL2/Electron Diagnostic/BAM/
981 //always saved (PBD)//
982 DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.bamError.2
983 DAQ channel: FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMERROR.2
984 desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !!
985
986 DBC2/status  (% style="color:#e67e22" %)(HDF5 name not yet implemented - see zraw)(%%)/FL2/Electron Diagnostic/BAM/
987 //always saved (PBD)//
988 DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.bamStatus.//2//
989 DAQ channel: FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMSTATUS.2
990 desc:  status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
991
992
993
994 ====== **BAM FL2.SEED5**{{code language="none"}}{{/code}} ======
995
996 /FL2/Electron Diagnostic/BAM/**SEED5**(% style="color:#ff6600" %)/electron bunch arrival time  (HDF5 name not yet implemented - see zraw)
997
998 (% style="color:#000000" %){{code language="none"}}/zraw/FLASH.SDIAG/BAM.DAQ/FL0.SEED5.ARRIVAL_TIME.ABSOLUTE.SA2.COMP/dGroup/{{/code}}
999
1000 //always saved (PBD)//
1001 (% style="color:#172b4d" %)**FL2.SEED5**(%%)
1002 (% style="color:#000000" %)channel: FLASH.SDIAG/BAM/(% style="color:#172b4d" %)**FL2.SEED5**(% style="color:#000000" %)/ARRIVAL_TIME.ABSOLUTE.SA1.COMP
1003 {{code language="none"}} DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE.SA1.COMPDAQ {{/code}}(%%)desc: Electron bunch arrival time measured  with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020.. The property contains only the arrival time of the bunches sent to FL2 (e.g. if there are 30 bunches in FL2 the first 30 values are the arrival time the remaining numbers still may have arbitrary numbers looking like a signal which they are not). These are the same values as the "raw" data below - just "cleaned". The values show a very good correlation to the arrival time  of the XUV pulses in the experiment (see help).
1004 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
1005
1006
1007
1008 (% style="color:#172b4d" %)SEED5(% style="color:#ff6600" %)/electron bunch arrival time (raw) (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}
1009
1010 (% style="color:#000000" %){{code language="none"}}/zraw/FLASH.SDIAG/BAM.DAQ/FL0.SEED5.ARRIVAL_TIME.ABSOLUTE.SA2/dGroup/{{/code}}(%%)
1011 //always saved (PBD)//
1012 (% style="color:#172b4d" %)**FL2.SEED5**{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE{{/code}}(%%)
1013 **~ **(% style="color:#000000" %)FLASH.SDIAG/BAM/(% style="color:#172b4d" %)**FL2.SEED5**(% style="color:#000000" %)/ARRIVAL_TIME.ABSOLUTE {{code language="none"}}DAQ channel:{{/code}}(%%)
1014 desc: Electron bunch arrival time measured  with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020. Here the complete bunch train from the FEL is recorded (FLASH1 and FLASH2 pulses). Thus there are values from FLASH 2 in the second part. they may be separated by several "0" values if the reprate is different from 1 MHz ...  - It shows a very good correlation to the arrival time  of the XUV pulses in the experiment (see help). 
1015 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
1016
1017
1018 FL2.SEED5/error (% style="color:#f39c12" %)(HDF5 name not yet implemented - see zraw)(%%)/FL2/Electron Diagnostic/BAM/
1019 //always saved (PBD)//
1020 DOOCS prop : FLASH.SDIAG/BAM/FL2.SEED5/ARRIVAL_TIME.bamError.2
1021 DAQ channel: FLASH.SDIAG/BAM/FL2.SEED5/ARRIVAL_TIME.BAMERROR.2
1022 desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !!
1023
1024 FL2.SEED5/status  (% style="color:#e67e22" %)(HDF5 name not yet implemented - see zraw)(%%)/FL2/Electron Diagnostic/BAM/
1025 //always saved (PBD)//
1026 DOOCS prop : FLASH.SDIAG/BAM/FL2.SEED5/ARRIVAL_TIME.bamStatus.//2//
1027 DAQ channel: FLASH.SDIAG/BAM/FL2.SEED5/ARRIVAL_TIME.BAMSTATUS.2
1028 desc:  status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
1029
1030
1031 [[Contents>>doc:||anchor="Contents"]]
1032
1033
1034 ==== Timing information, rep rate etc.  (FLASH2) ====
1035
1036 ===== start time of FLASH2 =====
1037
1038 {{code language="none"}}/FL2/Timing/start time flash2{{/code}}
1039 //always saved (PBD2)//
1040 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}}
1041 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}}
1042 desc: The max 600 µs acceleration time of FLASH is devided between FLASH1 and FLASH2. This 600 µs window starts with FLASH1 (up to now)  at a time"label" of 700 µs (for historic reasons). Thus the first bunch of FLASH 1 comes at "700" and the last possibel bunch comes at 1300 (700+600). After FLASH1 train is over ther is a about 70µs switching time with no bunches. Then comes the first FLASH2 bunch.  Thus if e.g. the start time of FLASH2 is 1200 it means that FLASH2 starts at column 500 (1200-700)  in the HDF5 files. (However for yet unknown reasons this may change by 2-3 colums ...)
1043 units: µs
1044
1045 ===== bunch repetition rate =====
1046
1047 {{code language="none"}}/FL2/Timing/repetition rate{{/code}}
1048 //always saved (PBD2)//
1049 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}}
1050 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}}
1051 desc: repetition rate of the bunches / pulses within the burst (FLASH2)
1052 units: kHz
1053
1054
1055 ===== set number of pulses =====
1056
1057 (% style="color:#ff6600" %)(HDF5 name not yet implemented - see zraw)(% style="color:#ff0000" %){{code language="none"}}/FL2/Timing/set number of bunches {{/code}}(%%)
1058 //always saved (PBD2)//
1059 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.2 [4th number]{{/code}}
1060 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.2 [4th number]{{/code}}
1061 desc: Number of bunches set in the control (timing) system.  The property contains 4 numbers. the last one is the number of pulses (see also [[doc:FLASH.Timing properties]] (internal link)).  If pulses are used for diagnostic of the protection system of the accelerator limits the number of bunches to be accelerated and thus the actual number of pulses may be smaller than the set one 
1062 units:
1063
1064 ===== actual number of pulses =====
1065
1066 {{code language="none"}}/FL1/Timing/actual number of bunches{{/code}}
1067 //always saved (PBD2)//
1068 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
1069 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
1070 desc: Number of bunches measured BEHIND the undulator. If pulses are used for diagnostic of the protection system of the accelerator limits the number of bunches to be accelerated this is the actual number that created XUV radiation.The number is calculated by the DAQ middle layer server, (FLASH2)
1071 units:
1072
1073 ===== actual pulse pattern recorded after the undulator =====
1074
1075 {{code language="none"}}/FL1/Timing/Bunch pattern/pattern after undulator{{/code}}
1076 //always saved (PBD2)//
1077 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
1078 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
1079 desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH2)
1080 units:
1081
1082 ===== Train ID =====
1083
1084 {{code language="none"}}/Timing/train ID{{/code}}
1085 //always saved (PBD2)//
1086 DOOCS prop : {{code language="none"}}none{{/code}}
1087 DAQ channel: {{code language="none"}}none{{/code}}
1088 desc: Each 10 Hz burst has its unique train ID. For the HDF5 dataset the ID is the same for all parameters with the same index (note camera images may be shifted by 1 ID - talk to the experts !)
1089 units:
1090
1091 ===== (% style="color:#e67e22" %)Train time(%%) =====
1092
1093 (% style="color:#e67e22" %)//always saved (PBD2)//(%%)
1094 (% style="color:#e67e22" %){{code language="none"}}/Timing/train time{{/code}}
1095 desc:Local time as array of day, hour, minute, second, and centisecond. This dataset is meant for visualisation purposes only. For correlations use the train ID or the Unix time of the time stamp
1096 units: d h min s cs
1097
1098 {{code language="none"}}
1099 /Timing/time stamp
1100 {{/code}}
1101
1102 (% style="color:#e67e22" %)//always saved (PBD2)//(%%)
1103 (% style="color:#e67e22" %)desc: first column: Local time in unix time. To get day, hour, minute, second you can use unix: e.g. date ~-~-date='@1553617729' or matlab, python etc
1104 second column: microseconds
1105 third column: Train ID of FLASH
1106
1107
1108 (% id="cke_bm_2455529S" style="display:none" %) (%%)currently it is saved as Unix time in : /zraw/FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1/dGroup/time
1109
1110 {{expand expanded="false" title="Timestamp help for python"}}
1111 import time
1112
1113 # epoch time is found in /zraw/FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1/dGroup/time #!!! a leading 1 has to be added !!!
1114 # The time and date of the start of the data taking in the HDF file is encoded in the filename - to roughly check the time
1115 epoch_time = 1709051499.17 # Replace with your epoch time
1116
1117 formatted_time = time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(epoch_time))
1118 print(formatted_time)
1119 {{/expand}}
1120
1121
1122
1123
1124 [[Contents>>doc:||anchor="Contents"]]
1125
1126
1127 ==== User Data (FLASH2) ====
1128
1129 The data saved specifically for detectors at an experiment will show up in /Experiment/ there is a large number of options for cameras or monitoring pslow properties (motor positons etc) for user experiments. For details please ask your local contact.
1130
1131 NOTE: If parameters for an experiment are included on short notice the correct naming in the HDF5 may not be in time and the data will show up in /uncategorized/ with the DOOCS names
1132
1133 The most common and permanently installed device used by experiment are our ADCs:
1134
1135 ===== GHz ADCs =====
1136
1137 ADC traces of the (SPDevices 412) GHZ ADCs available for the users . More information about the ADCs can be found** [[here>>doc:FS-FLASH USER tmp.Data Acquisition and controls 1.Controls (DOOCS, jDDD,\.\.\.).MTCA ADCs.WebHome]]**
1138 //saved on DEMAND in the user DAQ//
1139 \\Up to now there are 4 channels available at FL24
1140 \\\\{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD{{/code}}
1141 {{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH01/TD{{/code}}
1142 \\{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH02/TD{{/code}}{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH03/TD{{/code}}
1143
1144
1145 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
1146 here the {{code language="none"}}CH00.TD{{/code}} is the full ADC trace as it is sampled ( typically several 100.000 samples per pulse train) while the {{code language="none"}}CH00.DAQ.TD{{/code}} trace only has the number of samples which are sent to the DAQ OR if //grouping// is activated the {{code language="none"}}CH00.DAQ.TD{{/code}} conatins only the grouped spectra. To read the ADC trace with an online analysis program the {{code language="none"}}CH00.DAQ.TD{{/code}} is used preferablly.
1147 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00{{/code}}
1148
1149 In addition there are also additional parameters saved like:
1150
1151 * {{code language="none"}}sample frequency{{/code}}: it shows the sample frequency in MHz (number of samples per µs). NOTE: the clock of the ADC is NOT synchronized to the FLASH timing system. Thus the number of samples between bunches in the bunch train may be not integer numbers which will be show up for long bunch trains.
1152 * {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
1153 * {{code language="none"}}error (ADC):{{/code}}0 indicates that there was no error
1154 * {{code language="none"}}/CH0-CH3/offset{{/code}}: To use the full dynamic range of the ADC one can shift the base line . This offset is saved here.
1155
1156 ===== MHz ADCs =====
1157
1158 similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
1159 {{code language="none"}}/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH2/TD{{/code}}
1160 DOOCS prop : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02/CH00.TD
1161 DAQ channel: : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02
1162
1163 In addition there are also additional parameters saved like:
1164
1165 * {{code language="none"}}sample frequency{{/code}}: it shows the sample frequency in MHz (number of samples per µs). NOTE: the clock of the ADC is NOT synchronized to the FLASH timing system. Thus the number of samples between bunches in the bunch train may be not integer numbers which will be show up for long bunch trains.
1166 * {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
1167
1168 [[Contents>>doc:||anchor="Contents"]]
1169
1170
1171
1172 ==== Pump Probe Laser (FLASH2) ====
1173
1174 {{info width="30%"}}
1175 list of saved parameters status May 2024 (up to now the parameters can be found in /zraw/ ... )
1176
1177 [[attach:FSLADAQ-DAQParameterlistULGAN-2.pdf||target="_blank"]]
1178
1179 [[attach:FSLADAQ-DAQParameterlistFL23-2.pdf||target="_blank"]]
1180
1181 [[attach:FSLADAQ-DAQParameterlistFL24-2.pdf||target="_blank"]]
1182
1183
1184 {{view-file att--filename="FSLADAQ-DAQParameterlistFL23-2.pdf"}}{{/view-file}}
1185
1186
1187 {{view-file att--filename="FSLADAQ-DAQParameterlistFL23-2.pdf"}}{{/view-file}}
1188
1189
1190 {{view-file att--filename="FSLADAQ-DAQParameterlistFL24-2.pdf"}}{{/view-file}}
1191
1192 internal link to parameter list: [[FS-LA DAQ - XWiki>>url:https://xwiki.desy.de/xwiki/bin/view/FSLADAQ/]]
1193 {{/info}}
1194
1195 {{expand title="Laser parameters used until 2023"}}
1196 These are the parameters that can be saved in the FL2 User DAQ for the FL2 PP laser//** FOR BEAMLINE FL24**//
1197
1198 **User delay**
1199
1200 Delay (set value):
1201
1202 {{code language="none"}}
1203 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION_SET.WR
1204 {{/code}}
1205
1206 Delay (readback):
1207
1208 {{code language="none"}}
1209 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION.RD
1210 {{/code}}
1211
1212 (% style="letter-spacing:0.0px" %)Delay (encoder readback):
1213
1214 {{code language="none"}}
1215 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.ENCODER_POSITION.RD
1216 {{/code}}
1217
1218 OXC. jitter:
1219
1220 {{code language="none"}}
1221 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/CURRENT_INPUT_JITTER.RD
1222 {{/code}}
1223
1224
1225
1226 **FL24 Pulse resolved energy:**
1227
1228 OPCPA output (photodiode signal raw ADC trace 16000 samples):
1229
1230 {{code language="none"}}
1231 /zraw/FLASH.LASER/FLASH2CPUULGAN1.ADCSCOPE/CH23.TD/dGroup
1232 {{/code}}
1233
1234 (% style="letter-spacing:0.0px" %)Upper breadboard Photodiode (THG) burst (photodiode signal raw ADC trace 16000 samples)::
1235
1236 {{code language="none"}}
1237 /zraw/FLASH.LASER/FLASH2CPUULGAN1.ADCSCOPE/CH26.TD/dGroup
1238 {{/code}}
1239
1240 Upper breadboard Photodiode (THG) energy (analyzed signal. integration over pulses in the ADC trace. contains for each laser pulse the pulse energy in a.u.)
1241
1242 {{code language="none"}}
1243 /zraw/FLASH.LASER/MOD24.PES/FL24_userPD/dGroup
1244 {{/code}}
1245
1246
1247 **FL24 LAM (Laser Arrivaltime Monitor)  pulse resolved data:**
1248
1249 Signal of Photodiode1  - for experts only... (analyzed signal. integration over pulses in the ADC trace. )
1250
1251 {{code language="none"}}
1252 /zraw/FLASH.LASER/MOD24.PES/LAM.PD1/dGroup
1253 {{/code}}
1254
1255 Signal of Photodiode2  - for experts only...  (analyzed signal. integration over pulses in the ADC trace.)
1256
1257 {{code language="none"}}
1258 /zraw/FLASH.LASER/MOD24.PES/LAM.PD2/dGroup
1259 {{/code}}
1260
1261 "Actual" LAM Signal - to be calibrated ......  (analyzed signal. integration over pulses in the ADC trace.)
1262
1263 {{code language="none"}}
1264 /zraw/FLASH.LASER/MOD24.PES/LAM.PDBAL/dGroup
1265 {{/code}}
1266
1267 The delay feedback(% style="letter-spacing:0.0px" %)
1268
1269 {{code language="none"}}
1270 FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.DOUBLES/DOUBLE26 
1271 {{/code}}
1272
1273 The LAM delay feedback(% style="letter-spacing:0.0px" %) (the pulse energy signal, which is saved in the above but maybe it’s good to have this also as slow, in the case these two numbers are not the same the sysdc was active instead of the LAM):
1274
1275 {{code language="none"}}
1276 FLASH.LASER/MOD24.PES/LAM.PDBAL/PULSEENERGY.MEAN
1277 {{/code}}
1278
1279 LAM Delay line act:
1280
1281 {{code language="none"}}FLASH.SYNC/LAM.EXP.ODL/F2.MOD.AMC12/FMC0.MD22.1.POSITION.RD{{/code}}
1282 LAM Delay line set:
1283
1284 {{code language="none"}}
1285 FLASH.SYNC/LAM.EXP.ODL/F2.MOD.AMC12/FMC0.MD22.1.POSITION_SET.WR
1286 {{/code}}
1287
1288 LAM Delay line encoder:
1289
1290 {{code language="none"}}
1291 FLASH.SYNC/LAM.EXP.ODL/F2.MOD.AMC12/FMC0.MD22.1.ENCODER_POSITION.RD
1292 {{/code}}
1293
1294 Temperature feedback:
1295
1296 {{code language="none"}}
1297 FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.DOUBLES/DOUBLE24
1298 {{/code}}
1299
1300 **Feedback mode** (if this is not =1 the delay FB is not active, then it’s either temp feedback controlled or failsave, maybe it’s good to have):
1301
1302 {{code language="none"}}
1303 FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.INTS/INTEGER30
1304 {{/code}}
1305
1306
1307 **FL24 Attenuator angle:**
1308
1309 {{code language="none"}}
1310 FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS
1311 {{/code}}
1312
1313 **FL24 Polarization control:**
1314
1315 {{code language="none"}}
1316 FLASH.FEL/FLAPP2BEAMLINES/MOTOR14.FL24/FPOS
1317 {{/code}}
1318
1319 **SysDC delay error:**
1320
1321 {{code language="none"}}
1322 FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.DOUBLES/DOUBLE26
1323 {{/code}}
1324
1325
1326 **Timing error: (these two need to be observed and both=0 means no error)**
1327
1328 {{code language="none"}}
1329 FLASH/CPUULGAN1.TIMING/ULGAN1/dT_alarm
1330 {{/code}}
1331
1332 {{code language="none"}}
1333 FLASH/CPUULGAN1.TIMING/ULGAN1/dMPN
1334 {{/code}}
1335
1336 **Laser error status:**
1337
1338
1339 **FL24 Virtual camera X and Y history, beam size: (use slow data)**
1340
1341 {{code language="none"}}
1342 FLASH.LASER/MOD24.BEAMPOS/UV.VF_BP/CENTER.X
1343 {{/code}}
1344
1345 {{code language="none"}}
1346 FLASH.LASER/MOD24.BEAMPOS/UV.VF_BP/CENTER.Y
1347 {{/code}}
1348
1349 {{code language="none"}}
1350 FLASH.LASER/MOD24.CAM/UV.14.VF/ROI_SPECTRUM.X.SIG
1351 {{/code}}
1352
1353 {{expand title="Parameters used until 2021"}}
1354 //{{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/attenuator position{{/code}}always saved (PBD2)//
1355 DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
1356 DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
1357 desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
1358 units : deg.
1359
1360
1361
1362 //{{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/polarization position{{/code}}always saved (PBD2)//
1363 DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
1364 DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
1365 desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
1366 units : deg.
1367
1368
1369 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay readback{{/code}}
1370 //always saved (PBD2)//
1371 DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
1372 DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
1373 desc: delay of the Pump probe laser - measured by the read back position of the motor. There is also the set value available ( upto now these values are only updating every 1-2 seconds. There is no fast encoder property as on FLASH1 available)
1374 units : ps )
1375
1376
1377 {{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS{{/code}}
1378 //always saved (PBD)//
1379 DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
1380 DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
1381 desc: rms jitter of the fs-Oscillator
1382 units: fs
1383 {{/expand}}
1384
1385
1386 ==== FL 26 Pump Probe Laser (FLASH2) ====
1387
1388 These are the parameters that can be saved in the FL2 User DAQ for the FL2 PP laser//** FOR BEAMLINE FL26**//
1389
1390
1391 **User delay**
1392
1393 Delay (set value):
1394
1395 {{code language="none"}}
1396 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION_SET.WR
1397 {{/code}}
1398
1399 Delay (readback):
1400
1401 {{code language="none"}}
1402 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION.RD
1403 {{/code}}
1404
1405 Delay (encoder readback):
1406
1407 {{code language="none"}}
1408 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.ENCODER_POSITION.RD
1409 {{/code}}
1410
1411 OXC. jitter:
1412
1413 {{code language="none"}}
1414 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/CURRENT_INPUT_JITTER.RD
1415 {{/code}}
1416
1417
1418 **Parameters for FL26**
1419
1420 (% class="wrapped" %)
1421 |(((
1422 FL2PPL FL26 REMI Attenuation: HWP motor current position
1423 )))|(((
1424 FLASH.FEL/FLAPP2BEAMLINES/MOTOR11.FL26B/FPOS
1425 )))
1426 |(((
1427 FL2PPL FL26 REMI Polarization: linear polarization angle
1428 )))|(((
1429 FLASH.FEL/FLAPP2BEAMLINES/MOTOR12.FL26B/FPOS
1430 )))
1431 |(((
1432 FL2PPL FL26 REMI Diagnostics: NIR spectrum
1433 )))|(((
1434 FLASH.LASER/MOD26.SPECT/REMI/DAQ_CHANNEL
1435 )))
1436 |(((
1437 FL2PPL FL26 REMI Diagnostics: photo diode input MOD2.6 - pulse energy mean
1438 )))|(((
1439 FLASH.LASER/MOD26.PES/RE_OUT/PULSEENERGY.MEAN
1440 )))
1441 |(((
1442 FL2PPL FL26 REMI Diagnostics: photo diode input MOD2.6 - intra burst pulse energy
1443 )))|(((
1444 FLASH.LASER/MOD26.PES/RE_OUT/DAQ_CHANNEL
1445 )))
1446 |(((
1447 FL2PPL FL26 REMI Diagnostics: photo diode input MOD2.6 - raw adc
1448 )))|(((
1449 FLASH.LASER/TAMC532DMA/ULGAN1_S5/CH04.TD
1450 )))
1451 |(((
1452 FL2PPL FL26 REMI Diagnostics: photo diode input REMI - pulse energy mean
1453 )))|(((
1454 FLASH.LASER/MOD26.PES/INC_BOX/PULSEENERGY.MEAN
1455 )))
1456 |(((
1457 FL2PPL FL26 REMI Diagnostics: photo diode input REMI - intra burst pulse energy
1458 )))|(((
1459 FLASH.LASER/MOD26.PES/INC_BOX/DAQ_CHANNEL
1460 )))
1461 |(((
1462 FL2PPL FL26 REMI Diagnostics: photo diode input REMI - raw adc
1463 )))|(((
1464 FLASH.LASER/TAMC532DMA/ULGAN1_S5/CH05.TD
1465 )))
1466 |(((
1467 FL2PPL FL26 REMI In coupling: filter wheel 1 position
1468 )))|(((
1469 FLASH/MOD26.FW1/FLASH2MOD26/pos
1470 )))
1471 |(((
1472 FL2PPL FL26 REMI In coupling: filter wheel 2 position
1473 )))|(((
1474 FLASH/MOD26.FW2/FLASH2MOD26/pos
1475 )))
1476 |(((
1477 FL2PPL FL26 REMI: Energy meter REMI incoupling breadboard
1478 )))|(((
1479 FLASH.LASER/MOD26.OPHIRE/REINC.54/DAQ_CHANNEL
1480 )))
1481 |(((
1482 FL2PPL FL26 REMI Incoupling: focusing lens position
1483 )))|(((
1484 FLASH.FEL/FLAPP2BEAMLINES/MOTOR3.FL26B/FPOS
1485 )))
1486 |(((
1487 FL2PPL FL26 REMI Incoupling: nearfield
1488 )))|(((
1489 FLASH.LASER/MOD26.CAM/REINC.21.NF/DAQ_CHANNEL
1490 )))
1491 |(((
1492 FL2PPL FL26 REMI Incoupling: focus
1493 )))|(((
1494 FLASH.LASER/MOD26.CAM/REINC.22.FF/DAQ_CHANNEL
1495 )))
1496 |(((
1497 FL2PPL FL26 REMI Drift: relative arrival time intra burst LAM balanced - calb. in the PES
1498 )))|(((
1499 FLASH.LASER/MOD26.PES/LAM_DIFF/DAQ_CHANNEL
1500 )))
1501 |(((
1502 FL2PPL FL26 REMI Drift: forward signal (PD1)  raw
1503 )))|(((
1504 FLASH.LASER/TAMC532DMA/ULGAN1_S5/CH00.TD
1505 )))
1506 |(((
1507 FL2PPL FL26 REMI Drift: backward signal (PD2) raw
1508 )))|(((
1509 FLASH.LASER/TAMC532DMA/ULGAN1_S5/CH01.TD
1510 )))
1511 |(((
1512 FL2PPL FL26 REMI Drift: mean relative burst arrival time - avarage of the calib value
1513 )))|(((
1514 FLASH.LASER/MOD26.PES/LAM_DIFF/PULSEENERGY.MEAN
1515 )))
1516 |(((
1517 FL2PPL FL26 REMI Drift: delay line position (ODL of the LAM REMI)
1518 )))|(((
1519 FLASH.FEL/FLAPP2BEAMLINES/MOTOR14.FL26B/FPOS
1520 )))
1521 |(((
1522 FL2PPL FL26 Laser Hutch: delay line position (ODL of the osc. Sync / user delay)
1523 )))|(((
1524 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION.RD
1525 )))
1526 |(((
1527 FL2PPL FL26 REMI Drift: delay line encoder position (ODL REMI raw value)
1528 )))|(((
1529 FLASH.SYNC/LAM.EXP.ODL/F2.MOD.AMC12/FMC0.MD22.0.ENCODER_POSITION.RD
1530 )))
1531 |(((
1532 Jiiter between oscillator and MLO (inloop jitter osc. Sync)
1533 )))|(((
1534 FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/CURRENT_INPUT_JITTER.RD
1535 )))
1536 |(((
1537 Temperature controlled fiber (PWM signal to the temperature controlled fiber delay sysdc)
1538 )))|(((
1539 FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.DOUBLES/DOUBLE23
1540 )))
1541 |(((
1542 Temperature controlled fiber (Temp of the fiber delay sysdc)
1543 )))|(((
1544 FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.DOUBLES/DOUBLE24
1545 )))
1546 |(((
1547 Sydc feedback data if LAM is not activated (sysdc delay)
1548 )))|(((
1549 FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.DOUBLES/DOUBLE26
1550 )))
1551 {{/expand}}
1552
1553
1554
1555 === "/uncategorized/" ===
1556
1557 If parameters for an experiment are included on short notice the correct naming in the HDF5 may not be in time and the data will show up in /uncategorized/ with their DOOCS names
1558
1559
1560 === HDF5 structure revisions ===
1561
1562 Starting with Beamblock 4, August 2018, the hierarchy of the HDF group names have been adapted to reflect the new situation at FLASH. FLASH2 is operating for users quite some time now. Therefore, both accelerators appear equally in their respective HDF groups, namely "/FL1" and "/FL2". The root group of proper, by run organised HDF files have an attribute called "version". This version attribute has changed from "0.2.x" to "0.3.x". The changes in detail:
1563
1564
1565 * All FLASH1 related HDF groups moved to group "/FL1", i.e. a new prefix "/FL1" is added to their HDF path.
1566 * The ambigious term "pulse" has been replaced by "train" to refer to "pulse train". Most notably, the dataset "/Timing/pulse ID" has changed to "/Timing/train ID".
1567 * A number of inconsistent names have been streamlined. The relevant changes are listed in the following table.
1568
1569 (% class="wrapped" %)
1570 |=(((
1571 earlier HDF path (vers. 0.2)
1572 )))|=(((
1573 is now (vers. 0.3)
1574 )))
1575 |(((
1576 /Photon Diagnostic/GMD/Beam position/position BDA x
1577 )))|(((
1578 /FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal
1579 )))
1580 |(((
1581 /Photon Diagnostic/GMD/Beam position/position BDA y
1582 )))|(((
1583 /FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical
1584 )))
1585 |(((
1586 /Photon Diagnostic/GMD/Beam position/position tunnel x
1587 )))|(((
1588 /FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal
1589 )))
1590 |(((
1591 /Photon Diagnostic/GMD/Beam position/position tunnel y
1592 )))|(((
1593 /FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical
1594 )))
1595 |(((
1596 /Experiment/Pump probe laser/BPM/position x
1597 )))|(((
1598 /FL1/Experiment/Pump probe laser/BPM/position horizontal
1599 )))
1600 |(((
1601 /Experiment/Pump probe laser/BPM/position y
1602 )))|(((
1603 /FL1/Experiment/Pump probe laser/BPM/position vertical
1604 )))
1605 |(((
1606 /FL2/Photon Diagnostic/GMD/Beam position/Average/position hall horizontal
1607 )))|(((
1608 /FL2/Photon Diagnostic/GMD/Average beam position/position hall horizontal
1609 )))
1610 |(((
1611 /FL2/Photon Diagnostic/GMD/Beam position/Average/position hall vertical
1612 )))|(((
1613 /FL2/Photon Diagnostic/GMD/Average beam position/position hall vertical
1614 )))
1615 |(((
1616 /FL2/Photon Diagnostic/GMD/Beam position/Average/position tunnel horizontal
1617 )))|(((
1618 /FL2/Photon Diagnostic/GMD/Average beam position/position tunnel horizontal
1619 )))
1620 |(((
1621 /FL2/Photon Diagnostic/GMD/Beam position/Average/position tunnel vertical
1622 )))|(((
1623 /FL2/Photon Diagnostic/GMD/Average beam position/position tunnel vertical
1624 )))
1625 |(((
1626 /FL2/Photon Diagnostic/GMD/Average energy/hall
1627 )))|(((
1628 /FL2/Photon Diagnostic/GMD/Average energy/energy hall
1629 )))
1630 |(((
1631 /FL2/Photon Diagnostic/GMD/Average energy/hall (raw)
1632 )))|(((
1633 /FL2/Photon Diagnostic/GMD/Average energy/energy hall (raw)
1634 )))
1635 |(((
1636 /FL2/Photon Diagnostic/GMD/Average energy/tunnel
1637 )))|(((
1638 /FL2/Photon Diagnostic/GMD/Average energy/energy tunnel
1639 )))
1640 |(((
1641 /FL2/Photon Diagnostic/GMD/Average energy/tunnel (raw)
1642 )))|(((
1643 /FL2/Photon Diagnostic/GMD/Average energy/energy tunnel (raw)
1644 )))
1645 |(((
1646 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/hall x
1647 )))|(((
1648 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall horizontal
1649 )))
1650 |(((
1651 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/hall y
1652 )))|(((
1653 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall vertical
1654 )))
1655 |(((
1656 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/tunnel x
1657 )))|(((
1658 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel horizontal
1659 )))
1660 |(((
1661 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/tunnel y
1662 )))|(((
1663 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel vertical
1664 )))
1665
1666 [[Contents>>doc:||anchor="Contents"]]