Changes for page The FLASH HDF5 structure

Last modified by sndueste on 2026-01-19 14:35

From version 106.2
edited by sndueste
on 2026-01-09 15:30
Change comment: There is no comment for this version
To version 97.2
edited by sndueste
on 2025-05-19 17:20
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,3 +1,6 @@
1 +{{layout}}
2 +{{layout-section ac:type="single"}}
3 +{{layout-cell}}
1 1  == Contents ==
2 2  
3 3  
... ... @@ -5,26 +5,10 @@
5 5  {{toc/}}
6 6  
7 7  
8 -== General information about HDF5 and how to look at it ==
11 +== General information about HDF5 ==
9 9  
10 10  HDF5 is a data format maintained by the HDF group. For detailed general information see [[here>>url:https://portal.hdfgroup.org/display/support||shape="rect"]]
11 11  
12 -The easiest way to look at the HDF5 files from your beamtime is to use the **Jupyter notebook** interface to Maxwell:  [[https:~~/~~/max-jhub.desy.de/>>https://max-jhub.desy.de/]]
13 -
14 - The file content can be browsed by double clicking on the file.
15 -
16 -Typically the Jupyter notebook starts at your home directory and you have to create a (soft) link to your beamtime folder: open a terminal window (File->New-> Terminal) and create the link via :
17 -
18 -{{code language="none"}}> ln -sn beamtime path linkname
19 -e.g.
20 -> ln -sn /asap3/flash/gpfs/fl23/2025/data/11024321/ ~/beamtime_11024321 {{/code}}
21 -Then a “beamtime_11024321” folder should appear in your home directory.
22 -
23 -[[image:https://mail.desy.de/service/home/~~/?auth=co&loc=de&id=400586&part=2||height="219" width="500"]]
24 -
25 -
26 -Alternativaly you can also use a conventional **HDF viewer:**
27 -
28 28  To download the HDF5 Viewer click [[here>>url:https://portal.hdfgroup.org/display/support/Download+HDFView||shape="rect"]]
29 29  
30 30  For use on the DESY Maxwell or PAL (max-fsc or pal) **hdfview** is available in the xray module :
... ... @@ -74,17 +74,25 @@
74 74  {{/expand}}
75 75  
76 76  === HDF examples: ===
64 +{{/layout-cell}}
65 +{{/layout-section}}
77 77  
67 +{{layout-section ac:type="three_equal"}}
68 +{{layout-cell}}
78 78  * ADC data as example for **fast** **data** (10 Hz):            
79 79  
80 80  [[image:attach:image2020-11-16_15-26-28.png||height="250"]]
72 +{{/layout-cell}}
81 81  
74 +{{layout-cell}}
82 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). Thus to use the data together with the "fast" one, one has to interpolate the data as explained in the examples in the repos below show (e.g. {{code language="none"}}df['GMD_T_average'] = df['GMD_T_average'].interpolate(method='linear'){{/code}})
83 83  
84 84   ( as example only every 10th train ID is listed in the HDF group "index")
85 85  
86 86  [[image:attach:image2020-11-16_15-31-45.png||height="250"]]
80 +{{/layout-cell}}
87 87  
82 +{{layout-cell}}
88 88  * (((
89 89  //zraw// group contains the **original DAQ (DOOCS) names**
90 90  )))
... ... @@ -93,7 +93,11 @@
93 93  
94 94  
95 95  [[image:attach:image2020-11-16_16-26-3.png||height="400"]]
91 +{{/layout-cell}}
92 +{{/layout-section}}
96 96  
94 +{{layout-section ac:type="single"}}
95 +{{layout-cell}}
97 97  {{info}}
98 98  === There are different options that help you to work with the FLASH HDF5 data in Python ===
99 99  
... ... @@ -100,8 +100,11 @@
100 100  * The currently developed option for large data sets: [[the FAB package>>url:https://hasfcpkg.desy.de/fab/fab.html||shape="rect"]] ... see below
101 101  * and for smaller projects:  (% class="Object" %)[[https:~~/~~/gitlab.desy.de/christopher.passow/flash-daq-hdf>>url:https://gitlab.desy.de/christopher.passow/flash-daq-hdf||shape="rect"]]
102 102  
103 -(% class="Object" %)See also the collection of Demo data and sample scripts : [[Collection of HDF5 sample data from different beamlines>>doc:FLASHUSER.Offline data analysis (DAQ).Collection of HDF5 sample data from different beamlines.WebHome]] and [[DEMO - Working with FLASH data>>doc:FLASHUSER.Offline data analysis (DAQ).DEMO - Working with FLASH data.WebHome]]
102 +(% class="Object" %)See also the collection of Demo data and sample scripts : [[doc:FS-FLASH USER tmp.Data Acquisition and controls 1.DAQ and controls overview.Offline data analysis (DAQ).Collection of HDF5 sample data from different beamlines.WebHome]] and [[doc:FS-FLASH USER tmp.Data Acquisition and controls 1.DAQ and controls overview.Offline data analysis (DAQ).DEMO - Working with FLASH data.WebHome]]
104 104  {{/info}}
104 +{{/layout-cell}}
105 +{{/layout-section}}
106 +{{/layout}}
105 105  
106 106  
107 107  
... ... @@ -109,7 +109,7 @@
109 109  
110 110  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"]].
111 111  
112 -== Most popular FLASH parameters and their names in HDF5, DOOCS and (.raw) DAQ ==
114 +== Most popular FLASH parameters and their names in HDF5, DOOCS and (raw) DAQ ==
113 113  
114 114  {{id name="DOOCSparameters"/}}
115 115  
... ... @@ -121,7 +121,7 @@
121 121  
122 122  The previously used naming scheme (2024 and before) can be found here:
123 123  
124 -{{expand expanded="false" title="FLASH1 naming scheme used until 2024"}}
126 +{{expand expanded="false" title="FLASH1 Naming scheme used until 2024"}}
125 125  ==== (% id="cke_bm_8853497S" style="display:none" %) (%%)Beamline info (FLASH1) ====
126 126  
127 127  {{code language="none"}}/FL1/Beamlines/Attenuator/pressure{{/code}}
... ... @@ -789,6 +789,7 @@
789 789  
790 790  
791 791  {{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}}
794 +//always saved (PBD2)//
792 792  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
793 793  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}}
794 794  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)
... ... @@ -823,6 +823,7 @@
823 823  
824 824  
825 825  {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average Beam position/position tunnel horizontal{{/code}}
829 +//always saved (PBD2)//
826 826  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
827 827  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}}
828 828  desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
... ... @@ -830,6 +830,7 @@
830 830  
831 831  
832 832  {{code language="none"}}/FL2/Photon Diagnostic/GMD/Average Beam position/position tunnel vertical{{/code}}
837 +//always saved (PBD2)//
833 833  DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
834 834  DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}}
835 835  desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal)
... ... @@ -837,6 +837,7 @@
837 837  
838 838  
839 839  /FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel x
845 +always saved (PBD2)
840 840  DOOCS prop : FLASH.FEL/XGM.BPM/FL2.HALL/X.TD
841 841  DAQ channel: FLASH.FEL/XGM.BPM/FL2.HALL:2
842 842  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 ...)
... ... @@ -856,6 +856,7 @@
856 856  
857 857  
858 858  {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean photon energy{{/code}}
865 +// saved opon request (PBD2)//
859 859  DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042{{/code}}
860 860  DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042{{/code}}
861 861  desc : mean photon energy ( ~~ 1 sec averaging time ) measured in the TUNNEL for a specific bunch out of the bunch train (via photoelectron spectroscopy)
... ... @@ -863,6 +863,7 @@
863 863  
864 864  
865 865  {{code language="none"}}/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean wavelength{{/code}}
873 +// saved opon request (PBD2)//
866 866  DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}}
867 867  DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}}
868 868  desc : mean wavelength ( ~~ 1 sec averaging time ) measured in the TUNNEL for a specific bunch out of the bunch train (via photoelectron spectroscopy)
... ... @@ -870,28 +870,12 @@
870 870  
871 871  
872 872  {{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}}
881 +// saved opon request (PBD2)//
873 873  DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL060{{/code}}
874 874  DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL060{{/code}}
875 875  desc : The bunch number of the bunch used for the wavelength calculation
876 876  units :
877 877  
878 -{{expand expanded="false" title="More detailed info on OPIS properties"}}
879 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL370,'%','relative width of photoline in percent of the FEL photon energy ROI1, rising flank'
880 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL375,'%','relative width of photoline in percent of the FEL photon energy ROI1, tailing flank'
881 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL470,'%','relative width of photoline in percent of the FEL photon energy ROI1, mean'
882 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL371,'%','relative width of photoline in percent of the FEL photon energy ROI2, rising flank'
883 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL376,'%','relative width of photoline in percent of the FEL photon energy ROI2, tailing flank'
884 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL471,'%','relative width of photoline in percent of the FEL photon energy ROI2, mean'
885 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL372,'%','relative width of photoline in percent of the FEL photon energy ROI3, rising flank'
886 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL377,'%','relative width of photoline in percent of the FEL photon energy ROI3, tailing flank'
887 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL472,'%','relative width of photoline in percent of the FEL photon energy ROI3, mean'
888 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL373,'%','relative width of photoline in percent of the FEL photon energy ROI4, rising flank'
889 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL378,'%','relative width of photoline in percent of the FEL photon energy ROI4, tailing flank'
890 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL473,'%','relative width of photoline in percent of the FEL photon energy ROI4, mean'
891 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL374,'%','relative width of photoline in percent of the FEL photon energy ROI5, rising flank'
892 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL379,'%','relative width of photoline in percent of the FEL photon energy ROI5, tailing flank'
893 -FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL474,'%','relative width of photoline in percent of the FEL photon energy ROI5, mean'
894 -{{/expand}}
895 895  
896 896  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"]])
897 897  
... ... @@ -905,6 +905,7 @@
905 905  ===== bunch charge =====
906 906  
907 907  {{code language="none"}}/FL2/Electron Diagnostic/Bunch charge/after undulator{{/code}}
900 +//always saved (PBD2)//
908 908  DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
909 909  DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}}
910 910  desc: electron bunch charge FLASH2 (average value for each bunchtrain).
... ... @@ -914,6 +914,7 @@
914 914  ===== electron bunch energy =====
915 915  
916 916  {{code language="none"}}/FL2/Electron Diagnostic/Electron energy/energy of first bunch/behind undulators{{/code}}
910 +//always saved (PBD2)//
917 917  DOOCS prop : {{code language="none"}}FLASH.DIAG/BEAM_ENERGY_MEASUREMENT/FL2XTDS/ENERGY.FLASH2{{/code}}
918 918  DAQ channel: (% style="color:#5e6c84" %)TTF2.DAQ/PBD2.BEAM.ENERGY.MEAS.ML.COPY/FL2XTDS.ENERGY.FLASH2{{code language="none"}}{{/code}}(%%)
919 919  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:#5e6c84" %)extraction and septum  in the beginning of FLASH2
... ... @@ -924,19 +924,21 @@
924 924  (% style="color: rgb(94, 108, 132); font-weight: 600; letter-spacing: 0px;" %)
925 925  ===== undulator settings =====
926 926  
927 -{{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/set wavelength 1{{/code}}
928 -DOOCS prop : {{code language="none"}}FLASH.FEL/FL2.WAVELENGTHCONTROL/FLASH2.COLOR1/WAVELENGTH{{/code}}
929 -DAQ channel:  {{code language="none"}}FLASH.FEL/FL2.WAVELENGTHCONTROL/FLASH2.COLOR1/WAVELENGTH{{/code}}
930 -desc: Set value for the anticipated wavelength 1 . This parameter is used to set the undulator gap. It may however deviate from the actual wavelength by several % ... For 2 color operation there is also  the same parameter for COLOR 2
921 +{{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/set wavelength{{/code}}
922 +//always saved (PBD2)//
923 +DOOCS prop : {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}}
924 +DAQ channel:  {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}}
925 +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 % ...
931 931  units: nm
932 932  
933 -{{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/SASE13 gap{{/code}}
934 -DOOCS prop : {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE13/GAP{{/code}}
935 -DAQ channel:  {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE13/GAP{{/code}}
936 -desc: gap value of the undulators. This can be used to follow up how many undulators were closed and if there was a taper. 
928 +{{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/SASE14 gap{{/code}}
929 +//always saved (PBD2)//
930 +DOOCS prop : {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}}
931 +DAQ channel:  {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}}
932 +desc: gap value of the undulators. This can be used to follow up how many undulators were closed and if there was a taper
937 937  units: mm
938 938  
939 -The gap values are saved for all 12 undulators (Nr 2 to 13). Undulator 13 is the one closest to the experimental hall.
935 +The gap values are saved for all 12 undulators (Nr 3 to 14). Undulator 14 is the one closest to the experimental hall.
940 940  
941 941  =====
942 942  arrival time (BAM) =====
... ... @@ -1220,7 +1220,7 @@
1220 1220  
1221 1221  {{view-file att--filename="FSLADAQ-DAQParameterlistFL24-2.pdf"}}{{/view-file}}
1222 1222  
1223 -internal link to parameter list: [[FS-LA DAQ - XWiki>>url:https://xwiki.desy.de/xwiki/bin/view/FSLADAQ/]]
1219 +
1224 1224  {{/info}}
1225 1225  
1226 1226  {{expand title="Laser parameters used until 2023"}}
image.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.sndueste
Size
... ... @@ -1,1 +1,0 @@
1 -1.1 MB
Content