Changes for page The FLASH HDF5 structure

Last modified by sndueste on 2025/02/06 10:55

From version 50.1
edited by sndueste
on 2021/02/17 16:29
Change comment: There is no comment for this version
To version 18.1
edited by sndueste
on 2019/09/18 10:09
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,6 +4,3 @@
1 -{{layout}}
2 -{{layout-section ac:type="single"}}
3 -{{layout-cell}}
4 4  == Contents ==
5 5  
6 6  
... ... @@ -11,119 +11,39 @@
11 11  
12 12  == General information about HDF5 ==
13 13  
14 -HDF5 is a data format maintained by the HDF group. For detailed general information see [[here~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https://portal.hdfgroup.org/display/support||shape="rect"]]
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://www.hdfgroup.org/HDF5/||shape="rect"]]
15 15  
16 -To download the HDF5 Viewer click [[here~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https://portal.hdfgroup.org/display/support/Download+HDFView||shape="rect"]]
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://support.hdfgroup.org/products/java/hdfview/index.html||shape="rect"]]
17 17  
18 18  For use on the DESY Maxwell or PAL (max-fsc or pal) **hdfview** is available in the xray module :
19 19  {{code language="none"}}> module load xray{{/code}}
20 20  {{code language="none"}}> hdfview{{/code}}
21 21  
22 -or you can use
23 -
24 -{{code language="none"}}> silx{{/code}}
25 -
26 -\\
27 -
28 28  [[Contents>>doc:||anchor="Contents"]]
29 29  
30 -== The FLASH HDF5 format ==
21 +== FLASH HDF5 structure ==
31 31  
32 -FLASH provides a conversion of its data acquisition (DAQ) to the commonly used [[HDF5>>url:https://www.hdfgroup.org/solutions/hdf5/||shape="rect"]] format. Correlated  data are mapped by a primary index called **train ID**. Every data set has an individual index of train IDs to identify the data even when data are missing or deviate in update rate. If the data set of choice contains gaps,  users have to decide how to treat missing values. DAQ channels are spread across various files with one file name pattern for each DAQ. This means users have to assemble data from different files if necessary.
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 organised according to train IDs. The general structure is:
33 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.
25 +* Electron Diagnostic
26 +* Photon Diagnostics
27 +* Beamlines
28 +* Experiment
29 +* Timing
30 +[[~[~[image:url:http://hasfweb.desy.de/pub/Setup/HDF5main/HDF5_structure.jpg~|~|alt="HDF5_structure.jpg" width="700" height="500"~]~]>>attach:HDF5_structure.jpg]]
35 35  
36 -Reference implementation, which follows the concept of Python libraries like Pandas, Xarray, or Dask, is given below.
32 +A detailled description of (most) channels can be found in the lower part of the hdf5 viewer:
33 +[[~[~[image:url:http://hasfweb.desy.de/pub/Setup/HDF5main/HDF5_structure_desc.jpg~|~|alt="HDF5_structure_desc.jpg" width="341" height="413"~]~]>>attach:HDF5_structure_desc.jpg]]
37 37  
38 -\\
35 +[[Contents>>doc:||anchor="Contents"]]
39 39  
40 -{{expand title="Discontinued HDF formats"}}
41 -=== Comparison to FLASH's deprecated HDF formats ===
42 -
43 -Before 2021, FLASH provided two different HDF formats formally known as //near-online// and //offline// HDF files.
44 -
45 -All data sets were aligned by the same global index by filling in missing data. Fast DAQ channels  (pulse synchronous data - update 10 Hz) are filled in by NaN or 0, slow channels (not pulse synchronous data - update e.g. 1 Hz ) are interpolated by the DAQs libraries, by keeping the value constant up to the next change.
46 -
47 -While the near-online HDF files were converted live during the beamtime, the offline HDF files were manually compiled weeks/months later. Near-online HDF files were used by a provided API [[BeamtimeDaqAccess>>url:https://confluence.desy.de/display/FLASHUSER/Near-Online+data+analysis#Near-Onlinedataanalysis-BriefUserGuidetoBeamtimeDAQAccess||shape="rect"]], which also searches for DAQ channels in files. With assembled files "by run", all DAQ channels were existing in the same HDF file. While shorter runs usually fitted into one file, longer runs still had to be aggregated over several files. The creation of the assembled type of files still involves the use of fairly unstable DAQ Mex-functions As the environment required for using the Mex-functions is already deprecated, its continued existence is uncertain.
48 -
49 -The HDF hierarchy is almost identical in all formats. While in the the recent format each DAQ channel contains the data sets "value" and "index", the deprecated format had one data set for each DAQ channel. The deprecated formats supplies no time axis parameters for spectra data types.
50 -
51 51  \\
52 52  
53 -**HDF5 example files (old format)**
39 +== Most popular FLASH parameters and their names in HDF5, DOOCS and (raw) DAQ ==
54 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.
41 +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"]].
42 +The most common and often used ones are summarized below:
56 56  
57 -[[image:attach:image2019-10-21_17-2-50.png||thumbnail="true" width="300"]] [[download HDF5 (Images @ FL2)>>url:https://desycloud.desy.de/index.php/s/nyEgeCWJFC4gao2||shape="rect"]]
58 -
59 -\\
60 -
61 -[[~[~[image:attach:image2019-10-22_10-52-27.png~|~|thumbnail="true" width="300"~]~]download HDF5 (GHz ADC and OPIS @ FL2)>>url:https://desycloud.desy.de/index.php/s/AeA2kPNNnZgX95A||shape="rect"]]
62 -
63 -\\
64 -
65 -\\
66 -{{/expand}}
67 -
68 -=== HDF examples: ===
69 -{{/layout-cell}}
70 -{{/layout-section}}
71 -
72 -{{layout-section ac:type="three_equal"}}
73 -{{layout-cell}}
74 -* ADC data as example for **fast** **data** (10 Hz):           
75 -
76 -\\
77 -
78 -[[image:attach:image2020-11-16_15-26-28.png||height="250"]]
79 -{{/layout-cell}}
80 -
81 -{{layout-cell}}
82 -* The //average// FEL pulse energy as example for the **slow** **data** (different e.g. 1 Hz):
83 -
84 - ( every 10th train ID is listed in the HDF group "index")
85 -
86 -\\
87 -
88 -[[image:attach:image2020-11-16_15-31-45.png||height="250"]]
89 -{{/layout-cell}}
90 -
91 -{{layout-cell}}
92 -* (((
93 -//zraw// group contains the **original DAQ (DOOCS) names**
94 -)))
95 -
96 - of the properties saved in the DESY internal raw format. (For experts)
97 -
98 -\\
99 -
100 -[[image:attach:image2020-11-16_16-26-3.png||height="400"]]
101 -{{/layout-cell}}
102 -{{/layout-section}}
103 -
104 -{{layout-section ac:type="single"}}
105 -{{layout-cell}}
106 -{{info title="Sample scripts in python"}}
107 -=== Sample scripts / Reference implementation (Python) ===
108 -
109 -[[~[~[image:attach:binder_badge.png~|~|thumbnail="true" width="120"~]~]>>url:https://mybinder.org/v2/git/https%3A%2F%2Fgitlab.desy.de%2Fchristopher.passow%2Fflash-daq-hdf/master||shape="rect"]]
110 -
111 -(% class="Object" %)[[https:~~/~~/gitlab.desy.de/christopher.passow/flash-daq-hdf>>url:https://gitlab.desy.de/christopher.passow/flash-daq-hdf||shape="rect"]]
112 -{{/info}}
113 -{{/layout-cell}}
114 -{{/layout-section}}
115 -
116 -{{layout-section ac:type="single"}}
117 -{{layout-cell}}
118 -== Complete list of recordable parameters ==
119 -
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"]].
121 -\\
122 -
123 -== Most popular FLASH parameters and their names in HDF5, DOOCS and (raw) DAQ ==
124 -
125 -{{id name="DOOCSparameters"/}}
126 -
127 127  Note, the HDF group and data set names apply to our HDF tree version since vers. 0.3.0.
128 128  
129 129  \\
... ... @@ -130,6 +130,8 @@
130 130  
131 131  === FLASH1 ===
132 132  
50 +\\
51 +
133 133  ==== Beamline info (FLASH1) ====
134 134  
135 135  {{code language="none"}}/FL1/Beamlines/Attenuator/pressure{{/code}}
... ... @@ -160,7 +160,7 @@
160 160  //always saved (PBD)//
161 161  DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
162 162  DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
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]]
82 +desc: Position of the BL filter wheel 1 - to correlate with the filter material please look [[here>>doc:FLASH.Filter history (BL filterwheel 12)]]
164 164  units: degree
165 165  \\
166 166  
... ... @@ -168,7 +168,7 @@
168 168  //always saved (PBD)//
169 169  DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
170 170  DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
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]]
90 +desc: Position of the BL filter wheel 2 - to correlate with the filter material please look [[here>>doc:FLASH.Filter history (BL filterwheel 12)]]
172 172  units: degree
173 173  \\
174 174  
... ... @@ -198,33 +198,27 @@
198 198  \\
199 199  
200 200  
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
120 +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
202 202  
203 203  [[Contents>>doc:||anchor="Contents"]]
204 204  
205 205  \\
206 206  
207 -==== Photon Diagnostics SASE ([[GMD>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/gmd_intensity_and_position/index_eng.html||shape="rect"]]) ====
126 +==== Photon Diagnostics SASE ([[GMD>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/gmd_intensity_and_position/index_eng.html||shape="rect"]]) / Spectrometer (FLASH1) ====
208 208  
209 -\\
210 -
211 -(% style="color: rgb(0,0,0);" %)**Discontinued GMD data recording / evaluation  (VME + PhotonFlux ML server)**
212 -
213 213  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
214 -//always saved (PBD)//
215 -
216 -(% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT04/VAL{{/code}} (%%)
217 -(% style="color: rgb(0,0,0);" %)DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENPULSEIC{{/code}}(%%)
218 -desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator (ion current)
129 +//always saved (PBD)//
130 +DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT04/VAL{{/code}}
131 +DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENPULSEIC{{/code}}
132 +desc : calibrated average SASE Energy/pulse measured in the TUNNEL before the attenuator (ion current)
219 219  units : microJ
220 220  
221 221  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
222 -//always saved (PBD)//
223 -
136 +//always saved (PBD)//
224 224  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT34/VAL{{/code}}
225 225  DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.USER{{/code}}
226 226  desc :Energy per pulse Tunnel (from e-) - the values are set to "0" if there was no SASE beam in the FEL
227 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASHUSER.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
140 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
228 228  
229 229  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel (raw){{/code}}
230 230  //always saved (PBD)//
... ... @@ -231,11 +231,10 @@
231 231  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT14/VAL{{/code}}
232 232  DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.FF{{/code}}
233 233  desc :Energy per pulse Tunnel (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise
234 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASHUSER.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
147 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
235 235  
236 236  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy BDA{{/code}}
237 -//always saved (PBD)//
238 -
150 +//always saved (PBD)//
239 239  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT05/VAL{{/code}}
240 240  DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENPULSEIC{{/code}}
241 241  desc : calibrated average SASE Energy/pulse measured in the BDA (in the experimental hall) after the attenuator (ion current)
... ... @@ -242,12 +242,11 @@
242 242  units : microJ
243 243  
244 244  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA{{/code}}
245 -//always saved (PBD)//
246 -
157 +//always saved (PBD)//
247 247  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT35/VAL{{/code}}
248 248  DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.USER{{/code}}
249 249  desc :Energy per pulse BDA (from e-) - the values are set to "0" if there was no SASE beam in the FEL
250 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASHUSER.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
161 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
251 251  
252 252  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA (raw){{/code}}
253 253  //always saved (PBD)//
... ... @@ -254,64 +254,13 @@
254 254  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT15/VAL{{/code}}
255 255  DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.FF{{/code}}
256 256  desc :Energy per pulse BDA (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise
257 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision)** [[see here for help>>doc:FLASHUSER.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**
168 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
258 258  
259 -\\
260 -
261 -(% style="color: rgb(0,0,0);" %)**NEW (2021) GMD data recording / evaluation  (MTCA, analog to FLASH2 and XFEL)**
262 -
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 -
310 310  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal{{/code}}
311 311  //always saved (PBD)//
312 312  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
313 313  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
314 -desc :Beam position of the photon Beam determined by the GMD (BDA, x=horizontal)
174 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (BDA, x=horizontal)
315 315  units : mm
316 316  
317 317  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical{{/code}}
... ... @@ -318,7 +318,7 @@
318 318  //always saved (PBD)//
319 319  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
320 320  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
321 -desc :Beam position of the photon Beam determined by the GMD (BDA, y=vertical)
181 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (BDA, y=vertical)
322 322  units : mm
323 323  
324 324  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal{{/code}}
... ... @@ -325,7 +325,7 @@
325 325  //always saved (PBD)//
326 326  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
327 327  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
328 -desc :Beam position of the photon Beam determined by the GMD (TUNNEL, x=horizontal)
188 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (TUNNEL, x=horizontal)
329 329  units : mm
330 330  
331 331  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical{{/code}}
... ... @@ -332,13 +332,9 @@
332 332  //always saved (PBD)//
333 333  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
334 334  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
335 -desc :Beam position of the photon Beam determined by the GMD (TUNNEL, y=vertical)
195 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (TUNNEL, y=vertical)
336 336  units : mm
337 337  
338 -\\
339 -
340 -==== Spectrometer (FLASH1) ====
341 -
342 342  {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength{{/code}}
343 343  _always saved (when Spectrum is measured !!) (PBD) _
344 344  DOOCS prop : {{code language="none"}}TTF2.EXP/PHOTONWL.ML/WAVE_LENGTH/VAL.TD{{/code}}
... ... @@ -422,25 +422,10 @@
422 422  //always saved (PBD)//
423 423  DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
424 424  DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
425 -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).
426 -units: ps (bigger numbers indicate later arrivaltime of the electrons)
281 +desc: Electron bunch arrival time measured with the BAM (more or less) before the undulator (pulse resolved data)
282 +units: ps (bigger numbers indicate later arrivaltime of the electrons)
283 +note: besides the arivaltime from FLASH1 there is also the FLASH2/3 electron arrival time saved. [[LINK to detailled 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"]] and to a recent  [[talk about the working principle of the BAM>>url:https://confluence.desy.de/download/attachments/134216957/BAM-basics_and_outlook-2018_DESY-template_16-9Format.pdf?version=1&modificationDate=1565162143328&api=v2||shape="rect"]]
427 427  
428 -{{code language="none"}}/FL1/Electron Diagnostic/BAM/1SFELC/electron bunch arrival time (low charge){{/code}}
429 -//always saved (PBD)//
430 -DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/1SFELC/LOW_CHARGE_ARRIVAL_TIME{{/code}}
431 -DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/1SFELC.LOW_CHARGE_ARRIVAL_TIME{{/code}}
432 -desc: Electron bunch arrival time measured with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020.
433 -units: ps (bigger numbers indicate later arrivaltime of the electrons)
434 -
435 -{{info title="BAM hints"}}
436 -* besides the arrivaltime from FLASH1 there is also the FLASH2/3 electron arrival time saved.In case of doubt ask your local contact
437 -* [[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]]
438 -* [[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"]]
439 -* a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
440 -{{/info}}
441 -
442 -\\
443 -
444 444  ===== electron beam profile =====
445 445  
446 446  {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile{{/code}}
... ... @@ -469,7 +469,7 @@
469 469  ===== electron bunch energy =====
470 470  
471 471  {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/average electron energy{{/code}}
472 -//always saved (PBD)//
313 +_always saved (PBD)
473 473  DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_INTRA_MEAN/VAL{{/code}}
474 474  DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_MEAN{{/code}}
475 475  desc: electron bunch energy (average over the bunch train)
... ... @@ -477,7 +477,7 @@
477 477  \\
478 478  
479 479  {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/pulse resolved energy{{/code}}
480 -//always saved (PBD)//
321 +_always saved (PBD)
481 481  DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_SPECT/VAL.TD{{/code}}
482 482  DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_SPECT{{/code}}
483 483  desc: electron bunch energy bunch resolved
... ... @@ -486,7 +486,7 @@
486 486  \\
487 487  
488 488  {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/wavelength bunch train average{{/code}}
489 -//always saved (PBD)//
330 +_always saved (PBD)
490 490  DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/LAMBDA_MEAN/VAL{{/code}}
491 491  DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/LAMBDA_MEAN{{/code}}
492 492  desc: Wavelength calculated by the electron bunch energy (average over the bunch train) (FLASH1)
... ... @@ -680,12 +680,12 @@
680 680  
681 681  ==== Beamline info (FLASH2) ====
682 682  
683 -{{code language="none"}}/FL2/Beamlines/Attenuator/pressure  {{/code}}
684 -(% style="color: rgb(0,0,0);" %)//always saved (PBD2)// (%%)
685 -(% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
686 -(% style="color: rgb(0,0,0);" %)DAQ channel:  {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
687 -(% style="color: rgb(0,0,0);" %)desc: set pressure in the gas attenuator (%%)
688 -(% style="color: rgb(0,0,0);" %)units: mbar(%%)
524 +(% style="color: rgb(255,153,0);" %)(not yet available){{code language="none"}}/FL2/Beamlines/Attenuator/pressure  {{/code}}(%%)
525 +(% style="color: rgb(193,199,208);" %)//always saved (PBD2)// (%%)
526 +(% style="color: rgb(193,199,208);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
527 +(% style="color: rgb(193,199,208);" %)DAQ channel:  {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
528 +(% style="color: rgb(193,199,208);" %)desc: set pressure in the gas attenuator (%%)
529 +(% style="color: rgb(193,199,208);" %)units: mbar(%%)
689 689  \\
690 690  
691 691  {{code language="none"}}/FL2/Beamlines/FL20/Shutter/open{{/code}}
... ... @@ -700,17 +700,15 @@
700 700  //always saved (PBD2)//
701 701  DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS{{/code}}
702 702  DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS
703 -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]]**
544 +desc: Position of the BL filter wheel 1 - to correlate with the filter material please look [[here>>doc:FLASH.Filter history (BL filterwheel 12)]]
704 704  units: degree
705 705  \\
706 706  
707 -/FL2/Beamlines/Filter wheel/position wheel 2
708 -always saved (PBD2)
709 -DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS{{/code}}
710 -DAQ channel: {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS{{/code}}
711 -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]]
712 -units: degree
713 713  
549 +//always saved (PBD2)//
550 +\\\\[[here>>doc:FLASH.Filter history (BL filterwheel 12)]]
551 +{{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}}
552 +
714 714  \\
715 715  
716 716  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
... ... @@ -732,37 +732,40 @@
732 732  
733 733  \\
734 734  
574 +(% style="color: rgb(255,204,0);" %)average Sigma    to be included in
575 +
576 +(% style="color: rgb(193,199,208);" %){{code language="none"}}/FL2/Photon Diagnostic/GMD/Average energy/energy tunnel uncertainty{{/code}} (%%)
577 +(% style="color: rgb(193,199,208);" %)//always saved (PBD2)// (%%)
578 +(% style="color: rgb(193,199,208);" %)DOOCS prop : FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ.SIGMA (%%)
579 +(% style="color: rgb(193,199,208);" %)DAQ channel: FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ.SIGMA (%%)
580 +(% style="color: rgb(193,199,208);" %)desc :  This parameter gives an indication of the error of the measurement of the average 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)(%%)
581 +(% style="color: rgb(193,199,208);" %)units : microJ
582 +
583 +\\
584 +
585 +\\
586 +
735 735  {{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
736 736  //always saved (PBD2)//
737 737  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
738 738  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
739 -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)
740 -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]]**
591 +desc : Energy per pulse measured in the Tunnel  (in fromt of the gas attenuator and the apertures in the Hall)
592 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
741 741  
742 -{{info title="GMD pulse resolved data structure"}}
743 -For every pulse in the pulse train the information is saved:
744 -
594 +\\
745 745  
746 -1. **Intensity per pulse** (a.u. (more or less µJ ))
747 -1. Intensity per pulse (auxillary GMD) - not used
748 -1. Position horizontal (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
749 -1. Position vertical (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
750 -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)(%%))
751 -1. Position horizontal sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
752 -1. Position vertical sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
753 -1. Combined warning and error flags
596 +\\
754 754  
755 -The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 
756 -file
598 +{{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel uncertainty (sigma){{/code}}
599 +//always saved (PBD2)//
600 +DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.SIGMA.TD{{/code}}
601 +DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL:4{{/code}}
602 +desc :(% 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)(%%)
603 +units : a.u. (more or less µJ - related to the value of the pulse energy )
757 757  
758 -
759 -[[image:attach:image2021-2-9_10-51-6.png||height="250"]]
760 760  
761 -\\
762 -{{/info}}
606 +{{code language="none"}}{{/code}}
763 763  
764 -\\
765 -
766 766  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 !
767 767  
768 768  \\
... ... @@ -775,7 +775,7 @@
775 775  //always saved (PBD2)//
776 776  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
777 777  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
778 -desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
620 +desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (tunnel, x=horizontal)
779 779  units : mm
780 780  
781 781  \\
... ... @@ -784,20 +784,18 @@
784 784  //always saved (PBD2)//
785 785  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
786 786  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
787 -desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
629 +desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (tunnel, x=horizontal)
788 788  units : mm
789 789  
790 790  \\
791 791  
792 -/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel x
793 -always saved (PBD2)
794 -DOOCS prop : FLASH.FEL/XGM.BPM/FL2.HALL/X.TD
795 -DAQ channel: FLASH.FEL/XGM.BPM/FL2.HALL:2
796 -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 ...)
797 -units : mm   
798 798  
799 -(x=horizontal, y = vertial)
635 +//always saved (PBD2)//
636 +\\\\{{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
637 +{{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}}
800 800  
639 +{{code language="none"}}(x=horizontal, y = vertial){{/code}}
640 +
801 801  again the same parameter set is available for the **HALL GMD**
802 802  
803 803  \\
... ... @@ -806,7 +806,7 @@
806 806  
807 807  ==== Photon Diagnostics OPIS[[ >>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]](FLASH2) ====
808 808  
809 -for more info see:** [[ OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]]**
649 +for more info see: [[ OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]]
810 810  
811 811  (The OPIS hall is not installed yet ...)
812 812  
... ... @@ -883,30 +883,17 @@
883 883  =====
884 884  arrival time =====
885 885  
886 -{{code language="none"}}/FL2/Electron Diagnostic/BAM/8FL2XTDS/electron bunch arrival time (low charge){{/code}}
887 -//always saved (PBD2)//
888 -DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/8FL2XTDS/LOW_CHARGE_ARRIVAL_TIME{{/code}}
889 -DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/8FL2XTDS.LOW_CHARGE_ARRIVAL_TIME{{/code}}
890 -desc: Electron bunch arrival time measured with the BAM after the FLASH2 undulator (pulse resolved data)
891 -units: ps (bigger numbers indicate later arrivaltime of the electrons)
892 -
893 893  **FL1**{{code language="none"}}//Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}}
894 894  //always saved (PBD2)//
895 895  DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
896 896  DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
897 -desc: Electron bunch arrival time measured with the BAM  in the accelerator  (pulse resolved data)
730 +desc: Electron bunch arrival time measured with the BAM (more or less) before the undulator (pulse resolved data)
898 898  units: ps (bigger numbers indicate later arrivaltime of the electrons)
899 899  
900 -\\
733 +The BAM measures the arrivaltime of** FLASH 1 and FLASH2** in the same data set (thus also sorted in at /FL1/ !). The first values are for FLASH1 bunches.
734 +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) ...
901 901  
902 -{{info title="BAM hints"}}
903 -* The BAM 4DBC3 measures the arrivaltime of** FLASH 1 and FLASH2** in the same data set (thus also sorted in at /FL1/ !).
904 -* 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 
905 -** 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
906 -* [[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]]
907 -* [[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"]]
908 -* a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
909 -{{/info}}
736 +Docu for BAM:  [[LINK to detailled 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"]] and to a recent  [[talk about the working principle of the BAM>>url:https://confluence.desy.de/download/attachments/134216957/BAM-basics_and_outlook-2018_DESY-template_16-9Format.pdf?version=1&modificationDate=1565162143328&api=v2||shape="rect"]]
910 910  
911 911  
912 912  [[Contents>>doc:||anchor="Contents"]]
... ... @@ -983,28 +983,32 @@
983 983  
984 984  \\
985 985  
986 -==== User Data (FLASH2) ====
813 +==== User Data (FLASH1) ====
987 987  
988 -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.
989 -
990 -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
991 -
992 -The most common and permanently installed device used by experiment are our ADCs:
993 -
994 994  ===== GHz ADCs =====
995 995  
996 -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]]**
817 +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]]
997 997  //saved on DEMAND in the user DAQ//
998 -\\Up to now there are 4 channels available at FL24
999 -\\\\{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD{{/code}}
1000 -{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH01/TD{{/code}}
1001 -\\{{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}}
819 +\\The HDF5 names for the ADC traces are depending on the beamline :
820 +\\PG Beamline:
821 +{{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH00/TD{{/code}}
822 +{{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH01/TD{{/code}}
823 +{{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH02/TD{{/code}}
824 +{{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH03/TD{{/code}}
1002 1002  
1003 -\\
826 +BL Beamlines:
827 +{{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH00/TD{{/code}}
828 +{{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH01/TD{{/code}}
829 +{{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH02/TD{{/code}}
830 +{{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH03/TD{{/code}}
831 +\\{{code language="none"}}/FL1/Experiment/BL2/ADQ412 GHz ADC/CH00/TD{{/code}}
832 +{{code language="none"}}/FL1/Experiment/BL2/ADQ412 GHz ADC/CH01/TD{{/code}}
833 +\\{{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH02/TD{{/code}}
834 +{{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH03/TD{{/code}}
1004 1004  
1005 -DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
836 +DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
1006 1006  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.
1007 -DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00{{/code}}
838 +DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00{{/code}}
1008 1008  
1009 1009  In addition there are also additional parameters saved like:
1010 1010  
... ... @@ -1016,9 +1016,9 @@
1016 1016  ===== MHz ADCs =====
1017 1017  
1018 1018  similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
1019 -{{code language="none"}}/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH2/TD{{/code}}
1020 -DOOCS prop : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02/CH00.TD
1021 -DAQ channel: : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02
850 +{{code language="none"}}/FL1/Experiment/BL1/SIS8300 100MHz ADC/CH2/TD{{/code}}
851 +DOOCS prop : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02/CH00.TD
852 +DAQ channel: : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02
1022 1022  
1023 1023  In addition there are also additional parameters saved like:
1024 1024  
... ... @@ -1031,54 +1031,207 @@
1031 1031  
1032 1032  \\
1033 1033  
1034 -==== Pump Probe Laser (FLASH2) ====
865 +\\
1035 1035  
1036 -There may be more information available from the "Laser DAQ". laese contact your Laser Local Contact.
1037 -
1038 -
1039 -{{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/attenuator position{{/code}}//always saved (PBD2)//
1040 -DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
1041 -DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
1042 -desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
1043 -units : deg.
1044 -
1045 1045  \\
1046 1046  
1047 -
1048 -{{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/polarization position{{/code}}//always saved (PBD2)//
1049 -DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
1050 -DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
1051 -desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
1052 -units : deg.
1053 -
1054 1054  \\
1055 1055  
1056 -{{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay readback{{/code}}
1057 -//always saved (PBD2)//
1058 -DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
1059 -DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
1060 -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)
1061 -units : ps )
1062 -
1063 1063  \\
1064 1064  
1065 -{{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS{{/code}}
1066 -//always saved (PBD)//
1067 -DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
1068 -DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
1069 -desc: rms jitter of the fs-Oscillator
1070 -units: fs
1071 -
1072 -[[Contents>>doc:||anchor="Contents"]]
1073 -
1074 1074  \\
1075 1075  
1076 -=== "/uncategorized/" ===
875 +(% class="wrapped" %)
876 +|=(((
877 +DAQ name
878 +)))|=(((
879 +HDF5 name
880 +)))
881 +|(((
882 +FLASH.UTIL/FL2.UND.MOTOR/FL2SASE3/GAP
883 +)))|(((
884 +/FL2/Electron Diagnostic/Undulator setting/SASE03 gap
885 +)))
886 +|(((
887 +FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP
888 +)))|(((
889 +/FL2/Electron Diagnostic/Undulator setting/SASE14 gap
890 +)))
891 +|(((
892 +TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH
893 +)))|(((
894 +/FL2/Electron Diagnostic/Undulator setting/set wavelength
895 +)))
896 +|(((
897 +FLASH.FEL/XGM.PHOTONFLUX/FL2.HALL/PHOTONFLUX.UJ
898 +)))|(((
899 +/FL2/Photon Diagnostic/GMD/Average energy/hall
900 +)))
901 +|(((
902 +FLASH.FEL/XGM.PHOTONFLUX/FL2.HALL/PHOTONFLUX
903 +)))|(((
904 +/FL2/Photon Diagnostic/GMD/Average energy/hall (raw)
905 +)))
906 +|(((
907 +FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ
908 +)))|(((
909 +/FL2/Photon Diagnostic/GMD/Average energy/tunnel
910 +)))
911 +|(((
912 +FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX
913 +)))|(((
914 +/FL2/Photon Diagnostic/GMD/Average energy/tunnel (raw)
915 +)))
916 +|(((
917 +FLASH.FEL/XGM.POSMON/FL2.HALL/IX.POS
918 +)))|(((
919 +/FL2/Photon Diagnostic/GMD/Average beam position/position hall horizontal
920 +)))
921 +|(((
922 +FLASH.FEL/XGM.POSMON/FL2.HALL/IY.POS
923 +)))|(((
924 +/FL2/Photon Diagnostic/GMD/Average beam position/position hall vertical
925 +)))
926 +|(((
927 +FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS
928 +)))|(((
929 +/FL2/Photon Diagnostic/GMD/Average beam position/position tunnel horizontal
930 +)))
931 +|(((
932 +FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS
933 +)))|(((
934 +/FL2/Photon Diagnostic/GMD/Average beam position/position tunnel vertical
935 +)))
936 +|(((
937 +FLASH.FEL/XGM.BPM/FL2.HALL:0
938 +)))|(((
939 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall horizontal
940 +)))
941 +|(((
942 +FLASH.FEL/XGM.BPM/FL2.HALL:1
943 +)))|(((
944 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall vertical
945 +)))
946 +|(((
947 +FLASH.FEL/XGM.BPM/FL2.TUNNEL:0
948 +)))|(((
949 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel horizontal
950 +)))
951 +|(((
952 +FLASH.FEL/XGM.BPM/FL2.TUNNEL:1
953 +)))|(((
954 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel vertical
955 +)))
956 +|(((
957 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL:1
958 +)))|(((
959 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy aux tunnel
960 +)))
961 +|(((
962 +FLASH.FEL/XGM.INTENSITY/FL2.HALL
963 +)))|(((
964 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy hall
965 +)))
966 +|(((
967 +FLASH.FEL/XGM.INTENSITY/FL2.HALL:0
968 +)))|(((
969 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy hall
970 +)))
971 +|(((
972 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL
973 +)))|(((
974 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel
975 +)))
976 +|(((
977 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL:0
978 +)))|(((
979 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel
980 +)))
981 +|(((
982 +FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042
983 +)))|(((
984 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean phtoton energy
985 +)))
986 +|(((
987 +FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040
988 +)))|(((
989 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean wavelengt
990 +)))
991 +|(((
992 +FLASH.FEL/ADC.ADQ/OPIS1.CH02
993 +)))|(((
994 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Raw data/CH02
995 +)))
996 +|(((
997 +FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2
998 +)))|(((
999 +/FL2/Electron Diagnostic/Bunch charge/after undulator
1000 +)))
1001 +|(((
1002 +FLASH.DIAG/PBD2.TOROID.ML/3GUN/CHARGE.FLASH2
1003 +)))|(((
1004 +/FL2/Electron Diagnostic/Bunch charge/at gun
1005 +)))
1006 +|(((
1007 +FLASH.FEL/FL20T.PH.MOTOR/MOTOR1.MOT1/FPOS
1008 +)))|(((
1009 +/FL2/Beamlines/Tunnel Apertures/position aperture1 horizontal
1010 +)))
1011 +|(((
1012 +FLASH.FEL/FL20T.PH.MOTOR/MOTOR2.MOT1/FPOS
1013 +)))|(((
1014 +/FL2/Beamlines/Tunnel Apertures/position aperture1 vertical
1015 +)))
1016 +|(((
1017 +FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER
1018 +)))|(((
1019 +/FL2/Beamlines/FL20/Shutter/channel 0
1020 +)))
1021 +|(((
1022 +FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00
1023 +)))|(((
1024 +/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD
1025 +)))
1026 +|(((
1027 +FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH00
1028 +)))|(((
1029 +/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH0/TD
1030 +)))
1031 +|(((
1032 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD
1033 +)))|(((
1034 +/FL2/Experiment/Pump probe laser/Synchronization/timing jitter RMS
1035 +)))
1036 +|(((
1037 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/LOCK_STATUS.VALUE.RD
1038 +)))|(((
1039 +/FL2/Experiment/Pump probe laser/Synchronization/timing jitter RMS GECCO
1040 +)))
1041 +|(((
1042 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD
1043 +)))|(((
1044 +/FL2/Experiment/Pump probe laser/laser delay readback
1045 +)))
1046 +|(((
1047 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION_SET.WR
1048 +)))|(((
1049 +/FL2/Experiment/Pump probe laser/laser delay set value
1050 +)))
1051 +|(((
1052 +FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS
1053 +)))|(((
1054 +/FL2/Experiment/Pump probe laser/FL24/attenuator position
1055 +)))
1056 +|(((
1057 +FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/POS
1058 +)))|(((
1059 +/FL2/Experiment/Pump probe laser/FL24/polarization position
1060 +)))
1077 1077  
1078 - 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
1079 -
1080 1080  \\
1081 1081  
1064 +[[Contents>>doc:||anchor="Contents"]]
1065 +
1082 1082  === HDF5 structure revisions ===
1083 1083  
1084 1084  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:
... ... @@ -1193,6 +1193,72 @@
1193 1193  [[Contents>>doc:||anchor="Contents"]]
1194 1194  
1195 1195  \\
1196 -{{/layout-cell}}
1197 -{{/layout-section}}
1198 -{{/layout}}
1180 +
1181 +== Example code showing how to access HDF5 files ==
1182 +
1183 +\\
1184 +
1185 +=== Samples how to read HDF5 with Matlab ===
1186 +
1187 +The examples apply to HDF files with HDF tree version before vers. 0.3.0.
1188 +
1189 +(% 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
1190 +
1191 +(% 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
1192 +
1193 +(% style="color: rgb(0,128,0);" %)% read a Number per 10 Hz pulse train:
1194 +
1195 +(% class="code" %)
1196 +(((
1197 +FEL_Wavelength_energy_server=h5read(hdf5file,'/Photon Diagnostic/Wavelength/Calculated by energy/wavelength' );
1198 +)))
1199 +
1200 +(% 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');
1201 +
1202 +(% 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)
1203 +
1204 +\\
1205 +
1206 +(% class="code" %)
1207 +(((
1208 +Start_event= 500 ; % define the first 10 Hz event
1209 + Number_of_events = 20; % how many 10 Hz events to load
1210 +)))
1211 +
1212 +(% style="color: rgb(0,128,0);" %)% read only part of the data:
1213 +
1214 +(% class="code" %)
1215 +(((
1216 +Gotthard_data=h5read(hdf5file,'/Experiment/Gotthard1/BL.0',[2 650 Start_event],[50 85 Number_of_events]);
1217 +)))
1218 +
1219 +(% 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 ]
1220 +
1221 +(% class="code" %)
1222 +(((
1223 +VLS_Spectrum=h5read(hdf5file,'/Photon Diagnostic/Wavelength/VLS online spectrometer/PCO.ROI.X',[400 Start_event],[200 Number_of_events] );
1224 +
1225 +)))
1226 +
1227 +(% 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 ]
1228 +
1229 +(% style="color: rgb(0,128,0);" %)%GMD data
1230 +
1231 +(% class="code" %)
1232 +(((
1233 +GMD_Spectrum=h5read(hdf5file,'/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA',[1 Start_event],[40 Number_of_events] );
1234 +)))
1235 +
1236 +[[Contents>>doc:||anchor="Contents"]]
1237 +
1238 +=== How to read HDF5 with Python via FLASHH5 ===
1239 +
1240 +With [[FlashH5>>doc:FLASHUSER.FLASHH5 for easier access of FLASH's HDF5 files]] we provide h5py based examples to access and evaluate FLASH's HDF5 files.
1241 +
1242 +\\
1243 +
1244 +== HDF5 and DOOCS ==
1245 +
1246 +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
1247 +
1248 +[[Contents>>doc:||anchor="Contents"]]