Changes for page The FLASH HDF5 structure

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

From version 22.1
edited by sndueste
on 2019/09/18 15:48
Change comment: There is no comment for this version
To version 11.1
edited by sndueste
on 2019/09/17 16:50
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,8 +1,25 @@
1 1  == Contents ==
2 2  
3 +\\
3 3  
5 +* [[General information about HDF5>>doc:||anchor="General information about HDF5"]]
6 +* [[FLASH HDF5 structure>>doc:||anchor="FLASH HDF5 structure"]]
7 +* [[Most popular FLASH parameters and their names in HDF5>>doc:||anchor="Most popular FLASH parameters and their names in HDF5"]]
8 +** [[FLASH1>>doc:||anchor="FLASH1"]]
9 +*** [[Beamline info (FLASH1)>>doc:||anchor="Beamline info (FLASH1)"]]
10 +*** [[Photon Diagnostics SASE / Spectrometer (FLASH1)>>doc:||anchor="Photon Diagnostics SASE / Spectrometer (FLASH1)"]]
11 +*** [[Electron Beam properties (FLASH1)>>doc:||anchor="Electron Beam properties (FLASH1)"]]
12 +*** [[Timing information, rep rate etc.(FLASH1)>>doc:||anchor="Timing information, rep rate etc.(FLASH1)"]]
13 +*** [[Pump Probe Laser (FLASH1)>>doc:||anchor="Pump Probe Laser (FLASH1)"]]
14 +*** [[User Data (FLASH1)>>doc:||anchor="User Data (FLASH1)"]]
15 +** [[FLASH2>>doc:||anchor="FLASH2"]]
16 +** [[HDF5 structure revisions>>doc:||anchor="HDF5 structure revisions"]]
17 +* [[Example code showing how to access HDF5 files>>doc:||anchor="Example code showing how to access HDF5 files"]]
18 +** [[Samples how to read HDF5 with Matlab>>doc:||anchor="Samples how to read HDF5 with Matlab"]]
19 +** [[How to read HDF5 with Python via FLASHH5>>doc:||anchor="How to read HDF5 with Python via FLASHH5"]]
20 +* [[HDF5 and DOOCS>>doc:||anchor="HDF5 and DOOCS"]]
4 4  
5 -{{toc/}}
22 +\\
6 6  
7 7  \\
8 8  
... ... @@ -36,7 +36,7 @@
36 36  
37 37  \\
38 38  
39 -== Most popular FLASH parameters and their names in HDF5, DOOCS and (raw) DAQ ==
56 +== Most popular FLASH parameters and their names in HDF5 ==
40 40  
41 41  The complete list for the relation between DOOCS names and HDF5 names for the recordable parameters can be found in [[DESY's Repository~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https://stash.desy.de/projects/CS/repos/pah/browse/src/camp/data/channel2HdfName.dat||shape="rect"]].
42 42  The most common and often used ones are summarized below:
... ... @@ -137,7 +137,7 @@
137 137  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT34/VAL{{/code}}
138 138  DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.USER{{/code}}
139 139  desc :Energy per pulse Tunnel (from e-) - the values are set to "0" if there was no SASE beam in the FEL
140 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]**
157 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
141 141  
142 142  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel (raw){{/code}}
143 143  //always saved (PBD)//
... ... @@ -144,7 +144,7 @@
144 144  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT14/VAL{{/code}}
145 145  DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.FF{{/code}}
146 146  desc :Energy per pulse Tunnel (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise
147 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]**
164 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
148 148  
149 149  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy BDA{{/code}}
150 150  //always saved (PBD)//
... ... @@ -158,7 +158,7 @@
158 158  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT35/VAL{{/code}}
159 159  DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.USER{{/code}}
160 160  desc :Energy per pulse BDA (from e-) - the values are set to "0" if there was no SASE beam in the FEL
161 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]**
178 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
162 162  
163 163  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA (raw){{/code}}
164 164  //always saved (PBD)//
... ... @@ -165,13 +165,13 @@
165 165  DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT15/VAL{{/code}}
166 166  DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.FF{{/code}}
167 167  desc :Energy per pulse BDA (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise
168 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision)** [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]**
185 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
169 169  
170 170  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal{{/code}}
171 171  //always saved (PBD)//
172 172  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
173 173  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}}
174 -desc :Beam position of the photon Beam determined by the GMD (BDA, x=horizontal)
191 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (BDA, x=horizontal)
175 175  units : mm
176 176  
177 177  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical{{/code}}
... ... @@ -178,7 +178,7 @@
178 178  //always saved (PBD)//
179 179  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
180 180  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}}
181 -desc :Beam position of the photon Beam determined by the GMD (BDA, y=vertical)
198 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (BDA, y=vertical)
182 182  units : mm
183 183  
184 184  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal{{/code}}
... ... @@ -185,7 +185,7 @@
185 185  //always saved (PBD)//
186 186  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
187 187  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}}
188 -desc :Beam position of the photon Beam determined by the GMD (TUNNEL, x=horizontal)
205 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (TUNNEL, x=horizontal)
189 189  units : mm
190 190  
191 191  {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical{{/code}}
... ... @@ -192,7 +192,7 @@
192 192  //always saved (PBD)//
193 193  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
194 194  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}}
195 -desc :Beam position of the photon Beam determined by the GMD (TUNNEL, y=vertical)
212 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (TUNNEL, y=vertical)
196 196  units : mm
197 197  
198 198  {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength{{/code}}
... ... @@ -385,7 +385,7 @@
385 385  //always saved (PBD)//
386 386  DOOCS prop : {{code language="none"}}none{{/code}}
387 387  DAQ channel: {{code language="none"}}none{{/code}}
388 -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 !)
405 +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 !)
389 389  units:
390 390  \\
391 391  
... ... @@ -392,7 +392,7 @@
392 392  ===== Train time =====
393 393  
394 394  {{code language="none"}}/Timing/train time{{/code}}
395 -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
412 +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
396 396  units: d h min s cs
397 397  \\
398 398  
... ... @@ -458,15 +458,9 @@
458 458  
459 459  ==== User Data (FLASH1) ====
460 460  
461 -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.
462 -
463 -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
464 -
465 -The most common and permanently installed device used by experiment are our ADCs:
466 -
467 467  ===== GHz ADCs =====
468 468  
469 -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]]**
480 +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]]
470 470  //saved on DEMAND in the user DAQ//
471 471  \\The HDF5 names for the ADC traces are depending on the beamline :
472 472  \\PG Beamline:
... ... @@ -489,12 +489,14 @@
489 489  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.
490 490  DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00{{/code}}
491 491  
492 -In addition there are also additional parameters saved like:
503 +in addition there are also additional parameters saved like:
493 493  
494 -* {{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.
495 -* {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
496 -* {{code language="none"}}error (ADC):{{/code}} 0 indicates that there was no error
505 +* sample frequency (in MHz)
506 +* error (state)
507 +* offset
497 497  
509 +~|
510 +
498 498  ===== MHz ADCs =====
499 499  
500 500  similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
... ... @@ -502,19 +502,10 @@
502 502  DOOCS prop : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02/CH00.TD
503 503  DAQ channel: : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02
504 504  
505 -In addition there are also additional parameters saved like:
518 +\\
506 506  
507 -* {{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.
508 -* {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
509 -
510 510  [[Contents>>doc:||anchor="Contents"]]
511 511  
512 -\\
513 -
514 -\\
515 -
516 -\\
517 -
518 518  === FLASH2 ===
519 519  
520 520  There is analog to FLASH1 a permanently running "PhotonDagnostic DAQ FLASH2" (PBD2) and 2 User DAQs
... ... @@ -522,11 +522,11 @@
522 522  ==== Beamline info (FLASH2) ====
523 523  
524 524  (% style="color: rgb(255,153,0);" %)(not yet available){{code language="none"}}/FL2/Beamlines/Attenuator/pressure  {{/code}}(%%)
525 -(% style="color: rgb(193,199,208);" %)//always saved (PBD2)// (%%)
526 -(% style="color: rgb(193,199,208);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
527 -(% style="color: rgb(193,199,208);" %)DAQ channel:  {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
528 -(% style="color: rgb(193,199,208);" %)desc: set pressure in the gas attenuator (%%)
529 -(% style="color: rgb(193,199,208);" %)units: mbar(%%)
529 +//always saved (PBD2)//
530 +DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}}
531 +DAQ channel:  {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}}
532 +desc: set pressure in the gas attenuator
533 +units: mbar
530 530  \\
531 531  
532 532  {{code language="none"}}/FL2/Beamlines/FL20/Shutter/open{{/code}}
... ... @@ -541,13 +541,13 @@
541 541  //always saved (PBD2)//
542 542  DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS{{/code}}
543 543  DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS
544 -desc: Position of the BL filter wheel 1 - to correlate with the filter material please look **[[here>>doc:FLASH.Filter history (BL filterwheel 12)]]**
548 +desc: Position of the BL filter wheel 1 - to correlate with the filter material please look [[here>>doc:FLASH.Filter history (BL filterwheel 12)]]
545 545  units: degree
546 546  \\
547 547  
548 548  
549 549  //always saved (PBD2)//
550 -\\\\**[[here>>doc:FLASH.Filter history (BL filterwheel 12)]]**
554 +\\\\[[here>>doc:FLASH.Filter history (BL filterwheel 12)]]
551 551  {{code language="none"}}/FL2/Beamlines/Filter wheel/position wheel 2 DOOCS prop : FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS desc: Position of the BL filter wheel 2 - to correlate with the filter material please look units: degree{{/code}}
552 552  
553 553  \\
... ... @@ -589,7 +589,7 @@
589 589  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
590 590  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
591 591  desc : Energy per pulse measured in the Tunnel  (in fromt of the gas attenuator and the apertures in the Hall)
592 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision)** [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]**
596 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]]
593 593  
594 594  \\
595 595  
... ... @@ -617,7 +617,7 @@
617 617  //always saved (PBD2)//
618 618  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
619 619  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
620 -desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
624 +desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (tunnel, x=horizontal)
621 621  units : mm
622 622  
623 623  \\
... ... @@ -626,12 +626,14 @@
626 626  //always saved (PBD2)//
627 627  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
628 628  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
629 -desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
633 +desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (tunnel, x=horizontal)
630 630  units : mm
631 631  
632 632  \\
633 633  
638 +\\
634 634  
640 +
635 635  //always saved (PBD2)//
636 636  \\\\{{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel x DOOCS prop : FLASH.FEL/XGM.BPM/FL2.HALL/X.TDDAQ channel: FLASH.FEL/XGM.BPM/FL2.HALL:2 desc: {{/code}}Besides the well calibrated averaged beam position information there is also the option
637 637  {{code language="none"}}to measure the beam position on a single bunch level. HOWEVER this methide needs a perfectly adjusted signal level (talk to your local contact !!) and also then the signal to noise is rather small and one needs some averaging ... BUT with this option one can determine if there was a spatial slope on a burst (say forst bunches were lower than the last ones or so ...)units : mm    {{/code}}
... ... @@ -644,9 +644,9 @@
644 644  
645 645  \\
646 646  
647 -==== Photon Diagnostics OPIS[[ >>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]](FLASH2) ====
653 +==== Photon Diagnostics OPIS[[ >>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]](FLASH2) ====
648 648  
649 -for more info see:** [[ OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]]**
655 +for more info see: [[ OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]]
650 650  
651 651  (The OPIS hall is not installed yet ...)
652 652  
... ... @@ -683,223 +683,209 @@
683 683  
684 684  \\
685 685  
686 -In case OPIS was not operating there is still informaton about the **set wavelength** for the undulators (see below) which may differ by up to 5 % from the actual wavelength due to different settings in the FEL ...
687 -
688 688  \\
689 689  
690 690  \\
691 691  
692 -==== Electron Beam properties (FLASH2) ====
693 -
694 -===== bunch charge =====
695 -
696 -{{code language="none"}}/FL2/Electron Diagnostic/Bunch charge/after undulator{{/code}}
697 -//always saved (PBD2)//
698 -DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
699 -DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
700 -desc: electron bunch charge FLASH2 (average value for each bunchtrain).
701 -units: nC
702 -
703 703  \\
704 704  
705 -===== undulator settings =====
706 -
707 -{{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/set wavelength{{/code}}
708 -//always saved (PBD2)//
709 -DOOCS prop : {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}}
710 -DAQ channel:  {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}}
711 -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 % ...
712 -units: nm
713 -
714 -{{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/SASE14 gap{{/code}}
715 -//always saved (PBD2)//
716 -DOOCS prop : {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}}
717 -DAQ channel:  {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}}
718 -desc: gap value of the undulators. This can be used to follow up how many undulators were closed and if there was a taper
719 -units: mm
720 -
721 -The gap values are saved for all 12 undulators (Nr 3 to 14). Undulator 14 is the one closest to the experimental hall.
722 -
723 -=====
724 -arrival time =====
725 -
726 -**FL1**{{code language="none"}}//Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}}
727 -//always saved (PBD2)//
728 -DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}}
729 -DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}}
730 -desc: Electron bunch arrival time measured with the BAM (more or less) before the undulator (pulse resolved data)
731 -units: ps (bigger numbers indicate later arrivaltime of the electrons)
732 -
733 -The BAM measures the arrivaltime of** FLASH 1 and FLASH2** in the same data set (thus also sorted in at /FL1/ !). The first values are for FLASH1 bunches.
734 -After a gap of about 70 micros ( 70 colums)  with  as entry for the switching between FLASH 1 and 2 the values for the electrons used in FLASH2 start.  The start time of FLASH2 is also recorded in the DAQ. FLASH1 start time is for historic reasons 700. thus if e.g. the start time of FLASH2 ( property name see below) is 1200 it means that FLASH starts at column 500 (1200-700) ...
735 -
736 -Docu for BAM:  [[LINK to detailled infos from MSK (may only work inside DESY network~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:http://www.desy.de/~~mbock/pages/BAM_daq_channel_descriptions.html||shape="rect"]] and to a recent  [[talk about the working principle of the BAM>>url:https://confluence.desy.de/download/attachments/134216957/BAM-basics_and_outlook-2018_DESY-template_16-9Format.pdf?version=1&modificationDate=1565162143328&api=v2||shape="rect"]]
737 -
738 -
739 -[[Contents>>doc:||anchor="Contents"]]
740 -
741 741  \\
742 742  
743 -==== Timing information, rep rate etc.  (FLASH2) ====
744 -
745 -===== start time of FLASH2 =====
746 -
747 -{{code language="none"}}/FL2/Timing/start time flash2{{/code}}
748 -//always saved (PBD2)//
749 -DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}}
750 -DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}}
751 -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 ...)
752 -units: µs
753 -
754 -===== bunch repetition rate =====
755 -
756 -{{code language="none"}}/FL2/Timing/repetition rate{{/code}}
757 -//always saved (PBD2)//
758 -DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}}
759 -DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}}
760 -desc: repetition rate of the bunches / pulses within the burst (FLASH2)
761 -units: kHz
762 -
763 -===== actual number of pulses =====
764 -
765 -{{code language="none"}}/FL1/Timing/actual number of bunches{{/code}}
766 -//always saved (PBD2)//
767 -DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
768 -DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
769 -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)
770 -units:
771 771  \\
772 772  
773 -===== actual pulse pattern recorded after the undulator =====
774 -
775 -{{code language="none"}}/FL1/Timing/Bunch pattern/pattern after undulator{{/code}}
776 -//always saved (PBD2)//
777 -DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
778 -DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
779 -desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH2)
780 -units:
781 781  \\
782 782  
783 -===== Train ID =====
704 +(% class="wrapped" %)
705 +|=(((
706 +DAQ name
707 +)))|=(((
708 +HDF5 name
709 +)))
710 +|(((
711 +FLASH.UTIL/FL2.UND.MOTOR/FL2SASE3/GAP
712 +)))|(((
713 +/FL2/Electron Diagnostic/Undulator setting/SASE03 gap
714 +)))
715 +|(((
716 +FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP
717 +)))|(((
718 +/FL2/Electron Diagnostic/Undulator setting/SASE14 gap
719 +)))
720 +|(((
721 +TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH
722 +)))|(((
723 +/FL2/Electron Diagnostic/Undulator setting/set wavelength
724 +)))
725 +|(((
726 +FLASH.FEL/XGM.PHOTONFLUX/FL2.HALL/PHOTONFLUX.UJ
727 +)))|(((
728 +/FL2/Photon Diagnostic/GMD/Average energy/hall
729 +)))
730 +|(((
731 +FLASH.FEL/XGM.PHOTONFLUX/FL2.HALL/PHOTONFLUX
732 +)))|(((
733 +/FL2/Photon Diagnostic/GMD/Average energy/hall (raw)
734 +)))
735 +|(((
736 +FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ
737 +)))|(((
738 +/FL2/Photon Diagnostic/GMD/Average energy/tunnel
739 +)))
740 +|(((
741 +FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX
742 +)))|(((
743 +/FL2/Photon Diagnostic/GMD/Average energy/tunnel (raw)
744 +)))
745 +|(((
746 +FLASH.FEL/XGM.POSMON/FL2.HALL/IX.POS
747 +)))|(((
748 +/FL2/Photon Diagnostic/GMD/Average beam position/position hall horizontal
749 +)))
750 +|(((
751 +FLASH.FEL/XGM.POSMON/FL2.HALL/IY.POS
752 +)))|(((
753 +/FL2/Photon Diagnostic/GMD/Average beam position/position hall vertical
754 +)))
755 +|(((
756 +FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS
757 +)))|(((
758 +/FL2/Photon Diagnostic/GMD/Average beam position/position tunnel horizontal
759 +)))
760 +|(((
761 +FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS
762 +)))|(((
763 +/FL2/Photon Diagnostic/GMD/Average beam position/position tunnel vertical
764 +)))
765 +|(((
766 +FLASH.FEL/XGM.BPM/FL2.HALL:0
767 +)))|(((
768 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall horizontal
769 +)))
770 +|(((
771 +FLASH.FEL/XGM.BPM/FL2.HALL:1
772 +)))|(((
773 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall vertical
774 +)))
775 +|(((
776 +FLASH.FEL/XGM.BPM/FL2.TUNNEL:0
777 +)))|(((
778 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel horizontal
779 +)))
780 +|(((
781 +FLASH.FEL/XGM.BPM/FL2.TUNNEL:1
782 +)))|(((
783 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel vertical
784 +)))
785 +|(((
786 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL:1
787 +)))|(((
788 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy aux tunnel
789 +)))
790 +|(((
791 +FLASH.FEL/XGM.INTENSITY/FL2.HALL
792 +)))|(((
793 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy hall
794 +)))
795 +|(((
796 +FLASH.FEL/XGM.INTENSITY/FL2.HALL:0
797 +)))|(((
798 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy hall
799 +)))
800 +|(((
801 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL
802 +)))|(((
803 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel
804 +)))
805 +|(((
806 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL:0
807 +)))|(((
808 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel
809 +)))
810 +|(((
811 +FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042
812 +)))|(((
813 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean phtoton energy
814 +)))
815 +|(((
816 +FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040
817 +)))|(((
818 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean wavelengt
819 +)))
820 +|(((
821 +FLASH.FEL/ADC.ADQ/OPIS1.CH02
822 +)))|(((
823 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Raw data/CH02
824 +)))
825 +|(((
826 +FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2
827 +)))|(((
828 +/FL2/Electron Diagnostic/Bunch charge/after undulator
829 +)))
830 +|(((
831 +FLASH.DIAG/PBD2.TOROID.ML/3GUN/CHARGE.FLASH2
832 +)))|(((
833 +/FL2/Electron Diagnostic/Bunch charge/at gun
834 +)))
835 +|(((
836 +FLASH.FEL/FL20T.PH.MOTOR/MOTOR1.MOT1/FPOS
837 +)))|(((
838 +/FL2/Beamlines/Tunnel Apertures/position aperture1 horizontal
839 +)))
840 +|(((
841 +FLASH.FEL/FL20T.PH.MOTOR/MOTOR2.MOT1/FPOS
842 +)))|(((
843 +/FL2/Beamlines/Tunnel Apertures/position aperture1 vertical
844 +)))
845 +|(((
846 +FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER
847 +)))|(((
848 +/FL2/Beamlines/FL20/Shutter/channel 0
849 +)))
850 +|(((
851 +FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00
852 +)))|(((
853 +/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD
854 +)))
855 +|(((
856 +FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH00
857 +)))|(((
858 +/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH0/TD
859 +)))
860 +|(((
861 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD
862 +)))|(((
863 +/FL2/Experiment/Pump probe laser/Synchronization/timing jitter RMS
864 +)))
865 +|(((
866 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/LOCK_STATUS.VALUE.RD
867 +)))|(((
868 +/FL2/Experiment/Pump probe laser/Synchronization/timing jitter RMS GECCO
869 +)))
870 +|(((
871 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD
872 +)))|(((
873 +/FL2/Experiment/Pump probe laser/laser delay readback
874 +)))
875 +|(((
876 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION_SET.WR
877 +)))|(((
878 +/FL2/Experiment/Pump probe laser/laser delay set value
879 +)))
880 +|(((
881 +FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS
882 +)))|(((
883 +/FL2/Experiment/Pump probe laser/FL24/attenuator position
884 +)))
885 +|(((
886 +FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/POS
887 +)))|(((
888 +/FL2/Experiment/Pump probe laser/FL24/polarization position
889 +)))
784 784  
785 -{{code language="none"}}/Timing/train ID{{/code}}
786 -//always saved (PBD2)//
787 -DOOCS prop : {{code language="none"}}none{{/code}}
788 -DAQ channel: {{code language="none"}}none{{/code}}
789 -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 !)
790 -units:
791 791  \\
792 792  
793 -===== Train time =====
794 -
795 -//always saved (PBD2)
796 -//{{code language="none"}}/Timing/train time{{/code}}
797 -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
798 -units: d h min s cs
799 -\\
800 -
801 -{{code language="none"}}/Timing/time stamp{{/code}}
802 -
803 -//always saved (PBD2)//
804 -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
805 -second column: microseconds
806 -third column: Train ID of FLASH
807 -\\
808 -
809 809  [[Contents>>doc:||anchor="Contents"]]
810 810  
811 -\\
812 -
813 -==== User Data (FLASH2) ====
814 -
815 -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.
816 -
817 -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
818 -
819 -The most common and permanently installed device used by experiment are our ADCs:
820 -
821 -===== GHz ADCs =====
822 -
823 -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]]**
824 -//saved on DEMAND in the user DAQ//
825 -\\Up to now there are 4 channels available at FL24
826 -\\\\{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD{{/code}}
827 -{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH01/TD{{/code}}
828 -\\{{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}}
829 -
830 -\\
831 -
832 -DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00/CH00.TD  or CH00.DAQ.TD{{/code}}
833 -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.
834 -DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00{{/code}}
835 -
836 -In addition there are also additional parameters saved like:
837 -
838 -* {{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.
839 -* {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
840 -* {{code language="none"}}error (ADC):{{/code}} 0 indicates that there was no error
841 -* {{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.
842 -
843 -===== MHz ADCs =====
844 -
845 -similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like:
846 -{{code language="none"}}/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH2/TD{{/code}}
847 -DOOCS prop : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02/CH00.TD
848 -DAQ channel: : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02
849 -
850 -In addition there are also additional parameters saved like:
851 -
852 -* {{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.
853 -* {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger
854 -
855 -[[Contents>>doc:||anchor="Contents"]]
856 -
857 -\\
858 -
859 -\\
860 -
861 -==== Pump Probe Laser (FLASH2) ====
862 -
863 -There may be more information available from the "Laser DAQ". laese contact your Laser Local Contact.
864 -
865 -
866 -{{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/attenuator position{{/code}}//always saved (PBD2)//
867 -DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
868 -DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}}
869 -desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
870 -units : deg.
871 -
872 -\\
873 -
874 -
875 -{{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/polarization position{{/code}}//always saved (PBD2)//
876 -DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
877 -DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}}
878 -desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate)
879 -units : deg.
880 -
881 -\\
882 -
883 -{{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay readback{{/code}}
884 -//always saved (PBD2)//
885 -DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
886 -DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}}
887 -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)
888 -units : ps )
889 -
890 -\\
891 -
892 -{{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS{{/code}}
893 -//always saved (PBD)//
894 -DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
895 -DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}}
896 -desc: rms jitter of the fs-Oscillator
897 -units: fs
898 -
899 -[[Contents>>doc:||anchor="Contents"]]
900 -
901 -\\
902 -
903 903  === HDF5 structure revisions ===
904 904  
905 905  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: