Changes for page The FLASH HDF5 structure

Last modified by sndueste on 2025/09/10 11:43

From version 90.1
edited by sndueste
on 2025/04/24 13:27
Change comment: There is no comment for this version
To version 89.11
edited by sndueste
on 2025/04/23 14:55
Change comment: Update document after refactoring.

Summary

Details

Page properties
Content
... ... @@ -111,6 +111,7 @@
111 111  == Complete list of recordable parameters ==
112 112  
113 113  The complete list for the relation between DOOCS names and HDF5 names for the recordable parameters can be found in [[DESY's Repository>>url:https://stash.desy.de/projects/CS/repos/pah/browse/src/camp/data/channel2HdfName.dat||shape="rect"]].
114 +
114 114  
115 115  == Most popular FLASH parameters and their names in HDF5, DOOCS and (raw) DAQ ==
116 116  
... ... @@ -129,6 +129,7 @@
129 129  DAQ channel: {{code language="none"}}FLASH.FEL/GAS_DOSING/FL1.ATTENUATOR/PRESSURE{{/code}}
130 130  desc: set pressure in the gas attenuator
131 131  units: mbar
133 +
132 132  
133 133  {{code language="none"}}/FL1/Beamlines/BL/Fast shutter/open{{/code}}
134 134  //always saved (PBD)//
... ... @@ -150,6 +150,7 @@
150 150  DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}}
151 151  desc: Position of the BL filter wheel 1 - to correlate with the filter material please look [[here>>doc:FS-FLASH USER tmp.jddd-linked help pages.Filter-Units.Filter wheels in FLASH1 and FLASH2.WebHome]]
152 152  units: degree
155 +
153 153  
154 154  {{code language="none"}}/FL1/Beamlines/BL/Filters/BL filter wheel/position filter 2{{/code}}
155 155  //always saved (PBD)//
... ... @@ -157,6 +157,7 @@
157 157  DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}}
158 158  desc: Position of the BL filter wheel 2 - to correlate with the filter material please look [[here>>doc:FS-FLASH USER tmp.jddd-linked help pages.Filter-Units.Filter wheels in FLASH1 and FLASH2.WebHome]]
159 159  units: degree
163 +
160 160  
161 161  {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 1{{/code}}
162 162  //always saved (PBD)//
... ... @@ -164,6 +164,7 @@
164 164  DAQ channel: {{code language="none"}}TTF2.FEL/BDAF1/BDA.F1/FW.MOTOR.POS{{/code}}
165 165  desc: Position of the PG filter wheel 1
166 166  units: degree
171 +
167 167  
168 168  {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 2{{/code}}
169 169  //always saved (PBD)//
... ... @@ -171,6 +171,7 @@
171 171  DAQ channel: {{code language="none"}}TTF2.FEL/BDAF2/BDA.F2/FW.MOTOR.POS{{/code}}
172 172  desc: Position of the PG filter wheel 2
173 173  units: degree
179 +
174 174  
175 175  {{code language="none"}}/FL1/Beamlines/PG/Filters/position filter 3{{/code}}
176 176  //always saved (PBD)//
... ... @@ -261,6 +261,7 @@
261 261  
262 262  {{info title="GMD pulse resolved data structure"}}
263 263  For every pulse in the pulse train the information is saved:
270 +
264 264  
265 265  1. **Intensity per pulse** (a.u. (more or less µJ ))
266 266  1. Intensity per pulse (auxillary GMD) - not used
... ... @@ -504,6 +504,7 @@
504 504  DAQ channel: {{code language="none"}}PBD.BEAM.PROF.ML/DAQ.OUT.PROF.CCCED{{/code}}
505 505  desc: temporal profile of electron bunch, y axis in Ampers (FLASH1)
506 506  units: pixel
514 +
507 507  
508 508  {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/Expert stuff/TDS calibration constant{{/code}}
509 509  //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
... ... @@ -511,6 +511,7 @@
511 511  DAQ channel: = PBD.BEAM.PROF.ML/CCT=
512 512  desc: TDS calibration constant for the x-axis of the profiles: fs per pixel
513 513  units: fs per pixel
522 +
514 514  
515 515  {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile width rms{{/code}}
516 516  //always saved (PBD) - IF LOLA is ON and ACTIVATED in the PBD DAQ (talk to expert)//
... ... @@ -526,7 +526,8 @@
526 526  DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_INTRA_MEAN/VAL{{/code}}
527 527  DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_MEAN{{/code}}
528 528  desc: electron bunch energy (average over the bunch train)
529 -units: (% class="twikiNewLink" %)MeV
538 +units: (% class="twikiNewLink" %)MeV(%%)
539 +
530 530  
531 531  {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/pulse resolved energy{{/code}}
532 532  //always saved (PBD)//
... ... @@ -542,6 +542,7 @@
542 542  DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/LAMBDA_MEAN{{/code}}
543 543  desc: Wavelength calculated by the electron bunch energy (average over the bunch train) (FLASH1)
544 544  units: nm
555 +
545 545  
546 546  [[Contents>>doc:||anchor="Contents"]]
547 547  
... ... @@ -556,6 +556,7 @@
556 556  DAQ channel: {{code language="none"}}TTF2.UTIL/LASER.CONTROL/GUN/PULSE_FREQ{{/code}}
557 557  desc: repetition rate of the bunches / pulses within the burst (FLASH1)
558 558  units: kHz
570 +
559 559  
560 560  ===== set number of pulses =====
561 561  
... ... @@ -574,6 +574,7 @@
574 574  DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}}
575 575  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)
576 576  units:
589 +
577 577  
578 578  ===== actual pulse pattern recorded after the undulator =====
579 579  
... ... @@ -583,6 +583,7 @@
583 583  DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}}
584 584  desc: The bunch pattern as function of time in a burst recorded by toroid diagnostic BEHIND the undulator. (FLASH1)
585 585  units:
599 +
586 586  
587 587  ===== Train ID =====
588 588  
... ... @@ -592,36 +592,20 @@
592 592  DAQ channel: {{code language="none"}}none{{/code}}
593 593  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 !)
594 594  units:
609 +
595 595  
596 -===== (% style="color:#e67e22" %)Train time(%%) =====
611 +===== Train time =====
597 597  
598 -(% style="color:#e67e22" %){{code language="none"}}/Timing/train time{{/code}}
613 +{{code language="none"}}/Timing/train time{{/code}}
599 599  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
600 600  units: d h min s cs
616 +
601 601  
602 -(% style="color:#e67e22" %){{code language="none"}}/Timing/time stamp{{/code}}
618 +{{code language="none"}}/Timing/time stamp{{/code}}
603 603  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
604 604  second column: microseconds
605 605  third column: Train ID of FLASH
606 -
607 -currently it is saved as Unix time in
608 -
609 -|(((
610 -/zraw/FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1/dGroup/time
611 -
612 -{{expand title="Timestamp help for python" expanded="false"}}
613 - import time
614 -
615 -# epoch time is found in /zraw/FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1/dGroup/time #!!! a leading 1 has to be added !!!
616 -# The time and date of the start of the data taking in the HDF file is encoded in the filename - to roughly check the time
617 -epoch_time = 1709051499.17 # Replace with your epoch time
618 -
619 -formatted_time = time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(epoch_time))
620 -print(formatted_time)
621 -{{/expand}}
622 -
623 623  
624 -)))
625 625  
626 626  [[Contents>>doc:||anchor="Contents"]]
627 627  
... ... @@ -756,7 +756,8 @@
756 756  (% style="color:#000000" %)DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
757 757  (% style="color:#000000" %)DAQ channel:  {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} (%%)
758 758  (% style="color:#000000" %)desc: set pressure in the gas attenuator (%%)
759 -(% style="color:#000000" %)units: mbar
757 +(% style="color:#000000" %)units: mbar(%%)
758 +
760 760  
761 761  {{code language="none"}}/FL2/Beamlines/FL20/Shutter/open{{/code}}
762 762  //always saved (PBD2)//
... ... @@ -772,6 +772,7 @@
772 772  DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS
773 773  desc: Position of the BL filter wheel 1 - to correlate with the filter material please look **[[here>>doc:FS-FLASH USER tmp.jddd-linked help pages.Filter-Units.Filter wheels in FLASH1 and FLASH2.WebHome]]**
774 774  units: degree
774 +
775 775  
776 776  /FL2/Beamlines/Filter wheel/position wheel 2
777 777  always saved (PBD2)
... ... @@ -806,6 +806,7 @@
806 806  
807 807  {{info title="GMD pulse resolved data structure"}}
808 808  For every pulse in the pulse train the information is saved:
809 +
809 809  
810 810  1. **Intensity per pulse** (a.u. (more or less µJ ))
811 811  1. Intensity per pulse (auxillary GMD) - not used
... ... @@ -1103,6 +1103,7 @@
1103 1103  DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}
1104 1104  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)
1105 1105  units:
1107 +
1106 1106  
1107 1107  ===== actual pulse pattern recorded after the undulator =====
1108 1108  
... ... @@ -1112,6 +1112,7 @@
1112 1112  DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}
1113 1113  desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH2)
1114 1114  units:
1117 +
1115 1115  
1116 1116  ===== Train ID =====
1117 1117  
... ... @@ -1121,6 +1121,7 @@
1121 1121  DAQ channel: {{code language="none"}}none{{/code}}
1122 1122  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 !)
1123 1123  units:
1127 +
1124 1124  
1125 1125  ===== Train time =====
1126 1126  
... ... @@ -1128,6 +1128,7 @@
1128 1128  {{code language="none"}}/Timing/train time{{/code}}
1129 1129  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
1130 1130  units: d h min s cs
1135 +
1131 1131  
1132 1132  {{code language="none"}}
1133 1133  /Timing/time stamp
... ... @@ -1137,6 +1137,7 @@
1137 1137  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
1138 1138  second column: microseconds
1139 1139  third column: Train ID of FLASH
1145 +
1140 1140  
1141 1141  [[Contents>>doc:||anchor="Contents"]]
1142 1142