Wiki source code of The FLASH HDF5 structure

Version 78.1 by sndueste on 2023/11/01 16:51

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