Wiki source code of The FLASH HDF5 structure

Version 39.1 by sndueste on 2021/02/09 11:53

Show last authors
1 == Contents ==
2
3
4
5 {{toc/}}
6
7 \\
8
9 == General information about HDF5 ==
10
11 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"]]
12
13 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"]]
14
15 For use on the DESY Maxwell or PAL (max-fsc or pal) **hdfview** is available in the xray module :
16 {{code language="none"}}> module load xray{{/code}}
17 {{code language="none"}}> hdfview{{/code}}
18
19 [[Contents>>doc:||anchor="Contents"]]
20
21 == The current FLASH HDF5 structure ==
22
23 The photon diagnostic, electron diagnostic and beamline information as well as the information about the pump-probe laser and the infrastructure offered for users (GHz/MHz ADCs) can be included in one HDF5 file which is organized according to train IDs. The general structure is:
24
25 * Electron Diagnostic
26 * Photon Diagnostics
27 * Beamlines
28 * Experiment
29 * Timing
30 [[image:attach:HDF5_structure.jpg||height="400"]]
31
32 A detailed description of (most) channels can be found in the lower part of the hdf5 viewer:
33 [[image:attach:HDF5_structure_desc.jpg||thumbnail="true" height="250"]]
34
35 [[Contents>>doc:||anchor="Contents"]]
36
37 \\
38
39 === HDF5 example files ===
40
41 Here we have a few HDF5 samples (User data combined with Photon diagnostics data) from a few beamtimes showing the different kind options.
42
43 [[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"]]
44
45 \\
46
47 [[~[~[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"]]
48
49 \\
50
51 \\
52
53 [[Contents>>doc:||anchor="Contents"]]
54
55 \\
56
57 == The new (starting 2021) HDF5 format ==
58
59 Here is [[some documentation on the changes of the HDF5 format>>doc:FLASHUSER.HDF5 format]] that well be available in 2021 (work in progress)
60
61 \\
62
63 \\
64
65 == Most popular FLASH parameters and their names in HDF5, DOOCS and (raw) DAQ ==
66
67 {{id name="DOOCSparameters"/}}
68
69 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"]].
70 The most common and often used ones are summarized below:
71
72 Note, the HDF group and data set names apply to our HDF tree version since vers. 0.3.0.
73
74 \\
75
76 === FLASH1 ===
77
78 \\
79
80 ==== Beamline info (FLASH1) ====
81
82 {{code language="none"}}/FL1/Beamlines/Attenuator/pressure{{/code}}
83 //always saved (PBD)//
84 DOOCS prop : {{code language="none"}}FLASH.FEL/GAS_DOSING/FL1.ATTENUATOR/PRESSURE{{/code}}
85 DAQ channel: {{code language="none"}}FLASH.FEL/GAS_DOSING/FL1.ATTENUATOR/PRESSURE{{/code}}
86 desc: set pressure in the gas attenuator
87 units: mbar
88 \\
89
90 {{code language="none"}}/FL1/Beamlines/BL/Fast shutter/open{{/code}}
91 //always saved (PBD)//
92 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/BL.SHUTTER/CH00.TD{{/code}}
93 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/BL.SHUTTER{{/code}}
94 desc: BL Beamline Fast shutter state
95 units: none
96 \\
97
98 {{code language="none"}}/FL1/Beamlines/PG/Fast shutter/open{{/code}}
99 //always saved (PBD)//
100 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/PG.SHUTTER/CH00.TD{{/code}}
101 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/PG.SHUTTER{{/code}}
102 desc: PG Beamline Fast shutter state
103 units: none
104 \\
105
106 {{code language="none"}}/FL1/Beamlines/BL/Filters/BL filter wheel/position filter 1{{/code}}
107 //always saved (PBD)//
108 DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
109 DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
110 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]]
111 units: degree
112 \\
113
114 {{code language="none"}}/FL1/Beamlines/BL/Filters/BL filter wheel/position filter 2{{/code}}
115 //always saved (PBD)//
116 DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
117 DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
118 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]]
119 units: degree
120 \\
121
122 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 1{{/code}}
123 //always saved (PBD)//
124 DOOCS prop : = TTF2.FEL/BDAF1/BDA.F1/FW.MOTOR.POS=
125 DAQ channel: {{code language="none"}}TTF2.FEL/BDAF1/BDA.F1/FW.MOTOR.POS{{/code}}
126 desc: Position of the PG filter wheel 1
127 units: degree
128 \\
129
130 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 2{{/code}}
131 //always saved (PBD)//
132 DOOCS prop : {{code language="none"}}TTF2.FEL/BDAF2/BDA.F2/FW.MOTOR.POS{{/code}}
133 DAQ channel: {{code language="none"}}TTF2.FEL/BDAF2/BDA.F2/FW.MOTOR.POS{{/code}}
134 desc: Position of the PG filter wheel 2
135 units: degree
136 \\
137
138 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 3{{/code}}
139 //always saved (PBD)//
140 DOOCS prop : {{code language="none"}}TTF2.FEL/PGFILTERS/PGFILTERS/FW.MOTOR.POS{{/code}}
141 DAQ channel: {{code language="none"}}TTF2.FEL/PGFILTERS/PGFILTERS/FW.MOTOR.POS{{/code}}
142 desc: Position of the PG filter wheel 3
143 units: degree
144
145 \\
146
147
148 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
149
150 [[Contents>>doc:||anchor="Contents"]]
151
152 \\
153
154 ==== Photon Diagnostics SASE ([[GMD>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/gmd_intensity_and_position/index_eng.html||shape="rect"]]) ====
155
156 \\
157
158 (% style="color: rgb(0,0,0);" %)**Discontinued GMD data recording / evaluation  (VME + PhotonFlux ML server)**
159
160 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
161 //always saved (PBD)//\\
162
163 (% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT04/VAL{{/code}} (%%)
164 (% style="color: rgb(0,0,0);" %)DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENPULSEIC{{/code}}(%%)
165 desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator (ion current)
166 units : microJ
167
168 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
169 //always saved (PBD)//
170
171 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT34/VAL{{/code}}
172 DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.USER{{/code}}
173 desc :Energy per pulse Tunnel (from e-) - the values are set to "0" if there was no SASE beam in the FEL
174 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]]**
175
176 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel (raw){{/code}}
177 //always saved (PBD)//
178 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT14/VAL{{/code}}
179 DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.FF{{/code}}
180 desc :Energy per pulse Tunnel (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise
181 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]]**
182
183 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy BDA{{/code}}
184 //always saved (PBD)//
185
186 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT05/VAL{{/code}}
187 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENPULSEIC{{/code}}
188 desc : calibrated average SASE Energy/pulse measured in the BDA (in the experimental hall) after the attenuator (ion current)
189 units : microJ
190
191 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA{{/code}}
192 //always saved (PBD)//
193
194 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT35/VAL{{/code}}
195 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.USER{{/code}}
196 desc :Energy per pulse BDA (from e-) - the values are set to "0" if there was no SASE beam in the FEL
197 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]]**
198
199 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA (raw){{/code}}
200 //always saved (PBD)//
201 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT15/VAL{{/code}}
202 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.FF{{/code}}
203 desc :Energy per pulse BDA (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise
204 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]]**
205
206 \\
207
208 (% style="color: rgb(0,0,0);" %)**NEW (2021) GMD data recording / evaluation  (MTCA, analog to FLASH2 and XFEL)**
209
210 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
211 //always saved (PBD)//
212 (% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL1.TUNNEL/PHOTONFLUX.UJ{{/code}} (%%)
213 (% style="color: rgb(0,0,0);" %)DAQ channel: {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL1.TUNNEL/PHOTONFLUX.UJ{{/code}}
214
215 desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator
216 units : microJ
217
218 \\
219
220 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
221 //always saved (PBD)//
222
223 (% style="color: rgb(0,0,0);" %)DOOCS prop : 
224 {{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}}
225
226 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)
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 {{info title="GMD pulse resolved data structure"}}
230 For every pulse in the pulse train the information is saved:
231
232
233 1. **Intensity per pulse** (a.u. (more or less µJ ))
234 1. Intensity per pulse (auxillary GMD) - not used
235 1. Position horizontal (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
236 1. Position vertical (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
237 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)(%%))
238 1. Position horizontal sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
239 1. Position vertical sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
240 1. Combined warning and error flags
241
242 The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 
243 file
244
245
246 [[image:attach:image2021-2-9_10-51-6.png||height="250"]]
247
248 \\
249 {{/info}}
250
251 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 !
252
253 \\
254
255 Besides  pulse energy the GMD also provides information about the beam position
256
257 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal{{/code}}
258 //always saved (PBD)//
259 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
260 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
261 desc :Beam position of the photon Beam determined by the GMD (BDA, x=horizontal)
262 units : mm
263
264 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical{{/code}}
265 //always saved (PBD)//
266 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
267 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
268 desc :Beam position of the photon Beam determined by the GMD (BDA, y=vertical)
269 units : mm
270
271 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal{{/code}}
272 //always saved (PBD)//
273 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
274 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
275 desc :Beam position of the photon Beam determined by the GMD (TUNNEL, x=horizontal)
276 units : mm
277
278 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical{{/code}}
279 //always saved (PBD)//
280 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
281 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
282 desc :Beam position of the photon Beam determined by the GMD (TUNNEL, y=vertical)
283 units : mm
284
285 \\
286
287 ==== Spectrometer (FLASH1) ====
288
289 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength{{/code}}
290 _always saved (when Spectrum is measured !!) (PBD) _
291 DOOCS prop : {{code language="none"}}TTF2.EXP/PHOTONWL.ML/WAVE_LENGTH/VAL.TD{{/code}}
292 DAQ channel: {{code language="none"}}PBD.PHOTONWL.ML/WAVE_LENGTH{{/code}}
293 desc : XUV Spectrum measured with the "tunnel spectrometer"
294 units :
295
296 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength start value{{/code}}
297 _always saved (when Spectrum is measured !!) (PBD) _
298 DOOCS prop : {{code language="none"}}TTF2.EXP/PBD.PHOTONWL.ML/BSTART/VAL{{/code}}
299 DAQ channel: {{code language="none"}}TTF2.EXP/PBD.PHOTONWL.ML/BSTART/VAL{{/code}}
300 desc : start value (in nm) for the wavelength axis of the XUV Spectrum measured with the "tunnel spectrometer"
301 units : nm
302
303 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength increment{{/code}}
304 _always saved (when Spectrum is measured !!) (PBD) _
305 DOOCS prop : ==
306 DAQ channel: ==
307 desc : increment value (in nm) for each pixel for the wavelength axis of the XUV Spectrum measured with the "tunnel spectrometer"
308 units : nm
309
310 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy{{/code}}
311 //saved on DEMAND (PBD spectrometer stream)//
312 DOOCS prop : ==
313 DAQ channel: {{code language="none"}}PBD.PHOTONEN.ML/PHOTON_ENERGY{{/code}}
314 desc : XUV Spectrum in eV measured with the "PG2 spectrometer"
315 units :
316
317 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy start value{{/code}}
318 //saved on DEMAND (PBD spectrometer stream)//
319 DOOCS prop : ==
320 DAQ channel: ==
321 desc : start value (in eV) for the wavelength axis of the XUV Spectrum measured with the "PG2 spectrometer"
322 units : eV
323
324 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy increment{{/code}}
325 //saved on DEMAND (PBD spectrometer stream)//
326 DOOCS prop : ==
327 DAQ channel: ==
328 desc : increment value (in eV) for each pixel for the wavelength axis of the XUV Spectrum measured with the "PG spectrometer"
329 units : eV
330
331 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength{{/code}}
332 //saved on DEMAND (PBD spectrometer stream)//
333 DOOCS prop : ==
334 DAQ channel: {{code language="none"}}PHOTONEN.ML/PHOTON_WAVE_LEN{{/code}}
335 desc : XUV Spectrum in nm measured with the "PG2 spectrometer"
336 units :
337
338 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength increment{{/code}}
339 //saved on DEMAND (PBD spectrometer stream)//
340 DOOCS prop : ==
341 DAQ channel: ==
342 desc : start value (in nm) for the wavelength axis of the XUV Spectrum measured with the "PG2 spectrometer"
343 units : nm
344
345 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength start value{{/code}}
346 //saved on DEMAND (PBD spectrometer stream)//
347 DOOCS prop : ==
348 DAQ channel: ==
349 desc : increment value (in nm) for each pixel for the wavelength axis of the XUV Spectrum measured with the "PG spectrometer"
350 units : nm
351
352 [[Contents>>doc:||anchor="Contents"]]
353
354 ==== Electron Beam properties (FLASH1) ====
355
356 ===== bunch charge =====
357
358 {{code language="none"}}/FL1/Electron Diagnostic/Bunch charge/after undulator{{/code}}
359 //always saved (PBD)//
360 DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/12EXP/CHARGE.FLASH1{{/code}}
361 DAQ channel: {{code language="none"}}FLASH.DIAG/TOROID/12EXP{{/code}}
362 desc: electron bunch charge (FLASH1)
363 units: nC
364
365 =====
366 arrival time =====
367
368 {{code language="none"}}/FL1/Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}}
369 //always saved (PBD)//
370 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
371 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
372 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).
373 units: ps (bigger numbers indicate later arrivaltime of the electrons)
374
375 {{code language="none"}}/FL1/Electron Diagnostic/BAM/1SFELC/electron bunch arrival time (low charge){{/code}}
376 //always saved (PBD)//
377 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/1SFELC/LOW_CHARGE_ARRIVAL_TIME{{/code}}
378 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/1SFELC.LOW_CHARGE_ARRIVAL_TIME{{/code}}
379 desc: Electron bunch arrival time measured with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020.
380 units: ps (bigger numbers indicate later arrivaltime of the electrons)
381
382 {{info title="BAM hints"}}
383 * besides the arrivaltime from FLASH1 there is also the FLASH2/3 electron arrival time saved.In case of doubt ask your local contact
384 * [[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]]
385 * [[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"]]
386 * a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
387 {{/info}}
388
389 \\
390
391 ===== electron beam profile =====
392
393 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile{{/code}}
394 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
395 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/OUT.PROF.CCCED{{/code}}
396 DAQ channel: {{code language="none"}}PBD.BEAM.PROF.ML/DAQ.OUT.PROF.CCCED{{/code}}
397 desc: temporal profile of electron bunch, y axis in Ampers (FLASH1)
398 units: pixel
399 \\
400
401 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/Expert stuff/TDS calibration constant{{/code}}
402 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
403 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/CALIB.CONST.T{{/code}}
404 DAQ channel: = PBD.BEAM.PROF.ML/CCT=
405 desc: TDS calibration constant for the x-axis of the profiles: fs per pixel
406 units: fs per pixel
407 \\
408
409 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile width rms{{/code}}
410 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
411 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/SOWS.W.CCTED{{/code}}
412 DAQ channel: {{code language="none"}}PBD.BEAM.PROF.ML/PROFWIDTHCCTED{{/code}}
413 desc: rms pulse width of the measures TDS electron bunch profile
414 units: fs
415
416 ===== electron bunch energy =====
417
418 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/average electron energy{{/code}}
419 _always saved (PBD)
420 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_INTRA_MEAN/VAL{{/code}}
421 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_MEAN{{/code}}
422 desc: electron bunch energy (average over the bunch train)
423 units: (% class="twikiNewLink" %)MeV(%%)
424 \\
425
426 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/pulse resolved energy{{/code}}
427 _always saved (PBD)
428 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_SPECT/VAL.TD{{/code}}
429 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_SPECT{{/code}}
430 desc: electron bunch energy bunch resolved
431 units: (% class="twikiNewLink" %)MeV
432
433 \\
434
435 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/wavelength bunch train average{{/code}}
436 _always saved (PBD)
437 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/LAMBDA_MEAN/VAL{{/code}}
438 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/LAMBDA_MEAN{{/code}}
439 desc: Wavelength calculated by the electron bunch energy (average over the bunch train) (FLASH1)
440 units: nm
441 \\
442
443 [[Contents>>doc:||anchor="Contents"]]
444
445 \\
446
447 ==== Timing information, rep rate etc.  (FLASH1) ====
448
449 ===== bunch repetition rate =====
450
451 {{code language="none"}}/FL1/Timing/repetition rate{{/code}}
452 //always saved (PBD)//
453 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.1{{/code}}
454 DAQ channel: {{code language="none"}}TTF2.UTIL/LASER.CONTROL/GUN/PULSE_FREQ{{/code}}
455 desc: repetition rate of the bunches / pulses within the burst (FLASH1)
456 units: kHz
457 \\
458
459 ===== set number of pulses =====
460
461 {{code language="none"}}/FL1/Timing/set number of bunches{{/code}}
462 //always saved (PBD)//
463 DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH1{{/code}}
464 DAQ channel: {{code language="none"}}TTF2.UTIL/LASER.CONTROL/GUN/PULSE_NUM{{/code}}
465 desc: Number of pulses set at the gun (FLASH1)
466 units:
467
468 ===== actual number of pulses =====
469
470 {{code language="none"}}/FL1/Timing/actual number of bunches{{/code}}
471 //always saved (PBD)//
472 DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/12EXP/NUMBEROFBUNCHES.FLASH1{{/code}}
473 DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}}
474 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)
475 units:
476 \\
477
478 ===== actual pulse pattern recorded after the undulator =====
479
480 {{code language="none"}}/FL1/Timing/Bunch pattern/pattern after undulator{{/code}}
481 //always saved (PBD)//
482 DOOCS prop : {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP/CHARGE.TD{{/code}}
483 DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}}
484 desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH1)
485 units:
486 \\
487
488 ===== Train ID =====
489
490 {{code language="none"}}/Timing/train ID{{/code}}
491 //always saved (PBD)//
492 DOOCS prop : {{code language="none"}}none{{/code}}
493 DAQ channel: {{code language="none"}}none{{/code}}
494 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 !)
495 units:
496 \\
497
498 ===== Train time =====
499
500 {{code language="none"}}/Timing/train time{{/code}}
501 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
502 units: d h min s cs
503 \\
504
505 {{code language="none"}}/Timing/time stamp{{/code}}
506 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
507 second column: microseconds
508 third column: Train ID of FLASH
509 \\
510
511 [[Contents>>doc:||anchor="Contents"]]
512
513 \\
514
515 ==== Pump Probe Laser (FLASH1) ====
516
517 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser attenuation{{/code}}
518
519 //always saved (PBD)//
520 DOOCS prop : {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/ROT2.CURRENT{{/code}}
521 DAQ channel: {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/ROT2.CURRENT{{/code}}
522 desc: attenuation of the PPLaser (rotation of a waveplate)
523 units : 0 no transmission , 1: full transmission
524
525 \\
526
527 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay{{/code}}
528 //always saved (PBD)//
529 DOOCS prop : {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/DLY1.CURRENT{{/code}}
530 DAQ channel: {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/DLY1.CURRENT{{/code}}
531 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
532 units : ps ( pos delay means IR comes later)
533
534 \\
535
536 {{code language="none"}}/FL1/Experiment/Pump probe laser/delay line IK220.0/ENC.DELAY{{/code}}
537 //always saved (PBD)//
538 DOOCS prop : {{code language="none"}}TTF2.FEL/DELLINE.ENC/IK220.0/ENC.DELAY{{/code}}
539 DAQ channel: {{code language="none"}}TTF2.FEL/DELLINE.ENC/IK220.0:ENC.DELAY{{/code}}
540 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
541 units : ps ( pos delay means IR comes later)
542
543 \\
544
545 {{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS GECCO{{/code}}
546 //always saved (PBD)//
547 DOOCS prop : {{code language="none"}}FLASH.SYNC/F1PPL.LASER_LOCK/28C.F1PPL1.CONTROLLER/ADV_CTRL_MANAGER.0.PID_INPUT_JITTER.2.RD{{/code}}
548 DAQ channel: {{code language="none"}}FLASH.SYNC/F1PPL.LASER_LOCK/28C.F1PPL1.CONTROLLER/ADV_CTRL_MANAGER.0.PID_INPUT_JITTER.2.RD{{/code}}
549 desc: rms jitter of the GECCO (% class="twikiNewLink" %)TiSa(%%) Oscillator units: fs
550
551 \\
552
553 {{code language="none"}}/FL1/Experiment/Pump probe laser/streak camera delay time{{/code}}
554 //always saved (PBD)//
555 DOOCS prop : {{code language="none"}}TTF2.FEL/TDOLFEL/TDOLFEL/STREAK.CAM.TIME{{/code}}
556 DOOCS prop : {{code language="none"}}TTF2.FEL/TDOLFEL/TDOLFEL/STREAK.CAM.TIME{{/code}}
557 desc: delaytime between the optical laser and the FEL units: ps
558
559 \\
560
561 [[Contents>>doc:||anchor="Contents"]]
562
563 \\
564
565 ==== User Data (FLASH1) ====
566
567 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.
568
569 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
570
571 The most common and permanently installed device used by experiment are our ADCs:
572
573 ===== GHz ADCs =====
574
575 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]]**
576 //saved on DEMAND in the user DAQ//
577 \\The HDF5 names for the ADC traces are depending on the beamline :
578 \\PG Beamline:
579 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH00/TD{{/code}}
580 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH01/TD{{/code}}
581 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH02/TD{{/code}}
582 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH03/TD{{/code}}
583
584 BL Beamlines:
585 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH00/TD{{/code}}
586 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH01/TD{{/code}}
587 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH02/TD{{/code}}
588 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH03/TD{{/code}}
589 \\{{code language="none"}}/FL1/Experiment/BL2/ADQ412 GHz ADC/CH00/TD{{/code}}
590 {{code language="none"}}/FL1/Experiment/BL2/ADQ412 GHz ADC/CH01/TD{{/code}}
591 \\{{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH02/TD{{/code}}
592 {{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH03/TD{{/code}}
593
594 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
595 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.
596 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00{{/code}}
597
598 In addition there are also additional parameters saved like:
599
600 * {{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.
601 * {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
602 * {{code language="none"}}error (ADC):{{/code}} 0 indicates that there was no error
603
604 ===== MHz ADCs =====
605
606 similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
607 {{code language="none"}}/FL1/Experiment/BL1/SIS8300 100MHz ADC/CH2/TD{{/code}}
608 DOOCS prop : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02/CH00.TD
609 DAQ channel: : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02
610
611 In addition there are also additional parameters saved like:
612
613 * {{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.
614 * {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
615
616 [[Contents>>doc:||anchor="Contents"]]
617
618 \\
619
620 \\
621
622 \\
623
624 === FLASH2 ===
625
626 There is analog to FLASH1 a permanently running "PhotonDagnostic DAQ FLASH2" (PBD2) and 2 User DAQs
627
628 ==== Beamline info (FLASH2) ====
629
630 (% style="color: rgb(255,153,0);" %)(not yet available){{code language="none"}}/FL2/Beamlines/Attenuator/pressure  {{/code}}(%%)
631 (% style="color: rgb(193,199,208);" %)//always saved (PBD2)// (%%)
632 (% style="color: rgb(193,199,208);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
633 (% style="color: rgb(193,199,208);" %)DAQ channel:  {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
634 (% style="color: rgb(193,199,208);" %)desc: set pressure in the gas attenuator (%%)
635 (% style="color: rgb(193,199,208);" %)units: mbar(%%)
636 \\
637
638 {{code language="none"}}/FL2/Beamlines/FL20/Shutter/open{{/code}}
639 //always saved (PBD2)//
640 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER/CH00.TD{{/code}}
641 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER{{/code}}
642 desc: BL Beamline Fast shutter state: 1 is open, 0 is closed ( for technical reasons there are 100 vales of this state saved ...)
643 units: none
644
645
646 {{code language="none"}}/FL2/Beamlines/Filter wheel/position wheel 1{{/code}}
647 //always saved (PBD2)//
648 DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS{{/code}}
649 DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS
650 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]]**
651 units: degree
652 \\
653
654
655 //always saved (PBD2)//
656 \\\\**[[here>>doc:FLASHUSER.jddd-linked help pages.Filter-Units.Filter wheels in FLASH1 and FLASH2.WebHome]]**
657 {{code language="none"}}/FL2/Beamlines/Filter wheel/position wheel 2 DOOCS prop : FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS desc: Position of the BL filter wheel 2 - to correlate with the filter material please look units: degree{{/code}}
658
659 \\
660
661 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
662
663 [[Contents>>doc:||anchor="Contents"]]
664
665 \\
666
667 \\
668
669 ==== Photon Diagnostics SASE ([[XGMD>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/gmd_intensity_and_position/index_eng.html||shape="rect"]] - FLASH2) ====
670
671 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
672 //always saved (PBD2)//
673 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ{{/code}}
674 DAQ channel:{{code language="none"}} FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ{{/code}}
675 desc : calibrated average ( ~~ 20 sec averaging time ) SASE Energy/pulse measured in the TUNNEL before the attenuator (ion current)
676 units : microJ
677
678 \\
679
680 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
681 //always saved (PBD2)//
682 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
683 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
684 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)
685 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]]**
686
687 {{info title="GMD pulse resolved data structure"}}
688 For every pulse in the pulse train the information is saved:
689
690
691 1. **Intensity per pulse** (a.u. (more or less µJ ))
692 1. Intensity per pulse (auxillary GMD) - not used
693 1. Position horizontal (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
694 1. Position vertical (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
695 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)(%%))
696 1. Position horizontal sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
697 1. Position vertical sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
698 1. Combined warning and error flags
699
700 The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 
701 file
702
703
704 [[image:attach:image2021-2-9_10-51-6.png||height="250"]]
705
706 \\
707 {{/info}}
708
709 \\
710
711 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 !
712
713 \\
714
715 Besides  pulse energy the GMD also provides information about the beam position
716
717 \\
718
719 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average Beam position/position tunnel horizontal{{/code}}
720 //always saved (PBD2)//
721 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
722 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
723 desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
724 units : mm
725
726 \\
727
728 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average Beam position/position tunnel vertical{{/code}}
729 //always saved (PBD2)//
730 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
731 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
732 desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
733 units : mm
734
735 \\
736
737
738 //always saved (PBD2)//
739 \\\\{{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel x DOOCS prop : FLASH.FEL/XGM.BPM/FL2.HALL/X.TDDAQ channel: FLASH.FEL/XGM.BPM/FL2.HALL:2 desc: {{/code}}Besides the well calibrated averaged beam position information there is also the option
740 {{code language="none"}}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 ...)units : mm    {{/code}}
741
742 {{code language="none"}}(x=horizontal, y = vertial){{/code}}
743
744 again the same parameter set is available for the **HALL GMD**
745
746 \\
747
748 \\
749
750 ==== Photon Diagnostics OPIS[[ >>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]](FLASH2) ====
751
752 for more info see:** [[ OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]]**
753
754 (The OPIS hall is not installed yet ...)
755
756 \\
757
758 {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean photon energy{{/code}}
759 // saved opon request (PBD2)//
760 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042{{/code}}
761 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042{{/code}}
762 desc : mean photon energy ( ~~ 1 sec averaging time ) measured in the TUNNEL for a specific bunch out of the bunch train (via photoelectron spectroscopy)
763 units : eV
764
765 \\
766
767 {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean wavelength{{/code}}
768 // saved opon request (PBD2)//
769 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}}
770 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}}
771 desc : meanwavelength ( ~~ 1 sec averaging time ) measured in the TUNNEL for a specific bunch out of the bunch train (via photoelectron spectroscopy)
772 units : nm
773
774 \\
775
776 {{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}}
777 // saved opon request (PBD2)//
778 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL060{{/code}}
779 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL060{{/code}}
780 desc : The bunch number of the bunch used for the wavelength calculation
781 units :
782
783 \\
784
785 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 savng the compleate 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"]] ( respobsible for [[OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]])
786
787 \\
788
789 In case OPIS was not operating there is still informaton 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 ...
790
791 \\
792
793 \\
794
795 ==== Electron Beam properties (FLASH2) ====
796
797 ===== bunch charge =====
798
799 {{code language="none"}}/FL2/Electron Diagnostic/Bunch charge/after undulator{{/code}}
800 //always saved (PBD2)//
801 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
802 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
803 desc: electron bunch charge FLASH2 (average value for each bunchtrain).
804 units: nC
805
806 \\
807
808 ===== undulator settings =====
809
810 {{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/set wavelength{{/code}}
811 //always saved (PBD2)//
812 DOOCS prop : {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}}
813 DAQ channel:  {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}}
814 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 % ...
815 units: nm
816
817 {{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/SASE14 gap{{/code}}
818 //always saved (PBD2)//
819 DOOCS prop : {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}}
820 DAQ channel:  {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}}
821 desc: gap value of the undulators. This can be used to follow up how many undulators were closed and if there was a taper
822 units: mm
823
824 The gap values are saved for all 12 undulators (Nr 3 to 14). Undulator 14 is the one closest to the experimental hall.
825
826 =====
827 arrival time =====
828
829 {{code language="none"}}/FL2/Electron Diagnostic/BAM/8FL2XTDS/electron bunch arrival time (low charge){{/code}}
830 //always saved (PBD2)//
831 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/8FL2XTDS/LOW_CHARGE_ARRIVAL_TIME{{/code}}
832 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/8FL2XTDS.LOW_CHARGE_ARRIVAL_TIME{{/code}}
833 desc: Electron bunch arrival time measured with the BAM after the FLASH2 undulator (pulse resolved data)
834 units: ps (bigger numbers indicate later arrivaltime of the electrons)
835
836 **FL1**{{code language="none"}}//Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}}
837 //always saved (PBD2)//
838 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
839 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
840 desc: Electron bunch arrival time measured with the BAM  in the accelerator  (pulse resolved data)
841 units: ps (bigger numbers indicate later arrivaltime of the electrons)
842
843 \\
844
845 {{info title="BAM hints"}}
846 * The BAM 4DBC3 measures the arrivaltime of** FLASH 1 and FLASH2** in the same data set (thus also sorted in at /FL1/ !).
847 * 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 
848 ** 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
849 * [[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]]
850 * [[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"]]
851 * a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
852 {{/info}}
853
854
855 [[Contents>>doc:||anchor="Contents"]]
856
857 \\
858
859 ==== Timing information, rep rate etc.  (FLASH2) ====
860
861 ===== start time of FLASH2 =====
862
863 {{code language="none"}}/FL2/Timing/start time flash2{{/code}}
864 //always saved (PBD2)//
865 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}}
866 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}}
867 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 ...)
868 units: µs
869
870 ===== bunch repetition rate =====
871
872 {{code language="none"}}/FL2/Timing/repetition rate{{/code}}
873 //always saved (PBD2)//
874 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}}
875 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}}
876 desc: repetition rate of the bunches / pulses within the burst (FLASH2)
877 units: kHz
878
879 ===== actual number of pulses =====
880
881 {{code language="none"}}/FL1/Timing/actual number of bunches{{/code}}
882 //always saved (PBD2)//
883 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
884 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
885 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)
886 units:
887 \\
888
889 ===== actual pulse pattern recorded after the undulator =====
890
891 {{code language="none"}}/FL1/Timing/Bunch pattern/pattern after undulator{{/code}}
892 //always saved (PBD2)//
893 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
894 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
895 desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH2)
896 units:
897 \\
898
899 ===== Train ID =====
900
901 {{code language="none"}}/Timing/train ID{{/code}}
902 //always saved (PBD2)//
903 DOOCS prop : {{code language="none"}}none{{/code}}
904 DAQ channel: {{code language="none"}}none{{/code}}
905 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 !)
906 units:
907 \\
908
909 ===== Train time =====
910
911 //always saved (PBD2)
912 //{{code language="none"}}/Timing/train time{{/code}}
913 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
914 units: d h min s cs
915 \\
916
917 {{code language="none"}}/Timing/time stamp{{/code}}
918
919 //always saved (PBD2)//
920 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
921 second column: microseconds
922 third column: Train ID of FLASH
923 \\
924
925 [[Contents>>doc:||anchor="Contents"]]
926
927 \\
928
929 ==== User Data (FLASH2) ====
930
931 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.
932
933 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
934
935 The most common and permanently installed device used by experiment are our ADCs:
936
937 ===== GHz ADCs =====
938
939 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]]**
940 //saved on DEMAND in the user DAQ//
941 \\Up to now there are 4 channels available at FL24
942 \\\\{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD{{/code}}
943 {{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH01/TD{{/code}}
944 \\{{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}}
945
946 \\
947
948 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
949 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.
950 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00{{/code}}
951
952 In addition there are also additional parameters saved like:
953
954 * {{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.
955 * {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
956 * {{code language="none"}}error (ADC):{{/code}} 0 indicates that there was no error
957 * {{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.
958
959 ===== MHz ADCs =====
960
961 similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
962 {{code language="none"}}/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH2/TD{{/code}}
963 DOOCS prop : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02/CH00.TD
964 DAQ channel: : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02
965
966 In addition there are also additional parameters saved like:
967
968 * {{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.
969 * {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
970
971 [[Contents>>doc:||anchor="Contents"]]
972
973 \\
974
975 \\
976
977 ==== Pump Probe Laser (FLASH2) ====
978
979 There may be more information available from the "Laser DAQ". laese contact your Laser Local Contact.
980
981
982 {{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/attenuator position{{/code}}//always saved (PBD2)//
983 DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
984 DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
985 desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
986 units : deg.
987
988 \\
989
990
991 {{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/polarization position{{/code}}//always saved (PBD2)//
992 DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
993 DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
994 desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
995 units : deg.
996
997 \\
998
999 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay readback{{/code}}
1000 //always saved (PBD2)//
1001 DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
1002 DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
1003 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)
1004 units : ps )
1005
1006 \\
1007
1008 {{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS{{/code}}
1009 //always saved (PBD)//
1010 DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
1011 DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
1012 desc: rms jitter of the fs-Oscillator
1013 units: fs
1014
1015 [[Contents>>doc:||anchor="Contents"]]
1016
1017 \\
1018
1019 === "/uncategorized/" ===
1020
1021 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
1022
1023 \\
1024
1025 === HDF5 structure revisions ===
1026
1027 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:
1028
1029 \\
1030
1031 * All FLASH1 related HDF groups moved to group "/FL1", i.e. a new prefix "/FL1" is added to their HDF path.
1032 * 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".
1033 * A number of inconsistent names have been streamlined. The relevant changes are listed in the following table.
1034
1035 \\
1036
1037 (% class="wrapped" %)
1038 |=(((
1039 earlier HDF path (vers. 0.2)
1040 )))|=(((
1041 is now (vers. 0.3)
1042 )))
1043 |(((
1044 /Photon Diagnostic/GMD/Beam position/position BDA x
1045 )))|(((
1046 /FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal
1047 )))
1048 |(((
1049 /Photon Diagnostic/GMD/Beam position/position BDA y
1050 )))|(((
1051 /FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical
1052 )))
1053 |(((
1054 /Photon Diagnostic/GMD/Beam position/position tunnel x
1055 )))|(((
1056 /FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal
1057 )))
1058 |(((
1059 /Photon Diagnostic/GMD/Beam position/position tunnel y
1060 )))|(((
1061 /FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical
1062 )))
1063 |(((
1064 /Experiment/Pump probe laser/BPM/position x
1065 )))|(((
1066 /FL1/Experiment/Pump probe laser/BPM/position horizontal
1067 )))
1068 |(((
1069 /Experiment/Pump probe laser/BPM/position y
1070 )))|(((
1071 /FL1/Experiment/Pump probe laser/BPM/position vertical
1072 )))
1073 |(((
1074 /FL2/Photon Diagnostic/GMD/Beam position/Average/position hall horizontal
1075 )))|(((
1076 /FL2/Photon Diagnostic/GMD/Average beam position/position hall horizontal
1077 )))
1078 |(((
1079 /FL2/Photon Diagnostic/GMD/Beam position/Average/position hall vertical
1080 )))|(((
1081 /FL2/Photon Diagnostic/GMD/Average beam position/position hall vertical
1082 )))
1083 |(((
1084 /FL2/Photon Diagnostic/GMD/Beam position/Average/position tunnel horizontal
1085 )))|(((
1086 /FL2/Photon Diagnostic/GMD/Average beam position/position tunnel horizontal
1087 )))
1088 |(((
1089 /FL2/Photon Diagnostic/GMD/Beam position/Average/position tunnel vertical
1090 )))|(((
1091 /FL2/Photon Diagnostic/GMD/Average beam position/position tunnel vertical
1092 )))
1093 |(((
1094 /FL2/Photon Diagnostic/GMD/Average energy/hall
1095 )))|(((
1096 /FL2/Photon Diagnostic/GMD/Average energy/energy hall
1097 )))
1098 |(((
1099 /FL2/Photon Diagnostic/GMD/Average energy/hall (raw)
1100 )))|(((
1101 /FL2/Photon Diagnostic/GMD/Average energy/energy hall (raw)
1102 )))
1103 |(((
1104 /FL2/Photon Diagnostic/GMD/Average energy/tunnel
1105 )))|(((
1106 /FL2/Photon Diagnostic/GMD/Average energy/energy tunnel
1107 )))
1108 |(((
1109 /FL2/Photon Diagnostic/GMD/Average energy/tunnel (raw)
1110 )))|(((
1111 /FL2/Photon Diagnostic/GMD/Average energy/energy tunnel (raw)
1112 )))
1113 |(((
1114 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/hall x
1115 )))|(((
1116 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall horizontal
1117 )))
1118 |(((
1119 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/hall y
1120 )))|(((
1121 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall vertical
1122 )))
1123 |(((
1124 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/tunnel x
1125 )))|(((
1126 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel horizontal
1127 )))
1128 |(((
1129 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/tunnel y
1130 )))|(((
1131 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel vertical
1132 )))
1133
1134 \\
1135
1136 [[Contents>>doc:||anchor="Contents"]]
1137
1138 \\
1139
1140 == Example code showing how to access HDF5 files ==
1141
1142 \\
1143
1144 === Samples how to read HDF5 with Matlab ===
1145
1146 The examples apply to HDF files with HDF tree version before vers. 0.3.0.
1147
1148 (% style="color: rgb(0,128,0);" %)%% read in the needed data p=path; path(p,'D:\mess-daten\DAQ-data\hdf5\Gotthard') % add the actual folder to the path hdf5file='FLASH1_EXP-2016-03-16T1420.h5'; % data with Gotthard and VLS
1149
1150 (% style="color: rgb(0,128,0);" %)% h5disp(hdf5file,'/','min') % to get an idea what is in the file % h5info(hdf5file,'/Experiment/Gotthard1/BL.0') % get info about the individual channel
1151
1152 (% style="color: rgb(0,128,0);" %)% read a Number per 10 Hz pulse train:
1153
1154 (% class="code" %)
1155 (((
1156 FEL_Wavelength_energy_server=h5read(hdf5file,'/Photon Diagnostic/Wavelength/Calculated by energy/wavelength' );
1157 )))
1158
1159 (% style="color: rgb(0,128,0);" %)% read in a 1D array (spectrum) %GMD data GMD_Spectrum=h5read(hdf5file,'/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA');
1160
1161 (% style="color: rgb(0,128,0);" %)% This reads in all the data . One can also limit the amount of data read to a subset of the data stored in the file. e.g. for image Data (Gotthard)
1162
1163 \\
1164
1165 (% class="code" %)
1166 (((
1167 Start_event= 500 ; % define the first 10 Hz event
1168 Number_of_events = 20; % how many 10 Hz events to load
1169 )))
1170
1171 (% style="color: rgb(0,128,0);" %)% read only part of the data:
1172
1173 (% class="code" %)
1174 (((
1175 Gotthard_data=h5read(hdf5file,'/Experiment/Gotthard1/BL.0',[2 650 Start_event],[50 85 Number_of_events]);
1176 )))
1177
1178 (% style="color: rgb(0,128,0);" %)% start stop increment "manual" for 2 D data : [start bunch number in Gotthard data start pixelin spectrum start sample in 10 Hz trains], % [number of bunches in the Gotthard data number of points in the spectrum number of spectra ]
1179
1180 (% class="code" %)
1181 (((
1182 VLS_Spectrum=h5read(hdf5file,'/Photon Diagnostic/Wavelength/VLS online spectrometer/PCO.ROI.X',[400 Start_event],[200 Number_of_events] );
1183
1184 )))
1185
1186 (% style="color: rgb(0,128,0);" %)% start stop increment "manual" for 1D data : [start sample in the spectrum start sample in 10 Hz trains],[number of points in the spectrum number of spectra ]
1187
1188 (% style="color: rgb(0,128,0);" %)%GMD data
1189
1190 (% class="code" %)
1191 (((
1192 GMD_Spectrum=h5read(hdf5file,'/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA',[1 Start_event],[40 Number_of_events] );
1193 )))
1194
1195 [[Contents>>doc:||anchor="Contents"]]
1196
1197 \\
1198
1199 == HDF5 and DOOCS ==
1200
1201 Here is an outdated [[list with the available properties that are always saved (PBD) for FLASH1 as>>attach:FLASH1__DaqChannel2HdfNamePbd.xlsx]] HDF5 names and the corresponding DOOCS names
1202
1203 [[Contents>>doc:||anchor="Contents"]]