Wiki source code of The FLASH HDF5 structure

Version 57.1 by sndueste on 2022/09/07 09:50

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