Wiki source code of The FLASH HDF5 structure

Version 70.1 by sndueste on 2023/02/22 09:02

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}}
sndueste 70.1 82 * The //average// FEL pulse energy as example for the **slow** **data**. Here the data is not saved with 10 Hz  - thus not for every FEL pulse train.  The data is typically saved with 1 Hz if the values are changing (like the FEL energy) and every about 20 sec if there is no change for longer time ( e.g. motor set values)
cpassow 44.1 83
sndueste 70.1 84 ( as example only 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 63.1 118
119
sndueste 45.1 120 == Complete list of recordable parameters ==
sndueste 40.1 121
sndueste 45.1 122 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 123 \\
124
erkben 30.1 125 == Most popular FLASH parameters and their names in HDF5, DOOCS and (raw) DAQ ==
sendels 1.1 126
erkben 30.1 127 {{id name="DOOCSparameters"/}}
128
sndueste 5.1 129 Note, the HDF group and data set names apply to our HDF tree version since vers. 0.3.0.
sendels 1.1 130
131 \\
132
133 === FLASH1 ===
134
135 ==== Beamline info (FLASH1) ====
136
137 {{code language="none"}}/FL1/Beamlines/Attenuator/pressure{{/code}}
138 //always saved (PBD)//
139 DOOCS prop : {{code language="none"}}FLASH.FEL/GAS_DOSING/FL1.ATTENUATOR/PRESSURE{{/code}}
140 DAQ channel: {{code language="none"}}FLASH.FEL/GAS_DOSING/FL1.ATTENUATOR/PRESSURE{{/code}}
141 desc: set pressure in the gas attenuator
142 units: mbar
143 \\
144
145 {{code language="none"}}/FL1/Beamlines/BL/Fast shutter/open{{/code}}
146 //always saved (PBD)//
147 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/BL.SHUTTER/CH00.TD{{/code}}
148 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/BL.SHUTTER{{/code}}
149 desc: BL Beamline Fast shutter state
150 units: none
151 \\
152
153 {{code language="none"}}/FL1/Beamlines/PG/Fast shutter/open{{/code}}
154 //always saved (PBD)//
155 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/PG.SHUTTER/CH00.TD{{/code}}
156 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL1FS/PG.SHUTTER{{/code}}
157 desc: PG Beamline Fast shutter state
158 units: none
159 \\
160
161 {{code language="none"}}/FL1/Beamlines/BL/Filters/BL filter wheel/position filter 1{{/code}}
162 //always saved (PBD)//
163 DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
164 DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
sndueste 24.1 165 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 166 units: degree
167 \\
168
169 {{code language="none"}}/FL1/Beamlines/BL/Filters/BL filter wheel/position filter 2{{/code}}
170 //always saved (PBD)//
171 DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
172 DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
sndueste 24.1 173 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 174 units: degree
175 \\
176
177 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 1{{/code}}
178 //always saved (PBD)//
179 DOOCS prop : = TTF2.FEL/BDAF1/BDA.F1/FW.MOTOR.POS=
180 DAQ channel: {{code language="none"}}TTF2.FEL/BDAF1/BDA.F1/FW.MOTOR.POS{{/code}}
sndueste 5.1 181 desc: Position of the PG filter wheel 1
sendels 1.1 182 units: degree
183 \\
184
185 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 2{{/code}}
186 //always saved (PBD)//
187 DOOCS prop : {{code language="none"}}TTF2.FEL/BDAF2/BDA.F2/FW.MOTOR.POS{{/code}}
188 DAQ channel: {{code language="none"}}TTF2.FEL/BDAF2/BDA.F2/FW.MOTOR.POS{{/code}}
sndueste 5.1 189 desc: Position of the PG filter wheel 2
sendels 1.1 190 units: degree
191 \\
192
193 {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 3{{/code}}
194 //always saved (PBD)//
195 DOOCS prop : {{code language="none"}}TTF2.FEL/PGFILTERS/PGFILTERS/FW.MOTOR.POS{{/code}}
196 DAQ channel: {{code language="none"}}TTF2.FEL/PGFILTERS/PGFILTERS/FW.MOTOR.POS{{/code}}
sndueste 5.1 197 desc: Position of the PG filter wheel 3
sendels 1.1 198 units: degree
sndueste 8.1 199
sendels 1.1 200 \\
201
sndueste 8.1 202
sndueste 34.1 203 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 204
sendels 4.1 205 [[Contents>>doc:||anchor="Contents"]]
sendels 1.1 206
sndueste 8.1 207 \\
208
sndueste 39.1 209 ==== 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 210
sndueste 55.1 211 {{expand title="Discontinued GMD format (used until 2021)"}}
sndueste 39.1 212 (% style="color: rgb(0,0,0);" %)**Discontinued GMD data recording / evaluation  (VME + PhotonFlux ML server)**
213
sendels 1.1 214 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
sndueste 40.1 215 //always saved (PBD)//
sndueste 34.1 216
217 (% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT04/VAL{{/code}} (%%)
218 (% style="color: rgb(0,0,0);" %)DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENPULSEIC{{/code}}(%%)
219 desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator (ion current)
sendels 1.1 220 units : microJ
221
222 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
sndueste 34.1 223 //always saved (PBD)//
224
sendels 1.1 225 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT34/VAL{{/code}}
226 DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.USER{{/code}}
227 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 228 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 229
230 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel (raw){{/code}}
231 //always saved (PBD)//
232 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT14/VAL{{/code}}
233 DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.FF{{/code}}
234 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 235 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 236
237 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy BDA{{/code}}
sndueste 34.1 238 //always saved (PBD)//
239
sendels 1.1 240 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT05/VAL{{/code}}
241 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENPULSEIC{{/code}}
242 desc : calibrated average SASE Energy/pulse measured in the BDA (in the experimental hall) after the attenuator (ion current)
243 units : microJ
244
245 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA{{/code}}
sndueste 34.1 246 //always saved (PBD)//
247
sendels 1.1 248 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT35/VAL{{/code}}
249 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.USER{{/code}}
250 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 251 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 252
253 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA (raw){{/code}}
254 //always saved (PBD)//
255 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT15/VAL{{/code}}
256 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.FF{{/code}}
257 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 258 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 259 {{/expand}}
sendels 1.1 260
sndueste 34.1 261 \\
262
sndueste 55.1 263 (% 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 264
sndueste 39.1 265 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
266 //always saved (PBD)//
267 (% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL1.TUNNEL/PHOTONFLUX.UJ{{/code}} (%%)
268 (% style="color: rgb(0,0,0);" %)DAQ channel: {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL1.TUNNEL/PHOTONFLUX.UJ{{/code}}
269
270 desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator
271 units : microJ
272
273 \\
274
275 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
276 //always saved (PBD)//
277
278 (% style="color: rgb(0,0,0);" %)DOOCS prop : 
279 {{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}}
280
281 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)
282 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]]**
283
284 {{info title="GMD pulse resolved data structure"}}
285 For every pulse in the pulse train the information is saved:
286
287
288 1. **Intensity per pulse** (a.u. (more or less µJ ))
289 1. Intensity per pulse (auxillary GMD) - not used
290 1. Position horizontal (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
291 1. Position vertical (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
292 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)(%%))
293 1. Position horizontal sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
294 1. Position vertical sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
295 1. Combined warning and error flags
296
297 The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 
298 file
299
300
301 [[image:attach:image2021-2-9_10-51-6.png||height="250"]]
302
303 \\
304 {{/info}}
305
306 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 !
307
308 \\
309
310 Besides  pulse energy the GMD also provides information about the beam position
311
sendels 1.1 312 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal{{/code}}
313 //always saved (PBD)//
314 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
315 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
sndueste 19.1 316 desc :Beam position of the photon Beam determined by the GMD (BDA, x=horizontal)
sendels 1.1 317 units : mm
318
319 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical{{/code}}
320 //always saved (PBD)//
321 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
322 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
sndueste 19.1 323 desc :Beam position of the photon Beam determined by the GMD (BDA, y=vertical)
sendels 1.1 324 units : mm
325
326 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal{{/code}}
327 //always saved (PBD)//
328 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
329 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
sndueste 19.1 330 desc :Beam position of the photon Beam determined by the GMD (TUNNEL, x=horizontal)
sendels 1.1 331 units : mm
332
333 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical{{/code}}
334 //always saved (PBD)//
335 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
336 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
sndueste 19.1 337 desc :Beam position of the photon Beam determined by the GMD (TUNNEL, y=vertical)
sendels 1.1 338 units : mm
339
sndueste 39.1 340 \\
341
342 ==== Spectrometer (FLASH1) ====
343
sendels 1.1 344 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength{{/code}}
345 _always saved (when Spectrum is measured !!) (PBD) _
346 DOOCS prop : {{code language="none"}}TTF2.EXP/PHOTONWL.ML/WAVE_LENGTH/VAL.TD{{/code}}
347 DAQ channel: {{code language="none"}}PBD.PHOTONWL.ML/WAVE_LENGTH{{/code}}
348 desc : XUV Spectrum measured with the "tunnel spectrometer"
349 units :
350
351 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength start value{{/code}}
352 _always saved (when Spectrum is measured !!) (PBD) _
353 DOOCS prop : {{code language="none"}}TTF2.EXP/PBD.PHOTONWL.ML/BSTART/VAL{{/code}}
354 DAQ channel: {{code language="none"}}TTF2.EXP/PBD.PHOTONWL.ML/BSTART/VAL{{/code}}
355 desc : start value (in nm) for the wavelength axis of the XUV Spectrum measured with the "tunnel spectrometer"
356 units : nm
357
358 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength increment{{/code}}
359 _always saved (when Spectrum is measured !!) (PBD) _
360 DOOCS prop : ==
361 DAQ channel: ==
362 desc : increment value (in nm) for each pixel for the wavelength axis of the XUV Spectrum measured with the "tunnel spectrometer"
363 units : nm
364
365 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy{{/code}}
366 //saved on DEMAND (PBD spectrometer stream)//
367 DOOCS prop : ==
368 DAQ channel: {{code language="none"}}PBD.PHOTONEN.ML/PHOTON_ENERGY{{/code}}
369 desc : XUV Spectrum in eV measured with the "PG2 spectrometer"
370 units :
371
372 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy start value{{/code}}
373 //saved on DEMAND (PBD spectrometer stream)//
374 DOOCS prop : ==
375 DAQ channel: ==
376 desc : start value (in eV) for the wavelength axis of the XUV Spectrum measured with the "PG2 spectrometer"
377 units : eV
378
379 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon energy increment{{/code}}
380 //saved on DEMAND (PBD spectrometer stream)//
381 DOOCS prop : ==
382 DAQ channel: ==
383 desc : increment value (in eV) for each pixel for the wavelength axis of the XUV Spectrum measured with the "PG spectrometer"
384 units : eV
385
386 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength{{/code}}
387 //saved on DEMAND (PBD spectrometer stream)//
388 DOOCS prop : ==
389 DAQ channel: {{code language="none"}}PHOTONEN.ML/PHOTON_WAVE_LEN{{/code}}
390 desc : XUV Spectrum in nm measured with the "PG2 spectrometer"
391 units :
392
393 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength increment{{/code}}
394 //saved on DEMAND (PBD spectrometer stream)//
395 DOOCS prop : ==
396 DAQ channel: ==
397 desc : start value (in nm) for the wavelength axis of the XUV Spectrum measured with the "PG2 spectrometer"
398 units : nm
399
400 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/PG2 spectrometer/photon wavelength start value{{/code}}
401 //saved on DEMAND (PBD spectrometer stream)//
402 DOOCS prop : ==
403 DAQ channel: ==
404 desc : increment value (in nm) for each pixel for the wavelength axis of the XUV Spectrum measured with the "PG spectrometer"
405 units : nm
406
sendels 4.1 407 [[Contents>>doc:||anchor="Contents"]]
sendels 1.1 408
409 ==== Electron Beam properties (FLASH1) ====
410
411 ===== bunch charge =====
412
413 {{code language="none"}}/FL1/Electron Diagnostic/Bunch charge/after undulator{{/code}}
414 //always saved (PBD)//
415 DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/12EXP/CHARGE.FLASH1{{/code}}
416 DAQ channel: {{code language="none"}}FLASH.DIAG/TOROID/12EXP{{/code}}
417 desc: electron bunch charge (FLASH1)
418 units: nC
419
sndueste 5.1 420 =====
sndueste 57.1 421 arrival time (BAM) =====
sendels 1.1 422
sndueste 57.1 423 {{info title="BAM information: updates 2022"}}
sndueste 59.1 424 * see: [[Info collection about the BAMs and how to use the BAM data>>url:https://confluence.desy.de/display/FLASHUSER/Info+collection+for+the+BAM||shape="rect"]]
sndueste 57.1 425 * The data format of the BAM has been completely altered in the 2022 shutdown
426 * 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 ...
sndueste 61.1 427 * THIS is now different. There are new parameters saving only the arrival times for pulses that go to FL1 and to FL2 (in detail: first time slot of the accelerator and second)
sndueste 57.1 428 * There has been also a renaming  (and relocation) of the BAMs.
429 ** acc:  4DBC3 → FL0.DBC2
430 ** FL1: 1SFELC →  FL1.SFELC
431 ** FL2: FL2XTDS → (% style="color: rgb(23,43,77);" %)FL2.SEED5
432 * for more Info: [[LINK to detailed infos from MSK>>url:https://confluence.desy.de/display/SDiagPublic/BAM+Data+Structure||shape="rect"]]
433 * [[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]]
434 * a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
435 {{/info}}
436
437 \\
438
439 {{expand title="Discontinued BAM format (used until end 2021)"}}
440 (% style="color: rgb(0,0,0);" %)**Discontinued BAM data recording **
441
sendels 1.1 442 {{code language="none"}}/FL1/Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}}
443 //always saved (PBD)//
444 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
445 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
sndueste 33.1 446 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).
447 units: ps (bigger numbers indicate later arrivaltime of the electrons)
sendels 1.1 448
sndueste 58.1 449 \\
450
sndueste 33.1 451 {{code language="none"}}/FL1/Electron Diagnostic/BAM/1SFELC/electron bunch arrival time (low charge){{/code}}
452 //always saved (PBD)//
453 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/1SFELC/LOW_CHARGE_ARRIVAL_TIME{{/code}}
454 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/1SFELC.LOW_CHARGE_ARRIVAL_TIME{{/code}}
455 desc: Electron bunch arrival time measured with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020.
sndueste 58.1 456 units: ps (bigger numbers indicate later arrival time of the electrons)
sndueste 57.1 457 {{/expand}}
sndueste 33.1 458
sndueste 68.1 459 ====== **BAM FL0.DBC2**{{code language="none"}}{{/code}} ======
460
461 (% style="color: rgb(255,102,0);" %)**DBC2**/electron bunch arrival time  (HDF5 name not yet implemented - see zraw)(%%)
462 //always saved (PBD)//
463 **FL0.DBC2**
464 (% style="color: rgb(0,0,0);" %)channel: FLASH.SDIAG/BAM/**FL0.DBC2**/ARRIVAL_TIME.ABSOLUTE.SA1.COMP (%%)
465 {{code language="none"}}/FL1/Electron Diagnostic/BAM/ DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE.SA1.COMPDAQ desc: Electron bunch arrival time measured with the BAM inside the accelerator (after bunch compressor 2). The property contains only the arrival time of the bunches sent to FL1 (e.g. if there are 30 bunches in FL1 the first 30 values are the arrival time the remaining numbers should be only 0). These are the same values as the "raw" data below - just "cleaned". The values{{/code}}(% style="font-family: SFMono-Medium , ~"SF Mono~" , ~"Segoe UI Mono~" , ~"Roboto Mono~" , ~"Ubuntu Mono~" , Menlo , Courier , monospace;letter-spacing: 0.0px;" %) show a very good correlation to the arrival time  of the XUV pulses in the experiment (see help).
466
467 {{code language="none"}}units: fs (bigger numbers (typically) indicate later arrival times of the electrons).{{/code}}
468
469 \\
470
471 (% style="color: rgb(255,102,0);" %)DBC2/electron bunch arrival time (raw)  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 58.1 472 //always saved (PBD)//
sndueste 67.1 473 DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE
sndueste 68.1 474 DAQ channel: (% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE (%%)
475 desc: Electron bunch arrival time measured with the BAM inside the accelerator (after bunch compressor 2). Here the complete bunch train from the FEL is recorded (FLASH1 and FLASH2 pulses). Thus there are values from FLASH 1 in the first part. they may be separated by several "0" values if the reprate is different from 1 MHz ...  - It shows a very good correlation to the arrival time  of the XUV pulses in the experiment (see help). 
sndueste 58.1 476 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
477
sndueste 57.1 478 \\
479
sndueste 68.1 480 (% style="color: rgb(255,102,0);" %)DBC2/error (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 57.1 481 //always saved (PBD)//
sndueste 58.1 482 DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM(% style="color: rgb(0,0,0);" %)E.bamError(%%)
sndueste 68.1 483 DAQ channel: (% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMERROR(%%)
sndueste 58.1 484 desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !!
sndueste 57.1 485
sndueste 58.1 486 \\
487
sndueste 68.1 488 (% style="color: rgb(255,102,0);" %)DBC2/status  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 57.1 489 //always saved (PBD)//
sndueste 58.1 490 DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM(% style="color: rgb(0,0,0);" %)E..bamStatus.//1//(%%)
sndueste 68.1 491 DAQ channel(% style="color: rgb(0,0,0);" %): FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMSTATUS.1(%%)
sndueste 58.1 492 desc: (% style="letter-spacing: 0.0px;" %) status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
sndueste 57.1 493
494 \\
495
sndueste 68.1 496 ====== **BAM FL1.SFELC**{{code language="none"}}{{/code}} ======
497
498 (% style="font-family: SFMono-Medium , ~"SF Mono~" , ~"Segoe UI Mono~" , ~"Roboto Mono~" , ~"Ubuntu Mono~" , Menlo , Courier , monospace;letter-spacing: 0.0px;" %)/FL1/Electron Diagnostic/BAM/**SFELC**(% style="color: rgb(255,102,0);" %)/electron bunch arrival time  (HDF5 name not yet implemented - see zraw)
499
500 //always saved (PBD)//
501 (% style="color: rgb(23,43,77);" %)**FL1.SFELC**(%%)
502 (% style="color: rgb(0,0,0);" %)channel: FLASH.SDIAG/BAM/(% style="color: rgb(0, 0, 0); color: rgb(23, 43, 77)" %)FL1.SFELC(% style="color: rgb(0,0,0);" %)/ARRIVAL_TIME.ABSOLUTE.SA1.COMP
503 {{code language="none"}} DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE.SA1.COMPDAQ {{/code}}(% style="letter-spacing: 0.0px;" %)desc: Electron bunch arrival time measured  with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020.. The property contains only the arrival time of the bunches sent to FL1 (e.g. if there are 30 bunches in FL1 the first 30 values are the arrival time the remaining numbers should be only 0). These are the same values as the "raw" data below - just "cleaned". The values show a very good correlation to the arrival time  of the XUV pulses in the experiment (see help).
504 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
505
506 \\
507
508 \\
509
510 (% style="color: rgb(23,43,77);" %)SFELC(% style="color: rgb(255,102,0);" %)/electron bunch arrival time (raw) (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 58.1 511 //always saved (PBD)//
sndueste 67.1 512 DOOCS prop : FLASH.SDIAG/BAM/(% style="color: rgb(23,43,77);" %)FL1.SFELC(%%)/ARRIVAL_TIME.ABSOLUTE
sndueste 68.1 513 DAQ channel:** **(% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.ABSOLUTE (%%)
514 desc: Electron bunch arrival time measured  with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020. Here the complete bunch train from the FEL is recorded (FLASH1 and FLASH2 pulses). Thus there are values from FLASH 1 in the first part. they may be separated by several "0" values if the reprate is different from 1 MHz ...  - It shows a very good correlation to the arrival time  of the XUV pulses in the experiment (see help). 
sndueste 58.1 515 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
516
517 \\
518
sndueste 68.1 519 (% style="color: rgb(23,43,77);" %)SFELC(% style="color: rgb(255,102,0);" %)/error (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 58.1 520 //always saved (PBD)//
521 DOOCS prop : FLASH.SDIAG/BAM/(% style="color: rgb(23,43,77);" %)FL1.SFELC(%%)/ARRIVAL_TIM(% style="color: rgb(0,0,0);" %)E.bamError(%%)
sndueste 68.1 522 DAQ channel(% style="color: rgb(0,0,0);" %): FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.BAMERROR(%%)
sndueste 58.1 523 desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !!
524
525 \\
526
sndueste 68.1 527 (% style="color: rgb(23,43,77);" %)SFELC(% style="color: rgb(255,102,0);" %)/status  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 58.1 528 //always saved (PBD)//
529 DOOCS prop : FLASH.SDIAG/BAM/(% style="color: rgb(23,43,77);" %)FL1.SFELC(%%)/ARRIVAL_TIM(% style="color: rgb(0,0,0);" %)E..bamStatus.//1//(%%)
sndueste 68.1 530 DAQ chann(% style="color: rgb(0,0,0);" %)el: FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.BAMSTATUS.1(%%)
sndueste 59.1 531 desc: status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
sndueste 58.1 532
533 \\
534
sndueste 33.1 535 \\
536
sendels 1.1 537 ===== electron beam profile =====
538
539 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile{{/code}}
540 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
541 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/OUT.PROF.CCCED{{/code}}
542 DAQ channel: {{code language="none"}}PBD.BEAM.PROF.ML/DAQ.OUT.PROF.CCCED{{/code}}
543 desc: temporal profile of electron bunch, y axis in Ampers (FLASH1)
544 units: pixel
545 \\
546
547 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/Expert stuff/TDS calibration constant{{/code}}
548 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
549 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/CALIB.CONST.T{{/code}}
550 DAQ channel: = PBD.BEAM.PROF.ML/CCT=
551 desc: TDS calibration constant for the x-axis of the profiles: fs per pixel
552 units: fs per pixel
553 \\
554
555 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile width rms{{/code}}
556 //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
557 DOOCS prop : {{code language="none"}}TTF2.DAQ/BEAM.PROF.ML/BEAM.PROF/SOWS.W.CCTED{{/code}}
558 DAQ channel: {{code language="none"}}PBD.BEAM.PROF.ML/PROFWIDTHCCTED{{/code}}
559 desc: rms pulse width of the measures TDS electron bunch profile
560 units: fs
561
562 ===== electron bunch energy =====
563
564 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/average electron energy{{/code}}
sndueste 40.1 565 //always saved (PBD)//
sendels 1.1 566 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_INTRA_MEAN/VAL{{/code}}
567 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_MEAN{{/code}}
568 desc: electron bunch energy (average over the bunch train)
sendels 2.1 569 units: (% class="twikiNewLink" %)MeV(%%)
sendels 1.1 570 \\
571
572 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/pulse resolved energy{{/code}}
sndueste 40.1 573 //always saved (PBD)//
sendels 1.1 574 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_SPECT/VAL.TD{{/code}}
575 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_SPECT{{/code}}
576 desc: electron bunch energy bunch resolved
sndueste 5.1 577 units: (% class="twikiNewLink" %)MeV
sendels 1.1 578
579 \\
580
581 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/wavelength bunch train average{{/code}}
sndueste 40.1 582 //always saved (PBD)//
sendels 1.1 583 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/LAMBDA_MEAN/VAL{{/code}}
584 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/LAMBDA_MEAN{{/code}}
585 desc: Wavelength calculated by the electron bunch energy (average over the bunch train) (FLASH1)
586 units: nm
587 \\
588
sendels 4.1 589 [[Contents>>doc:||anchor="Contents"]]
sendels 1.1 590
591 \\
592
sndueste 5.1 593 ==== Timing information, rep rate etc.  (FLASH1) ====
sendels 1.1 594
595 ===== bunch repetition rate =====
596
597 {{code language="none"}}/FL1/Timing/repetition rate{{/code}}
598 //always saved (PBD)//
599 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.1{{/code}}
600 DAQ channel: {{code language="none"}}TTF2.UTIL/LASER.CONTROL/GUN/PULSE_FREQ{{/code}}
601 desc: repetition rate of the bunches / pulses within the burst (FLASH1)
602 units: kHz
603 \\
604
605 ===== set number of pulses =====
606
607 {{code language="none"}}/FL1/Timing/set number of bunches{{/code}}
608 //always saved (PBD)//
609 DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH1{{/code}}
610 DAQ channel: {{code language="none"}}TTF2.UTIL/LASER.CONTROL/GUN/PULSE_NUM{{/code}}
611 desc: Number of pulses set at the gun (FLASH1)
612 units:
613
614 ===== actual number of pulses =====
615
616 {{code language="none"}}/FL1/Timing/actual number of bunches{{/code}}
617 //always saved (PBD)//
618 DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/12EXP/NUMBEROFBUNCHES.FLASH1{{/code}}
619 DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}}
620 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)
621 units:
622 \\
623
624 ===== actual pulse pattern recorded after the undulator =====
625
626 {{code language="none"}}/FL1/Timing/Bunch pattern/pattern after undulator{{/code}}
627 //always saved (PBD)//
628 DOOCS prop : {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP/CHARGE.TD{{/code}}
629 DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}}
sndueste 52.1 630 desc: The bunch pattern as function of time in a burst recorded by toroid diagnostic BEHIND the undulator. (FLASH1)
sendels 1.1 631 units:
632 \\
633
634 ===== Train ID =====
635
636 {{code language="none"}}/Timing/train ID{{/code}}
637 //always saved (PBD)//
638 DOOCS prop : {{code language="none"}}none{{/code}}
639 DAQ channel: {{code language="none"}}none{{/code}}
sndueste 18.1 640 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 641 units:
642 \\
643
644 ===== Train time =====
645
646 {{code language="none"}}/Timing/train time{{/code}}
sndueste 18.1 647 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 648 units: d h min s cs
649 \\
650
651 {{code language="none"}}/Timing/time stamp{{/code}}
652 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
653 second column: microseconds
654 third column: Train ID of FLASH
655 \\
656
sendels 4.1 657 [[Contents>>doc:||anchor="Contents"]]
sendels 1.1 658
659 \\
660
661 ==== Pump Probe Laser (FLASH1) ====
662
sndueste 63.1 663 **PIGLET (PG laser)**
sndueste 62.1 664
sndueste 63.1 665 **{{code language="none"}}/FL1/Experiment/Pump probe laser{{/code}}**
666
667 FLASH.LASER/FLACPUPGLASER1.PULSEENERGY/DIAG1out/PULSEENERGY.MEAN 
668 FLASH.LASER/FLACPUPGLASER1.PULSEENERGY/PG1_incoupl/PULSEENERGY.MEAN 
669 FLASH.LASER/FLACPUPGLASER1.PULSEENERGY/PG2_incoupl/PULSEENERGY.MEAN 
670 FLASH.SYNC/LASER.LOCK.EXP/FLASH1.MOD1.PG.OSC/FMC0.MD22.1.ENCODER_POSITION.RD 
671 FLASH.SYNC/LASER.LOCK.EXP/FLASH1.MOD1.PG.OSC/FMC0.MD22.1.ENCODER_POSITION_RAW.RD 
672 FLASH.SYNC/LASER.LOCK.EXP/FLASH1.MOD1.PG.OSC/FMC0.MD22.1.POSITION.RD
673
sndueste 69.1 674 **BL - Hidra laser **
675
676 Property,Units,Description
677 FLASH.LASER/MODBL.CAM/BL1.13.AC/DAQ_CHANNEL,'AU','FL1HIDRAPP1 Autocorrelation (IR) ROI readout'
678 FLASH.LASER/MODBL.CAM/BL1.14.VF/DAQ_CHANNEL,'AU','FL1HIDRAPP1 Virtual Focus Camera (IR) ROI readout'
679 FLASH.LASER/MODBL.SENSORBOARD/PDTRIG_CAMP/DAQ_CHANNEL,'au','FL1PPL Energy channels'
680 FLASH.LASER/MODBL.SPECT/CAMP_IR/DAQ_CHANNEL,'au','FL1PPL BL Table Spectrum'
681 FLASH.LASER/HIDRAPP1.SPECTRUM_ANALYSIS/CAMP_IR/DAQ_CHANNEL,'au','FL1PPL Spectrum Analysis'
682 FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/FMC0.MD22.1.POSITION.RD,'ps','FL1PPL Optical Delay Line (act)'
683 FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/FMC0.MD22.1.POSITION_SET.WR,'ps','FL1PPL Optical Delay Line (set)'
684 FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/FMC0.MD22.1.ENCODER_POSITION.RD,'ps','FL1PPL Optical Delay Line (Encoder Readback)'
685 FLASH.FEL/FLAPPBEAMLINES.MOTOR/CAMP_Delayline/FPOS,'ps','FL1PPL NIR delay BL1 table (act)'
686 FLASH.FEL/FLAPPBEAMLINES.MOTOR/CAMP_Delayline/FPOS.SET,'ps','FL1PPL NIR delay BL1 table (set)'
687 FLASH.FEL/FLAPPBEAMLINES.MOTOR/CAMP.ATT/FPOS,'degree','FL1PPL Transmission degree (act)'
688 FLASH.FEL/FLAPPBEAMLINES.MOTOR/CAMP.ATT/FPOS.SET,'degree','FL1PPL Transmission degree (set)'
689 FLASH.FEL/FLAPPBEAMLINES.MOTOR/Camp_Focus_Lens/FPOS,'mm','FL1PPL Focus Mirror Stage Position (act)'
690 FLASH.FEL/FLAPPBEAMLINES.MOTOR/Camp_Focus_Lens/FPOS.SET,'mm','FL1PPL Focus Mirror Stage Position (set)'
691 FLASH.LASER/MODBL.FEEDFWD/BL1_Att/INPUT.Y,'%','FL1PPL Transmission rate'
692 FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/CURRENT_INPUT_JITTER.RD,'fs','FL1PPL Sync. Jitter'
693 FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/LOCK_STATUS.VALUE.RD,'au','FL1PPL Sync. Status'
694
sndueste 62.1 695 \\
696
sndueste 69.1 697 \\
698
sndueste 62.1 699 {{expand title="Parameters used until 2021"}}
sndueste 5.1 700 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser attenuation{{/code}}
701
702 //always saved (PBD)//
sendels 1.1 703 DOOCS prop : {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/ROT2.CURRENT{{/code}}
704 DAQ channel: {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/ROT2.CURRENT{{/code}}
705 desc: attenuation of the PPLaser (rotation of a waveplate)
706 units : 0 no transmission , 1: full transmission
707
sndueste 5.1 708 \\
709
sendels 1.1 710 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay{{/code}}
711 //always saved (PBD)//
712 DOOCS prop : {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/DLY1.CURRENT{{/code}}
713 DAQ channel: {{code language="none"}}TTF2.FEL/PPDELAYCAL/PPDELAYCAL/DLY1.CURRENT{{/code}}
714 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
715 units : ps ( pos delay means IR comes later)
716
sndueste 5.1 717 \\
718
sendels 1.1 719 {{code language="none"}}/FL1/Experiment/Pump probe laser/delay line IK220.0/ENC.DELAY{{/code}}
720 //always saved (PBD)//
721 DOOCS prop : {{code language="none"}}TTF2.FEL/DELLINE.ENC/IK220.0/ENC.DELAY{{/code}}
722 DAQ channel: {{code language="none"}}TTF2.FEL/DELLINE.ENC/IK220.0:ENC.DELAY{{/code}}
723 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
724 units : ps ( pos delay means IR comes later)
725
sndueste 5.1 726 \\
727
sendels 1.1 728 {{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS GECCO{{/code}}
729 //always saved (PBD)//
730 DOOCS prop : {{code language="none"}}FLASH.SYNC/F1PPL.LASER_LOCK/28C.F1PPL1.CONTROLLER/ADV_CTRL_MANAGER.0.PID_INPUT_JITTER.2.RD{{/code}}
731 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 732 desc: rms jitter of the GECCO (% class="twikiNewLink" %)TiSa(%%) Oscillator units: fs
sendels 1.1 733
734 \\
735
736 {{code language="none"}}/FL1/Experiment/Pump probe laser/streak camera delay time{{/code}}
737 //always saved (PBD)//
738 DOOCS prop : {{code language="none"}}TTF2.FEL/TDOLFEL/TDOLFEL/STREAK.CAM.TIME{{/code}}
739 DOOCS prop : {{code language="none"}}TTF2.FEL/TDOLFEL/TDOLFEL/STREAK.CAM.TIME{{/code}}
sndueste 52.1 740 desc: delay time between the optical laser and the FEL units: ps
sndueste 62.1 741 {{/expand}}
sendels 1.1 742
743 \\
744
sendels 4.1 745 [[Contents>>doc:||anchor="Contents"]]
sendels 1.1 746
747 \\
748
749 ==== User Data (FLASH1) ====
750
sndueste 52.1 751 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 752
753 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
754
755 The most common and permanently installed device used by experiment are our ADCs:
756
sendels 1.1 757 ===== GHz ADCs =====
758
sndueste 18.1 759 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 760 //saved on DEMAND in the user DAQ//
761 \\The HDF5 names for the ADC traces are depending on the beamline :
762 \\PG Beamline:
763 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH00/TD{{/code}}
764 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH01/TD{{/code}}
765 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH02/TD{{/code}}
766 {{code language="none"}}/FL1/Experiment/PG/ADQ412 GHz ADC/CH03/TD{{/code}}
767
768 BL Beamlines:
769 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH00/TD{{/code}}
770 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH01/TD{{/code}}
771 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH02/TD{{/code}}
772 {{code language="none"}}/FL1/Experiment/BL1/ADQ412 GHz ADC/CH03/TD{{/code}}
773 \\{{code language="none"}}/FL1/Experiment/BL2/ADQ412 GHz ADC/CH00/TD{{/code}}
774 {{code language="none"}}/FL1/Experiment/BL2/ADQ412 GHz ADC/CH01/TD{{/code}}
775 \\{{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH02/TD{{/code}}
776 {{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH03/TD{{/code}}
777
778 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
sndueste 52.1 779 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 780 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00{{/code}}
781
sndueste 18.1 782 In addition there are also additional parameters saved like:
sendels 1.1 783
sndueste 16.1 784 * {{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 785 * {{code language="none"}}number of samples{{/code}}: total number of samples recorded for each 10 Hz trigger
sndueste 16.1 786 * {{code language="none"}}error (ADC):{{/code}} 0 indicates that there was no error
sendels 1.1 787
788 ===== MHz ADCs =====
789
sndueste 5.1 790 similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
sendels 1.1 791 {{code language="none"}}/FL1/Experiment/BL1/SIS8300 100MHz ADC/CH2/TD{{/code}}
792 DOOCS prop : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02/CH00.TD
793 DAQ channel: : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02
794
sndueste 18.1 795 In addition there are also additional parameters saved like:
sendels 1.1 796
sndueste 18.1 797 * {{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 798 * {{code language="none"}}number of samples{{/code}}: total number of samples recorded for each 10 Hz trigger
sndueste 18.1 799
sendels 4.1 800 [[Contents>>doc:||anchor="Contents"]]
sendels 1.1 801
sndueste 18.1 802 \\
803
804 \\
805
806 \\
807
sendels 1.1 808 === FLASH2 ===
809
sndueste 7.1 810 There is analog to FLASH1 a permanently running "PhotonDagnostic DAQ FLASH2" (PBD2) and 2 User DAQs
sendels 1.1 811
sndueste 7.1 812 ==== Beamline info (FLASH2) ====
sndueste 6.1 813
sndueste 40.1 814 {{code language="none"}}/FL2/Beamlines/Attenuator/pressure  {{/code}}
815 (% style="color: rgb(0,0,0);" %)//always saved (PBD2)// (%%)
816 (% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
817 (% style="color: rgb(0,0,0);" %)DAQ channel:  {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
818 (% style="color: rgb(0,0,0);" %)desc: set pressure in the gas attenuator (%%)
819 (% style="color: rgb(0,0,0);" %)units: mbar(%%)
sndueste 5.1 820 \\
821
sndueste 7.1 822 {{code language="none"}}/FL2/Beamlines/FL20/Shutter/open{{/code}}
823 //always saved (PBD2)//
824 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER/CH00.TD{{/code}}
825 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER{{/code}}
826 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 827 units: none
sndueste 5.1 828
829
sndueste 7.1 830 {{code language="none"}}/FL2/Beamlines/Filter wheel/position wheel 1{{/code}}
sndueste 8.1 831 //always saved (PBD2)//
sndueste 7.1 832 DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS{{/code}}
833 DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS
sndueste 24.1 834 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 835 units: degree
836 \\
837
sndueste 40.1 838 /FL2/Beamlines/Filter wheel/position wheel 2
839 always saved (PBD2)
840 DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS{{/code}}
841 DAQ channel: {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS{{/code}}
842 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]]
843 units: degree
sndueste 6.1 844
sndueste 8.1 845 \\
846
847 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
848
sndueste 6.1 849 [[Contents>>doc:||anchor="Contents"]]
850
851 \\
852
853 \\
854
sndueste 10.1 855 ==== 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 856
857 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}}
858 //always saved (PBD2)//
sndueste 9.1 859 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ{{/code}}
860 DAQ channel:{{code language="none"}} FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ{{/code}}
861 desc : calibrated average ( ~~ 20 sec averaging time ) SASE Energy/pulse measured in the TUNNEL before the attenuator (ion current)
sndueste 8.1 862 units : microJ
863
864 \\
865
866 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
sndueste 9.1 867 //always saved (PBD2)//
868 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
869 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
sndueste 38.1 870 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 871 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 872
sndueste 39.1 873 {{info title="GMD pulse resolved data structure"}}
sndueste 38.1 874 For every pulse in the pulse train the information is saved:
875
sndueste 8.1 876
sndueste 38.1 877 1. **Intensity per pulse** (a.u. (more or less µJ ))
878 1. Intensity per pulse (auxillary GMD) - not used
sndueste 39.1 879 1. Position horizontal (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
880 1. Position vertical (mm, for a single pulse the position information may be very noisy  - talk to your local contact)
sndueste 38.1 881 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)(%%))
882 1. Position horizontal sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
883 1. Position vertical sigma  (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise)
884 1. Combined warning and error flags
sndueste 8.1 885
sndueste 38.1 886 The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 
887 file
sndueste 8.1 888
sndueste 38.1 889
890 [[image:attach:image2021-2-9_10-51-6.png||height="250"]]
sndueste 8.1 891
sndueste 39.1 892 \\
893 {{/info}}
sndueste 38.1 894
sndueste 39.1 895 \\
sndueste 8.1 896
sndueste 9.1 897 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 898
sndueste 9.1 899 \\
sndueste 8.1 900
sndueste 9.1 901 Besides  pulse energy the GMD also provides information about the beam position
sndueste 8.1 902
sndueste 9.1 903 \\
904
905 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average Beam position/position tunnel horizontal{{/code}}
906 //always saved (PBD2)//
907 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
908 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
sndueste 19.1 909 desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
sndueste 8.1 910 units : mm
911
sndueste 9.1 912 \\
913
914 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average Beam position/position tunnel vertical{{/code}}
915 //always saved (PBD2)//
916 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
917 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
sndueste 19.1 918 desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
sndueste 8.1 919 units : mm
920
921 \\
922
sndueste 40.1 923 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel x
924 always saved (PBD2)
925 DOOCS prop : FLASH.FEL/XGM.BPM/FL2.HALL/X.TD
926 DAQ channel: FLASH.FEL/XGM.BPM/FL2.HALL:2
927 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 ...)
928 units : mm   
sndueste 8.1 929
sndueste 40.1 930 (x=horizontal, y = vertial)
sndueste 9.1 931
932 again the same parameter set is available for the **HALL GMD**
933
sndueste 8.1 934 \\
935
sndueste 9.1 936 \\
937
sndueste 15.1 938 ==== Photon Diagnostics OPIS[[ >>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]](FLASH2) ====
sndueste 10.1 939
sndueste 19.1 940 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 941
942 (The OPIS hall is not installed yet ...)
943
sndueste 9.1 944 \\
945
sndueste 10.1 946 {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean photon energy{{/code}}
947 // saved opon request (PBD2)//
948 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042{{/code}}
949 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042{{/code}}
950 desc : mean photon energy ( ~~ 1 sec averaging time ) measured in the TUNNEL for a specific bunch out of the bunch train (via photoelectron spectroscopy)
951 units : eV
952
sndueste 9.1 953 \\
954
sndueste 10.1 955 {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean wavelength{{/code}}
956 // saved opon request (PBD2)//
957 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}}
958 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}}
sndueste 52.1 959 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 960 units : nm
961
sndueste 9.1 962 \\
963
sndueste 10.1 964 {{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}}
965 // saved opon request (PBD2)//
966 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL060{{/code}}
967 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL060{{/code}}
sndueste 11.1 968 desc : The bunch number of the bunch used for the wavelength calculation
969 units :
sndueste 10.1 970
sndueste 9.1 971 \\
972
sndueste 52.1 973 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 974
sndueste 9.1 975 \\
976
sndueste 52.1 977 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 978
sndueste 9.1 979 \\
980
981 \\
982
sndueste 12.1 983 ==== Electron Beam properties (FLASH2) ====
984
985 ===== bunch charge =====
986
987 {{code language="none"}}/FL2/Electron Diagnostic/Bunch charge/after undulator{{/code}}
sndueste 14.1 988 //always saved (PBD2)//
sndueste 12.1 989 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
990 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
sndueste 15.1 991 desc: electron bunch charge FLASH2 (average value for each bunchtrain).
sndueste 12.1 992 units: nC
993
sndueste 9.1 994 \\
995
sndueste 52.1 996 ===== electron bunch energy =====
sndueste 9.1 997
sndueste 52.1 998 {{code language="none"}}/FL2/Electron Diagnostic/Electron energy/energy of first bunch/behind undulators{{/code}}
999 //always saved (PBD2)//
1000 DOOCS prop : {{code language="none"}}FLASH.DIAG/BEAM_ENERGY_MEASUREMENT/FL2XTDS/ENERGY.FLASH2{{/code}}
1001 DAQ channel: (% style="color: rgb(94,108,132);" %)TTF2.DAQ/PBD2.BEAM.ENERGY.MEAS.ML.COPY/FL2XTDS.ENERGY.FLASH2{{code language="none"}}{{/code}}(%%)
1002 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
1003
1004 (% style="letter-spacing: 0.0px;" %)units: (% class="twikiNewLink" %)MeV
1005
1006 \\
1007
1008 (% style="color: rgb(94,108,132);font-weight: 600;letter-spacing: 0.0px;" %)
1009 undulator settings
1010
sndueste 14.1 1011 {{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/set wavelength{{/code}}
1012 //always saved (PBD2)//
1013 DOOCS prop : {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}}
1014 DAQ channel:  {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}}
1015 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 % ...
1016 units: nm
sndueste 12.1 1017
sndueste 14.1 1018 {{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/SASE14 gap{{/code}}
1019 //always saved (PBD2)//
1020 DOOCS prop : {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}}
1021 DAQ channel:  {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}}
sndueste 15.1 1022 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 1023 units: mm
1024
sndueste 15.1 1025 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 1026
sndueste 12.1 1027 =====
sndueste 59.1 1028 arrival time (BAM) =====
sndueste 12.1 1029
sndueste 59.1 1030 {{info title="BAM information: updates 2022"}}
1031 * see: [[Info collection about the BAMs and how to use the BAM data>>url:https://confluence.desy.de/display/FLASHUSER/Info+collection+for+the+BAM||shape="rect"]]
1032 * The data format of the BAM has been completely altered in the 2022 shutdown
sndueste 60.1 1033 * before 2022 BAMs were always saving the arrival time information for each 1µs bucked regardless if there were electrons in the accelerator or not. I addition the arrival times for  FL1 and FL2 were saved in the same parameter ...
sndueste 61.1 1034 * THIS is now different. There are new parameters saving only the arrival times for pulses that go to FL1 and to FL2 (in detail: first time slot of the accelerator and second)
sndueste 59.1 1035 * There has been also a renaming  (and relocation) of the BAMs.
1036 ** acc:  4DBC3 → FL0.DBC2
1037 ** FL1: 1SFELC →  FL1.SFELC
1038 ** FL2: 8FL2XTDS → (% style="color: rgb(23,43,77);" %)FL2.SEED5
1039 * for more Info: [[LINK to detailed infos from MSK>>url:https://confluence.desy.de/display/SDiagPublic/BAM+Data+Structure||shape="rect"]]
1040 * [[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]]
1041 * a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
1042 {{/info}}
1043
1044 \\
1045
1046 {{expand title="Discontinued BAM format (used until end 2021)"}}
1047 (% style="color: rgb(0,0,0);" %)**Discontinued BAM data recording **
1048
sndueste 33.1 1049 {{code language="none"}}/FL2/Electron Diagnostic/BAM/8FL2XTDS/electron bunch arrival time (low charge){{/code}}
1050 //always saved (PBD2)//
1051 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/8FL2XTDS/LOW_CHARGE_ARRIVAL_TIME{{/code}}
1052 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/8FL2XTDS.LOW_CHARGE_ARRIVAL_TIME{{/code}}
1053 desc: Electron bunch arrival time measured with the BAM after the FLASH2 undulator (pulse resolved data)
1054 units: ps (bigger numbers indicate later arrivaltime of the electrons)
1055
sndueste 14.1 1056 **FL1**{{code language="none"}}//Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}}
1057 //always saved (PBD2)//
sndueste 12.1 1058 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
1059 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
sndueste 33.1 1060 desc: Electron bunch arrival time measured with the BAM  in the accelerator  (pulse resolved data)
sndueste 14.1 1061 units: ps (bigger numbers indicate later arrivaltime of the electrons)
sndueste 12.1 1062
sndueste 33.1 1063 \\
sndueste 14.1 1064
sndueste 33.1 1065 {{info title="BAM hints"}}
1066 * The BAM 4DBC3 measures the arrivaltime of** FLASH 1 and FLASH2** in the same data set (thus also sorted in at /FL1/ !).
1067 * 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 
1068 ** 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
1069 * [[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]]
1070 * [[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"]]
1071 * a recent  [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]]
1072 {{/info}}
sndueste 59.1 1073 {{/expand}}
sndueste 10.1 1074
sndueste 68.1 1075 \\
1076
1077 ====== **BAM FL0.DBC2**{{code language="none"}}{{/code}} ======
1078
1079 (% style="color: rgb(255,102,0);" %)**DBC2**/electron bunch arrival time  (HDF5 name not yet implemented - see zraw)(%%)
1080 //always saved (PBD)//
1081 **FL0.DBC2**
1082 (% style="color: rgb(0,0,0);" %)channel: FLASH.SDIAG/BAM/**FL0.DBC2**/ARRIVAL_TIME.ABSOLUTE.SA2.COMP
1083 {{code language="none"}}/FL2/Electron Diagnostic/BAM/ DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE.SA2.COMPDAQ {{/code}}(% style="letter-spacing: 0.0px;" %)desc: Electron bunch arrival time measured with the BAM inside the accelerator (after bunch compressor 2). The property contains only the arrival time of the bunches sent to FL2 (e.g. if there are 30 bunches in FL2 the first 30 values are the arrival time the remaining numbers should be only 0). These are the same values as the "raw" data below - just "cleaned". The values show a very good correlation to the arrival time  of the XUV pulses in the experiment (see help).
1084 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
1085
1086 \\
1087
1088 (% style="color: rgb(255,102,0);" %)DBC2/electron bunch arrival time (raw)  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 59.1 1089 //always saved (PBD)//
sndueste 68.1 1090 {{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE{{/code}}
1091 (% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE {{code language="none"}}DAQ channel: {{/code}}(%%)
1092 desc: Electron bunch arrival time measured with the BAM inside the accelerator (after bunch compressor 2). Here the complete bunch train from the FEL is recorded (FLASH1 and FLASH2 pulses). Thus there are values from FLASH 2 in the second part. they may be separated by several "0" values if the reprate is different from 1 MHz ...  - It shows a very good correlation to the arrival time  of the XUV pulses in the experiment (see help). 
sndueste 59.1 1093 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
sndueste 14.1 1094
sndueste 59.1 1095 \\
1096
sndueste 68.1 1097 (% style="color: rgb(255,102,0);" %)DBC2/error (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 59.1 1098 //always saved (PBD)//
sndueste 68.1 1099 (% style="color: rgb(0,0,0);" %)E.bamError{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM{{/code}}(%%)
1100 (% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMERROR{{code language="none"}}DAQ channel: {{/code}}(%%)
sndueste 59.1 1101 desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !!
1102
1103 \\
1104
sndueste 68.1 1105 (% style="color: rgb(255,102,0);" %)DBC2/status  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 59.1 1106 //always saved (PBD)//
sndueste 68.1 1107 (% style="color: rgb(0,0,0);" %)E..bamStatus.//2//{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM{{/code}}(%%)
1108 (% style="color: rgb(0,0,0);" %): FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMSTATUS.2{{code language="none"}}DAQ channel{{/code}}(%%)
sndueste 59.1 1109 desc: status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
1110
1111 \\
1112
sndueste 68.1 1113 ====== **BAM FL2.SEED5**{{code language="none"}}{{/code}} ======
1114
sndueste 69.1 1115 /FL2/Electron Diagnostic/BAM/**SEED5**(% style="color: rgb(255,102,0);" %)/electron bunch arrival time  (HDF5 name not yet implemented - see zraw)
sndueste 68.1 1116
1117 //always saved (PBD)//
1118 (% style="color: rgb(23,43,77);" %)**FL2.SEED5**(%%)
1119 (% style="color: rgb(0,0,0);" %)channel: FLASH.SDIAG/BAM/(% style="color: rgb(0, 0, 0); color: rgb(23, 43, 77)" %)**FL2.SEED5**(% style="color: rgb(0,0,0);" %)/ARRIVAL_TIME.ABSOLUTE.SA1.COMP
sndueste 69.1 1120 {{code language="none"}} DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE.SA1.COMPDAQ {{/code}}(%%)desc: Electron bunch arrival time measured  with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020.. The property contains only the arrival time of the bunches sent to FL2 (e.g. if there are 30 bunches in FL2 the first 30 values are the arrival time the remaining numbers should be only 0). These are the same values as the "raw" data below - just "cleaned". The values show a very good correlation to the arrival time  of the XUV pulses in the experiment (see help).
sndueste 68.1 1121 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
1122
1123 \\
1124
1125 \\
1126
1127 (% style="color: rgb(23,43,77);" %)SEED5(% style="color: rgb(255,102,0);" %)/electron bunch arrival time (raw) (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 59.1 1128 //always saved (PBD)//
sndueste 68.1 1129 (% style="color: rgb(23,43,77);" %)**FL2.SEED5**{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE{{/code}}(%%)
1130 **~ **(% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/(% style="color: rgb(0, 0, 0); color: rgb(23, 43, 77)" %)**FL2.SEED5**(% style="color: rgb(0,0,0);" %)/ARRIVAL_TIME.ABSOLUTE {{code language="none"}}DAQ channel:{{/code}}(%%)
1131 desc: Electron bunch arrival time measured  with the BAM  before the undulator (pulse resolved data). This one was newly installed in 2020. Here the complete bunch train from the FEL is recorded (FLASH1 and FLASH2 pulses). Thus there are values from FLASH 2 in the second part. they may be separated by several "0" values if the reprate is different from 1 MHz ...  - It shows a very good correlation to the arrival time  of the XUV pulses in the experiment (see help). 
sndueste 59.1 1132 units: fs (bigger numbers (typically) indicate later arrival times of the electrons).
1133
1134 \\
1135
sndueste 68.1 1136 (% style="color: rgb(23,43,77);" %)SEED5(% style="color: rgb(255,102,0);" %)/error (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 59.1 1137 //always saved (PBD)//
sndueste 68.1 1138 (% style="color: rgb(23,43,77);" %)**FL2.SEED5**(% style="color: rgb(0,0,0);" %)E.bamError{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIM{{/code}}(%%)
1139 (% style="color: rgb(0,0,0);" %): FLASH.SDIAG/BAM/(% style="color: rgb(0, 0, 0); color: rgb(23, 43, 77)" %)**FL2.SEED5**(% style="color: rgb(0,0,0);" %)/ARRIVAL_TIME.BAMERROR{{code language="none"}}DAQ channel{{/code}}(%%)
sndueste 59.1 1140 desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !!
1141
1142 \\
1143
sndueste 68.1 1144 (% style="color: rgb(23,43,77);" %)SEED5(% style="color: rgb(255,102,0);" %)/status  (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}(%%)
sndueste 59.1 1145 //always saved (PBD)//
sndueste 68.1 1146 (% style="color: rgb(23,43,77);" %)**FL2.SEED5**(% style="color: rgb(0,0,0);" %)E.bamStatus.//2//{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIM{{/code}}(%%)
1147 (% style="color: rgb(0,0,0);" %)el: FLASH.SDIAG/BAM/(% style="color: rgb(0, 0, 0); color: rgb(23, 43, 77)" %)**FL2.SEED5**(% style="color: rgb(0,0,0);" %)/ARRIVAL_TIME.BAMSTATUS.2{{code language="none"}}DAQ chann{{/code}}(%%)
sndueste 59.1 1148 desc: status bit: 0 - data is valid; 1 - beam present; 2 - calibration ongoing; 3 - feedback enabled; 4 - feedback acting;  mostly check for bit 0 == 1 is sufficient
1149
1150 \\
1151
sndueste 15.1 1152 [[Contents>>doc:||anchor="Contents"]]
sndueste 12.1 1153
1154 \\
1155
sndueste 16.1 1156 ==== Timing information, rep rate etc.  (FLASH2) ====
sndueste 12.1 1157
sndueste 15.1 1158 ===== start time of FLASH2 =====
sndueste 12.1 1159
sndueste 15.1 1160 {{code language="none"}}/FL2/Timing/start time flash2{{/code}}
1161 //always saved (PBD2)//
1162 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}}
1163 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}}
sndueste 17.1 1164 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 1165 units: µs
sndueste 12.1 1166
1167 ===== bunch repetition rate =====
1168
sndueste 15.1 1169 {{code language="none"}}/FL2/Timing/repetition rate{{/code}}
1170 //always saved (PBD2)//
1171 DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}}
1172 DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}}
1173 desc: repetition rate of the bunches / pulses within the burst (FLASH2)
sndueste 12.1 1174 units: kHz
1175
1176 ===== actual number of pulses =====
1177
1178 {{code language="none"}}/FL1/Timing/actual number of bunches{{/code}}
sndueste 15.1 1179 //always saved (PBD2)//
1180 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
1181 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
1182 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 1183 units:
1184 \\
1185
1186 ===== actual pulse pattern recorded after the undulator =====
1187
1188 {{code language="none"}}/FL1/Timing/Bunch pattern/pattern after undulator{{/code}}
sndueste 15.1 1189 //always saved (PBD2)//
1190 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
1191 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
1192 desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH2)
sndueste 12.1 1193 units:
1194 \\
1195
1196 ===== Train ID =====
1197
1198 {{code language="none"}}/Timing/train ID{{/code}}
sndueste 15.1 1199 //always saved (PBD2)//
sndueste 12.1 1200 DOOCS prop : {{code language="none"}}none{{/code}}
1201 DAQ channel: {{code language="none"}}none{{/code}}
1202 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 !)
1203 units:
1204 \\
1205
1206 ===== Train time =====
1207
sndueste 16.1 1208 //always saved (PBD2)
1209 //{{code language="none"}}/Timing/train time{{/code}}
sndueste 12.1 1210 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
1211 units: d h min s cs
1212 \\
1213
sndueste 16.1 1214 {{code language="none"}}/Timing/time stamp{{/code}}
1215
1216 //always saved (PBD2)//
1217 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 1218 second column: microseconds
1219 third column: Train ID of FLASH
1220 \\
1221
1222 [[Contents>>doc:||anchor="Contents"]]
1223
1224 \\
1225
sndueste 19.1 1226 ==== User Data (FLASH2) ====
sndueste 18.1 1227
sndueste 19.1 1228 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.
1229
1230 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
1231
1232 The most common and permanently installed device used by experiment are our ADCs:
1233
sndueste 18.1 1234 ===== GHz ADCs =====
1235
sndueste 19.1 1236 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 1237 //saved on DEMAND in the user DAQ//
sndueste 19.1 1238 \\Up to now there are 4 channels available at FL24
1239 \\\\{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD{{/code}}
1240 {{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH01/TD{{/code}}
1241 \\{{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 1242
sndueste 19.1 1243 \\
sndueste 18.1 1244
sndueste 19.1 1245 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
sndueste 18.1 1246 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 1247 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00{{/code}}
sndueste 18.1 1248
1249 In addition there are also additional parameters saved like:
1250
1251 * {{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.
1252 * {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
1253 * {{code language="none"}}error (ADC):{{/code}} 0 indicates that there was no error
1254 * {{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.
1255
1256 ===== MHz ADCs =====
1257
1258 similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
sndueste 19.1 1259 {{code language="none"}}/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH2/TD{{/code}}
1260 DOOCS prop : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02/CH00.TD
1261 DAQ channel: : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02
sndueste 18.1 1262
1263 In addition there are also additional parameters saved like:
1264
1265 * {{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.
1266 * {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
1267
1268 [[Contents>>doc:||anchor="Contents"]]
1269
sndueste 12.1 1270 \\
1271
1272 \\
1273
sndueste 21.1 1274 ==== Pump Probe Laser (FLASH2) ====
1275
1276 There may be more information available from the "Laser DAQ". laese contact your Laser Local Contact.
1277
sndueste 64.1 1278 \\
sndueste 21.1 1279
sndueste 64.1 1280 **User delay**
1281
1282 Delay (set value):
1283
1284 {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION_SET.WR{{/code}}
1285
1286 Delay (encoder readback):
1287
1288 {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION.RD{{/code}}
1289
1290 OXC. jitter:
1291
1292 {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/CURRENT_INPUT_JITTER.RD{{/code}}
1293
1294 \\
1295
1296 **Pulse resolved energy:**
1297
1298 1a) OPCPA output:
1299
1300 {{code language="none"}}FLASH.LASER/TAMC532DMA/ULGAN1/CH23.TD{{/code}}
1301
1302 1b) OPCPA energy from PES (only fast channel):
1303
1304 FLASH.LASER/CPUULGAN1.PULSEENERGY/OPCPA_Output/DAQ_CHANNEL
1305
1306 2a) Upper breadboard Photodiode (THG) burst:
1307
1308 {{code language="none"}}FLASH.LASER/TAMC532DMA/ULGAN1/CH26.TD{{/code}}
1309
1310 2b) Upper breadboard Photodiode (THG) energy (in-coupling user photodiode, fast)
1311
1312 {{code language="none"}}FLASH.LASER/MOD24.PES/FL24_userPD/DAQ_CHANNEL{{/code}}
1313
1314 \\
1315
1316 **Attenuator angle:**
1317
1318 {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
1319
1320 **Polarization control:**
1321
1322 {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR14.FL24/FPOS{{/code}}
1323
1324 **SysDC delay error:**
1325
1326 {{code language="none"}}FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.DOUBLES/DOUBLE26{{/code}}
1327
1328 \\
1329
1330 **Timing error: (these two need to be observed and both=0 means no error)**
1331
1332 {{code language="none"}}FLASH/CPUULGAN1.TIMING/ULGAN1/dT_alarm{{/code}}
1333
1334 {{code language="none"}}FLASH/CPUULGAN1.TIMING/ULGAN1/dMPN{{/code}}
1335
1336 **Laser error status:**
1337
1338 \\
1339
1340 **Virtual camera X and Y history, beam size: (use slow data)**
1341
1342 {{code language="none"}}FLASH.LASER/MOD24.BEAMPOS/UV.VF_BP/CENTER.X{{/code}}
1343
1344 {{code language="none"}}FLASH.LASER/MOD24.BEAMPOS/UV.VF_BP/CENTER.Y{{/code}}
1345
1346 {{code language="none"}}FLASH.LASER/MOD24.CAM/UV.14.VF/ROI_SPECTRUM.X.SIG{{/code}}
1347
1348 \\
1349
1350 {{expand title="Parameters used until 2021"}}
sndueste 65.1 1351
sndueste 22.1 1352 {{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/attenuator position{{/code}}//always saved (PBD2)//
sndueste 21.1 1353 DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
1354 DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
1355 desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
1356 units : deg.
1357
sndueste 12.1 1358 \\
1359
sndueste 21.1 1360
sndueste 22.1 1361 {{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/polarization position{{/code}}//always saved (PBD2)//
1362 DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
1363 DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
sndueste 21.1 1364 desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
1365 units : deg.
1366
sndueste 12.1 1367 \\
1368
sndueste 21.1 1369 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay readback{{/code}}
1370 //always saved (PBD2)//
1371 DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
1372 DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
1373 desc: delay of the Pump probe laser - measured by the read back position of the motor. There is also the set value available ( upto now these values are only updating every 1-2 seconds. There is no fast encoder property as on FLASH1 available)
1374 units : ps )
1375
sndueste 12.1 1376 \\
1377
sndueste 22.1 1378 {{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS{{/code}}
sndueste 21.1 1379 //always saved (PBD)//
sndueste 22.1 1380 DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
1381 DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
1382 desc: rms jitter of the fs-Oscillator
1383 units: fs
sndueste 65.1 1384 {{/expand}}
sndueste 21.1 1385
1386 [[Contents>>doc:||anchor="Contents"]]
1387
1388 \\
1389
sndueste 23.1 1390 === "/uncategorized/" ===
1391
1392 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
1393
1394 \\
1395
sendels 1.1 1396 === HDF5 structure revisions ===
1397
1398 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:
1399
1400 \\
1401
1402 * All FLASH1 related HDF groups moved to group "/FL1", i.e. a new prefix "/FL1" is added to their HDF path.
1403 * 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".
1404 * A number of inconsistent names have been streamlined. The relevant changes are listed in the following table.
1405
1406 \\
1407
sndueste 45.1 1408 (% class="wrapped" %)
sendels 1.1 1409 |=(((
sendels 4.1 1410 earlier HDF path (vers. 0.2)
sendels 1.1 1411 )))|=(((
sendels 4.1 1412 is now (vers. 0.3)
sendels 1.1 1413 )))
1414 |(((
1415 /Photon Diagnostic/GMD/Beam position/position BDA x
1416 )))|(((
1417 /FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal
1418 )))
1419 |(((
1420 /Photon Diagnostic/GMD/Beam position/position BDA y
1421 )))|(((
1422 /FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical
1423 )))
1424 |(((
1425 /Photon Diagnostic/GMD/Beam position/position tunnel x
1426 )))|(((
1427 /FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal
1428 )))
1429 |(((
1430 /Photon Diagnostic/GMD/Beam position/position tunnel y
1431 )))|(((
1432 /FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical
1433 )))
1434 |(((
1435 /Experiment/Pump probe laser/BPM/position x
1436 )))|(((
1437 /FL1/Experiment/Pump probe laser/BPM/position horizontal
1438 )))
1439 |(((
1440 /Experiment/Pump probe laser/BPM/position y
1441 )))|(((
1442 /FL1/Experiment/Pump probe laser/BPM/position vertical
1443 )))
1444 |(((
1445 /FL2/Photon Diagnostic/GMD/Beam position/Average/position hall horizontal
1446 )))|(((
1447 /FL2/Photon Diagnostic/GMD/Average beam position/position hall horizontal
1448 )))
1449 |(((
1450 /FL2/Photon Diagnostic/GMD/Beam position/Average/position hall vertical
1451 )))|(((
1452 /FL2/Photon Diagnostic/GMD/Average beam position/position hall vertical
1453 )))
1454 |(((
1455 /FL2/Photon Diagnostic/GMD/Beam position/Average/position tunnel horizontal
1456 )))|(((
1457 /FL2/Photon Diagnostic/GMD/Average beam position/position tunnel horizontal
1458 )))
1459 |(((
1460 /FL2/Photon Diagnostic/GMD/Beam position/Average/position tunnel vertical
1461 )))|(((
1462 /FL2/Photon Diagnostic/GMD/Average beam position/position tunnel vertical
1463 )))
1464 |(((
1465 /FL2/Photon Diagnostic/GMD/Average energy/hall
1466 )))|(((
1467 /FL2/Photon Diagnostic/GMD/Average energy/energy hall
1468 )))
1469 |(((
1470 /FL2/Photon Diagnostic/GMD/Average energy/hall (raw)
1471 )))|(((
1472 /FL2/Photon Diagnostic/GMD/Average energy/energy hall (raw)
1473 )))
1474 |(((
1475 /FL2/Photon Diagnostic/GMD/Average energy/tunnel
1476 )))|(((
1477 /FL2/Photon Diagnostic/GMD/Average energy/energy tunnel
1478 )))
1479 |(((
1480 /FL2/Photon Diagnostic/GMD/Average energy/tunnel (raw)
1481 )))|(((
1482 /FL2/Photon Diagnostic/GMD/Average energy/energy tunnel (raw)
1483 )))
1484 |(((
1485 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/hall x
1486 )))|(((
1487 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall horizontal
1488 )))
1489 |(((
1490 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/hall y
1491 )))|(((
1492 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall vertical
1493 )))
1494 |(((
1495 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/tunnel x
1496 )))|(((
1497 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel horizontal
1498 )))
1499 |(((
1500 /FL2/Photon Diagnostic/GMD/Beam position/Pulse resolved/tunnel y
1501 )))|(((
1502 /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel vertical
1503 )))
1504
1505 \\
1506
sendels 4.1 1507 [[Contents>>doc:||anchor="Contents"]]
sendels 1.1 1508
1509 \\
cpassow 44.1 1510 {{/layout-cell}}
1511 {{/layout-section}}
1512 {{/layout}}