Changes for page The FLASH HDF5 structure
Last modified by sndueste on 2025/02/06 10:55
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,6 +4,3 @@ 1 -{{layout}} 2 -{{layout-section ac:type="single"}} 3 -{{layout-cell}} 4 4 == Contents == 5 5 6 6 ... ... @@ -11,119 +11,39 @@ 11 11 12 12 == General information about HDF5 == 13 13 14 -HDF5 is a data format maintained by the HDF group. For detailed general information see [[here~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https:// portal.hdfgroup.org/display/support||shape="rect"]]11 +HDF5 is a data format maintained by the HDF group. For detailed general information see [[here~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https://www.hdfgroup.org/HDF5/||shape="rect"]] 15 15 16 -To download the HDF5 Viewer click [[here~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https://port al.hdfgroup.org/display/support/Download+HDFView||shape="rect"]]13 +To download the HDF5 Viewer click [[here~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https://support.hdfgroup.org/products/java/hdfview/index.html||shape="rect"]] 17 17 18 18 For use on the DESY Maxwell or PAL (max-fsc or pal) **hdfview** is available in the xray module : 19 19 {{code language="none"}}> module load xray{{/code}} 20 20 {{code language="none"}}> hdfview{{/code}} 21 21 22 -or you can use 23 - 24 -{{code language="none"}}> silx view{{/code}} 25 - 26 -\\ 27 - 28 28 [[Contents>>doc:||anchor="Contents"]] 29 29 30 -== TheFLASH HDF5format ==21 +== FLASH HDF5 structure == 31 31 32 - FLASHprovides a conversionof itsdata acquisition(DAQ) tohecommonlyused [[HDF5>>url:https://www.hdfgroup.org/solutions/hdf5/||shape="rect"]] format. Correlateddata are mapped by a primary indexcalled**trainID**. Everydataset has an individualdexoftrain IDstoidentifythe dataevenwhendataaremissingordeviateinupdaterate.If thedatasetofchoicecontains gaps,users havetodecidehow to treatmissing values.DAQchannelsarespreadacross variousfileswith one filename patternforeachDAQ. Thismeans users have to assembledata from differentfilesif necessary.23 +The photon diagnostic, electron diagnostic and beamline information as well as the information about the pump-probe laser and the infrastructure offered for users (GHz/MHz ADCs) can be included in one HDF5 file which is organised according to train IDs. The general structure is: 33 33 34 -The hierarchy is realized using a human readable named HDF tree with each DAQ channel containing the data sets "//value//" and "//index//". Additionally, the HDF group //zraw// contains a tree of the original DAQ channel names. 25 +* Electron Diagnostic 26 +* Photon Diagnostics 27 +* Beamlines 28 +* Experiment 29 +* Timing 30 +[[~[~[image:url:http://hasfweb.desy.de/pub/Setup/HDF5main/HDF5_structure.jpg~|~|alt="HDF5_structure.jpg" width="700" height="500"~]~]>>attach:HDF5_structure.jpg]] 35 35 36 -Reference implementation, which follows the concept of Python libraries like Pandas, Xarray, or Dask, is given below. 32 +A detailled description of (most) channels can be found in the lower part of the hdf5 viewer: 33 +[[~[~[image:url:http://hasfweb.desy.de/pub/Setup/HDF5main/HDF5_structure_desc.jpg~|~|alt="HDF5_structure_desc.jpg" width="341" height="413"~]~]>>attach:HDF5_structure_desc.jpg]] 37 37 38 - \\35 +[[Contents>>doc:||anchor="Contents"]] 39 39 40 -{{expand title="Discontinued HDF formats"}} 41 -=== Comparison to FLASH's deprecated HDF formats === 42 - 43 -Before 2021, FLASH provided two different HDF formats formally known as //near-online// and //offline// HDF files. 44 - 45 -All data sets were aligned by the same global index by filling in missing data. Fast DAQ channels (pulse synchronous data - update 10 Hz) are filled in by NaN or 0, slow channels (not pulse synchronous data - update e.g. 1 Hz ) are interpolated by the DAQs libraries, by keeping the value constant up to the next change. 46 - 47 -While the near-online HDF files were converted live during the beamtime, the offline HDF files were manually compiled weeks/months later. Near-online HDF files were used by a provided API [[BeamtimeDaqAccess>>url:https://confluence.desy.de/display/FLASHUSER/Near-Online+data+analysis#Near-Onlinedataanalysis-BriefUserGuidetoBeamtimeDAQAccess||shape="rect"]], which also searches for DAQ channels in files. With assembled files "by run", all DAQ channels were existing in the same HDF file. While shorter runs usually fitted into one file, longer runs still had to be aggregated over several files. The creation of the assembled type of files still involves the use of fairly unstable DAQ Mex-functions As the environment required for using the Mex-functions is already deprecated, its continued existence is uncertain. 48 - 49 -The HDF hierarchy is almost identical in all formats. While in the the recent format each DAQ channel contains the data sets "value" and "index", the deprecated format had one data set for each DAQ channel. The deprecated formats supplies no time axis parameters for spectra data types. 50 - 51 51 \\ 52 52 53 - **HDF5examplefiles(oldformat)**39 +== Most popular FLASH parameters and their names in HDF5 == 54 54 55 -Here we have a few HDF5 samples (User data combined with Photon diagnostics data) from a few beamtimes showing the different kind options. 41 +The complete list for the relation between DOOCS names and HDF5 names for the recordable parameters can be found in [[DESY's Repository~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https://stash.desy.de/projects/CS/repos/pah/browse/src/camp/data/channel2HdfName.dat||shape="rect"]]. 42 +The most common and often used ones are summarized below: 56 56 57 -[[image:attach:image2019-10-21_17-2-50.png||thumbnail="true" width="300"]] [[download HDF5 (Images @ FL2)>>url:https://desycloud.desy.de/index.php/s/nyEgeCWJFC4gao2||shape="rect"]] 58 - 59 -\\ 60 - 61 -[[~[~[image:attach:image2019-10-22_10-52-27.png~|~|thumbnail="true" width="300"~]~]download HDF5 (GHz ADC and OPIS @ FL2)>>url:https://desycloud.desy.de/index.php/s/AeA2kPNNnZgX95A||shape="rect"]] 62 - 63 -\\ 64 - 65 -\\ 66 -{{/expand}} 67 - 68 -=== HDF examples: === 69 -{{/layout-cell}} 70 -{{/layout-section}} 71 - 72 -{{layout-section ac:type="three_equal"}} 73 -{{layout-cell}} 74 -* ADC data as example for **fast** **data** (10 Hz): 75 - 76 -\\ 77 - 78 -[[image:attach:image2020-11-16_15-26-28.png||height="250"]] 79 -{{/layout-cell}} 80 - 81 -{{layout-cell}} 82 -* The //average// FEL pulse energy as example for the **slow** **data**. 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 - 84 - ( as example only every 10th train ID is listed in the HDF group "index") 85 - 86 -[[image:attach:image2020-11-16_15-31-45.png||height="250"]] 87 -{{/layout-cell}} 88 - 89 -{{layout-cell}} 90 -* ((( 91 -//zraw// group contains the **original DAQ (DOOCS) names** 92 -))) 93 - 94 - of the properties saved in the DESY internal raw format. (For experts) 95 - 96 -\\ 97 - 98 -[[image:attach:image2020-11-16_16-26-3.png||height="400"]] 99 -{{/layout-cell}} 100 -{{/layout-section}} 101 - 102 -{{layout-section ac:type="single"}} 103 -{{layout-cell}} 104 -{{info}} 105 -=== Reference implementation (Python) === 106 - 107 -(imperative) (% class="Object" %)[[https:~~/~~/gitlab.desy.de/christopher.passow/flash-daq-hdf>>url:https://gitlab.desy.de/christopher.passow/flash-daq-hdf||shape="rect"]] 108 - 109 -(% class="Object" %)(object oriented) [[https:~~/~~/gitlab.desy.de/christopher.passow/fdh-builder>>url:https://gitlab.desy.de/christopher.passow/fdh-builder.git||shape="rect"]] 110 -{{/info}} 111 -{{/layout-cell}} 112 -{{/layout-section}} 113 - 114 -{{layout-section ac:type="single"}} 115 -{{layout-cell}} 116 - 117 - 118 -== Complete list of recordable parameters == 119 - 120 -The complete list for the relation between DOOCS names and HDF5 names for the recordable parameters can be found in [[DESY's Repository~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:https://stash.desy.de/projects/CS/repos/pah/browse/src/camp/data/channel2HdfName.dat||shape="rect"]]. 121 -\\ 122 - 123 -== Most popular FLASH parameters and their names in HDF5, DOOCS and (raw) DAQ == 124 - 125 -{{id name="DOOCSparameters"/}} 126 - 127 127 Note, the HDF group and data set names apply to our HDF tree version since vers. 0.3.0. 128 128 129 129 \\ ... ... @@ -130,6 +130,8 @@ 130 130 131 131 === FLASH1 === 132 132 50 +\\ 51 + 133 133 ==== Beamline info (FLASH1) ==== 134 134 135 135 {{code language="none"}}/FL1/Beamlines/Attenuator/pressure{{/code}} ... ... @@ -160,7 +160,7 @@ 160 160 //always saved (PBD)// 161 161 DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}} 162 162 DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS1/FILTER1/FW.MOTOR.POS{{/code}} 163 -desc: Position of the BL filter wheel 1 - to correlate with the filter material please look [[here>>doc:FLASH USER.jddd-linked help pages.Filter-Units.Filtersin FLASH1and FLASH2.WebHome]]82 +desc: Position of the BL filter wheel 1 - to correlate with the filter material please look [[here>>doc:FLASH.Filter history (BL filterwheel 12)]] 164 164 units: degree 165 165 \\ 166 166 ... ... @@ -168,7 +168,7 @@ 168 168 //always saved (PBD)// 169 169 DOOCS prop : {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}} 170 170 DAQ channel: {{code language="none"}}TTF2.FEL/BLFILTERS2/FILTER2/FW.MOTOR.POS{{/code}} 171 -desc: Position of the BL filter wheel 2 - to correlate with the filter material please look [[here>>doc:FLASH USER.jddd-linked help pages.Filter-Units.Filtersin FLASH1and FLASH2.WebHome]]90 +desc: Position of the BL filter wheel 2 - to correlate with the filter material please look [[here>>doc:FLASH.Filter history (BL filterwheel 12)]] 172 172 units: degree 173 173 \\ 174 174 ... ... @@ -198,32 +198,27 @@ 198 198 \\ 199 199 200 200 201 -NOTE: Aperture positions in the beamline as well as the positions of the beam steering mirrors are also saved. For more Info contact your local contact120 +NOTE: Aperture positions in the beamline as well as the positions of the beam steering mirrors are also saved. for more Info contact your local contact 202 202 203 203 [[Contents>>doc:||anchor="Contents"]] 204 204 205 205 \\ 206 206 207 -==== Photon Diagnostics SASE ([[GMD>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/gmd_intensity_and_position/index_eng.html||shape="rect"]]) ==== 126 +==== Photon Diagnostics SASE ([[GMD>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/gmd_intensity_and_position/index_eng.html||shape="rect"]]) / Spectrometer (FLASH1) ==== 208 208 209 -{{expand title="Discontinued GMD format (used until 2021)"}} 210 -(% style="color: rgb(0,0,0);" %)**Discontinued GMD data recording / evaluation (VME + PhotonFlux ML server)** 211 - 212 212 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}} 213 -//always saved (PBD)// 214 - 215 -(% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT04/VAL{{/code}} (%%) 216 -(% style="color: rgb(0,0,0);" %)DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENPULSEIC{{/code}}(%%) 217 -desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator (ion current) 129 +//always saved (PBD)// 130 +DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT04/VAL{{/code}} 131 +DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENPULSEIC{{/code}} 132 +desc : calibrated average SASE Energy/pulse measured in the TUNNEL before the attenuator (ion current) 218 218 units : microJ 219 219 220 220 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}} 221 -//always saved (PBD)// 222 - 136 +//always saved (PBD)// 223 223 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT34/VAL{{/code}} 224 224 DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.USER{{/code}} 225 225 desc :Energy per pulse Tunnel (from e-) - the values are set to "0" if there was no SASE beam in the FEL 226 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASHUSER.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**140 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]] 227 227 228 228 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel (raw){{/code}} 229 229 //always saved (PBD)// ... ... @@ -230,11 +230,10 @@ 230 230 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT14/VAL{{/code}} 231 231 DAQ channel: {{code language="none"}}PBD.PHFLUX/TUNNEL.ENERGYPULSE.FF{{/code}} 232 232 desc :Energy per pulse Tunnel (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise 233 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASHUSER.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**147 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]] 234 234 235 235 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy BDA{{/code}} 236 -//always saved (PBD)// 237 - 150 +//always saved (PBD)// 238 238 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT05/VAL{{/code}} 239 239 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENPULSEIC{{/code}} 240 240 desc : calibrated average SASE Energy/pulse measured in the BDA (in the experimental hall) after the attenuator (ion current) ... ... @@ -241,12 +241,11 @@ 241 241 units : microJ 242 242 243 243 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA{{/code}} 244 -//always saved (PBD)// 245 - 157 +//always saved (PBD)// 246 246 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT35/VAL{{/code}} 247 247 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.USER{{/code}} 248 248 desc :Energy per pulse BDA (from e-) - the values are set to "0" if there was no SASE beam in the FEL 249 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) **[[see here for help>>doc:FLASHUSER.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]**161 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]] 250 250 251 251 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA (raw){{/code}} 252 252 //always saved (PBD)// ... ... @@ -253,65 +253,13 @@ 253 253 DOOCS prop : {{code language="none"}}TTF2.DAQ/PHFLUX/OUT15/VAL{{/code}} 254 254 DAQ channel: {{code language="none"}}PBD.PHFLUX/BDA.ENERGYPULSE.FF{{/code}} 255 255 desc :Energy per pulse BDA (from e-) - uncorrected values. There are also values saved if there was no beam ... just background noise 256 -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]]** 257 -{{/expand}} 168 +units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision) [[see here for help>>doc:FLASH.Calibrating the pulse resolved (electron) data from GMD]] 258 258 259 -\\ 260 - 261 -(% style="letter-spacing: 0px; color: rgb(0, 0, 0)" %)**NEW (since 2021) GMD data recording / evaluation (same format as FLASH2 and XFEL)** 262 - 263 -{{code language="none"}}/FL1/Photon Diagnostic/GMD/Average energy/energy tunnel{{/code}} 264 -//always saved (PBD)// 265 -(% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL1.TUNNEL/PHOTONFLUX.UJ{{/code}} (%%) 266 -(% style="color: rgb(0,0,0);" %)DAQ channel: {{code language="none"}}FLASH.FEL/XGM.PHOTONFLUX/FL1.TUNNEL/PHOTONFLUX.UJ{{/code}} 267 - 268 -desc : calibrated average SASE Energy/pulse measured in the TUNNEL upstream the gas attenuator 269 -units : microJ 270 - 271 -\\ 272 - 273 -{{code language="none"}}/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}} 274 -//always saved (PBD)// 275 - 276 -(% style="color: rgb(0,0,0);" %)DOOCS prop : 277 -{{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL1.TUNNEL/INTENSITY.TD{{/code}}DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL1.TUNNEL/INTENSITY.TD{{/code}} 278 - 279 -desc : Energy per pulse measured in the Tunnel. In addition measurement errors and beam position are included for EACH pulse in the pulse train !! (see below) 280 -units : a.u. (more or less µJ but need to be calibrated with the "Average energy" for good precision)** [[see here for help>>doc:FLASHUSER.jddd-linked help pages.Calibrating the pulse resolved (electron) data from GMD.WebHome]]** 281 - 282 -{{info title="GMD pulse resolved data structure"}} 283 -For every pulse in the pulse train the information is saved: 284 - 285 - 286 -1. **Intensity per pulse** (a.u. (more or less µJ )) 287 -1. Intensity per pulse (auxillary GMD) - not used 288 -1. Position horizontal (mm, for a single pulse the position information may be very noisy - talk to your local contact) 289 -1. Position vertical (mm, for a single pulse the position information may be very noisy - talk to your local contact) 290 -1. **Intensity per pulse sigma** (a.u. (more or less µJ ), (% style="color: rgb(0,0,0);" %)This parameter gives an indication of the error of the measurement of the pulse energy. This takes signal to noise, detector resolution, uncertainties in crossection etc into account. (it is NOT the measurement of the statistical fluctuation of the SASE pulses)(%%)) 291 -1. Position horizontal sigma (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise) 292 -1. Position vertical sigma (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise) 293 -1. Combined warning and error flags 294 - 295 -The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 296 -file 297 - 298 - 299 -[[image:attach:image2021-2-9_10-51-6.png||height="250"]] 300 - 301 -\\ 302 -{{/info}} 303 - 304 -All values for the GMD are also available for the** BDA GMD **which is located in the experimental hall down stream the gas attenuator. If the attenuator is on the ratio between BDA and Tunnel signal shows the attenuation. **BUT NOTE** that the filter units are downstream the GMD. So if filters are used this influence is NOT measured by the GMD BDA ! 305 - 306 -\\ 307 - 308 -Besides pulse energy the GMD also provides information about the beam position 309 - 310 310 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA horizontal{{/code}} 311 311 //always saved (PBD)// 312 312 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}} 313 313 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IX.POS{{/code}} 314 -desc :Beam position of the photon Beam determined by the GMD (BDA, x=horizontal) 174 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (BDA, x=horizontal) 315 315 units : mm 316 316 317 317 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position BDA vertical{{/code}} ... ... @@ -318,7 +318,7 @@ 318 318 //always saved (PBD)// 319 319 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}} 320 320 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.BDA/IY.POS{{/code}} 321 -desc :Beam position of the photon Beam determined by the GMD (BDA, y=vertical) 181 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (BDA, y=vertical) 322 322 units : mm 323 323 324 324 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel horizontal{{/code}} ... ... @@ -325,7 +325,7 @@ 325 325 //always saved (PBD)// 326 326 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}} 327 327 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IX.POS{{/code}} 328 -desc :Beam position of the photon Beam determined by the GMD (TUNNEL, x=horizontal) 188 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (TUNNEL, x=horizontal) 329 329 units : mm 330 330 331 331 {{code language="none"}}/FL1/Photon Diagnostic/GMD/Beam position/position tunnel vertical{{/code}} ... ... @@ -332,13 +332,9 @@ 332 332 //always saved (PBD)// 333 333 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}} 334 334 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL1.TUNNEL/IY.POS{{/code}} 335 -desc :Beam position of the photon Beam determined by the GMD (TUNNEL, y=vertical) 195 +desc :Beam position of the photon Beam determined by the [[GMD>>doc:FLASH.Gas Monitor Detector]] (TUNNEL, y=vertical) 336 336 units : mm 337 337 338 -\\ 339 - 340 -==== Spectrometer (FLASH1) ==== 341 - 342 342 {{code language="none"}}/FL1/Photon Diagnostic/Wavelength/Tunnelspectrometer/wavelength{{/code}} 343 343 _always saved (when Spectrum is measured !!) (PBD) _ 344 344 DOOCS prop : {{code language="none"}}TTF2.EXP/PHOTONWL.ML/WAVE_LENGTH/VAL.TD{{/code}} ... ... @@ -416,122 +416,16 @@ 416 416 units: nC 417 417 418 418 ===== 419 -arrival time (BAM)=====275 +arrival time ===== 420 420 421 -{{info title="BAM information: updates 2022"}} 422 -* 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"]] 423 -* The data format of the BAM has been completely altered in the 2022 shutdown 424 -* 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 ... 425 -* 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) 426 -* There has been also a renaming (and relocation) of the BAMs. 427 -** acc: 4DBC3 → FL0.DBC2 428 -** FL1: 1SFELC → FL1.SFELC 429 -** FL2: FL2XTDS → (% style="color: rgb(23,43,77);" %)FL2.SEED5 430 -* for more Info: [[LINK to detailed infos from MSK>>url:https://confluence.desy.de/display/SDiagPublic/BAM+Data+Structure||shape="rect"]] 431 -* [[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]] 432 -* a recent [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]] 433 -{{/info}} 434 - 435 -\\ 436 - 437 -{{expand title="Discontinued BAM format (used until end 2021)"}} 438 -(% style="color: rgb(0,0,0);" %)**Discontinued BAM data recording ** 439 - 440 440 {{code language="none"}}/FL1/Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}} 441 441 //always saved (PBD)// 442 442 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}} 443 443 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}} 444 -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). 445 -units: ps (bigger numbers indicate later arrivaltime of the electrons) 281 +desc: Electron bunch arrival time measured with the BAM (more or less) before the undulator (pulse resolved data) 282 +units: ps (bigger numbers indicate later arrivaltime of the electrons) 283 +note: besides the arivaltime from FLASH1 there is also the FLASH2/3 electron arrival time saved. [[LINK to detailled infos from MSK (may only work inside DESY network~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:http://www.desy.de/~~mbock/pages/BAM_daq_channel_descriptions.html||shape="rect"]] and to a recent [[talk about the working principle of the BAM>>url:https://confluence.desy.de/download/attachments/134216957/BAM-basics_and_outlook-2018_DESY-template_16-9Format.pdf?version=1&modificationDate=1565162143328&api=v2||shape="rect"]] 446 446 447 -\\ 448 - 449 -{{code language="none"}}/FL1/Electron Diagnostic/BAM/1SFELC/electron bunch arrival time (low charge){{/code}} 450 -//always saved (PBD)// 451 -DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/1SFELC/LOW_CHARGE_ARRIVAL_TIME{{/code}} 452 -DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/1SFELC.LOW_CHARGE_ARRIVAL_TIME{{/code}} 453 -desc: Electron bunch arrival time measured with the BAM before the undulator (pulse resolved data). This one was newly installed in 2020. 454 -units: ps (bigger numbers indicate later arrival time of the electrons) 455 -{{/expand}} 456 - 457 -====== **BAM FL0.DBC2**{{code language="none"}}{{/code}} ====== 458 - 459 -(% style="color: rgb(255,102,0);" %)**DBC2**/electron bunch arrival time (HDF5 name not yet implemented - see zraw)(%%) 460 -//always saved (PBD)// 461 -**FL0.DBC2** 462 -(% style="color: rgb(0,0,0);" %)channel: FLASH.SDIAG/BAM/**FL0.DBC2**/ARRIVAL_TIME.ABSOLUTE.SA1.COMP (%%) 463 -{{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). 464 - 465 -{{code language="none"}}units: fs (bigger numbers (typically) indicate later arrival times of the electrons).{{/code}} 466 - 467 -\\ 468 - 469 -(% 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}}(%%) 470 -//always saved (PBD)// 471 -DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE 472 -DAQ channel: (% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE (%%) 473 -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). 474 -units: fs (bigger numbers (typically) indicate later arrival times of the electrons). 475 - 476 -\\ 477 - 478 -(% style="color: rgb(255,102,0);" %)DBC2/error (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%) 479 -//always saved (PBD)// 480 -DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM(% style="color: rgb(0,0,0);" %)E.bamError(%%) 481 -DAQ channel: (% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMERROR(%%) 482 -desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !! 483 - 484 -\\ 485 - 486 -(% style="color: rgb(255,102,0);" %)DBC2/status (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL1/Electron Diagnostic/BAM/{{/code}}(%%) 487 -//always saved (PBD)// 488 -DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM(% style="color: rgb(0,0,0);" %)E..bamStatus.//1//(%%) 489 -DAQ channel(% style="color: rgb(0,0,0);" %): FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMSTATUS.1(%%) 490 -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 491 - 492 -\\ 493 - 494 -====== **BAM FL1.SFELC**{{code language="none"}}{{/code}} ====== 495 - 496 -(% 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) 497 - 498 -//always saved (PBD)// 499 -(% style="color: rgb(23,43,77);" %)**FL1.SFELC**(%%) 500 -(% 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 501 -{{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). 502 -units: fs (bigger numbers (typically) indicate later arrival times of the electrons). 503 - 504 -\\ 505 - 506 -\\ 507 - 508 -(% 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}}(%%) 509 -//always saved (PBD)// 510 -DOOCS prop : FLASH.SDIAG/BAM/(% style="color: rgb(23,43,77);" %)FL1.SFELC(%%)/ARRIVAL_TIME.ABSOLUTE 511 -DAQ channel:** **(% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.ABSOLUTE (%%) 512 -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). 513 -units: fs (bigger numbers (typically) indicate later arrival times of the electrons). 514 - 515 -\\ 516 - 517 -(% 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}}(%%) 518 -//always saved (PBD)// 519 -DOOCS prop : FLASH.SDIAG/BAM/(% style="color: rgb(23,43,77);" %)FL1.SFELC(%%)/ARRIVAL_TIM(% style="color: rgb(0,0,0);" %)E.bamError(%%) 520 -DAQ channel(% style="color: rgb(0,0,0);" %): FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.BAMERROR(%%) 521 -desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !! 522 - 523 -\\ 524 - 525 -(% 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}}(%%) 526 -//always saved (PBD)// 527 -DOOCS prop : FLASH.SDIAG/BAM/(% style="color: rgb(23,43,77);" %)FL1.SFELC(%%)/ARRIVAL_TIM(% style="color: rgb(0,0,0);" %)E..bamStatus.//1//(%%) 528 -DAQ chann(% style="color: rgb(0,0,0);" %)el: FLASH.SDIAG/BAM/FL1.SFELC/ARRIVAL_TIME.BAMSTATUS.1(%%) 529 -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 530 - 531 -\\ 532 - 533 -\\ 534 - 535 535 ===== electron beam profile ===== 536 536 537 537 {{code language="none"}}/FL1/Electron Diagnostic/Electron bunch profile/TDS profile{{/code}} ... ... @@ -560,7 +560,7 @@ 560 560 ===== electron bunch energy ===== 561 561 562 562 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/average electron energy{{/code}} 563 - //always saved (PBD)//313 +_always saved (PBD) 564 564 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_INTRA_MEAN/VAL{{/code}} 565 565 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_MEAN{{/code}} 566 566 desc: electron bunch energy (average over the bunch train) ... ... @@ -568,7 +568,7 @@ 568 568 \\ 569 569 570 570 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/pulse resolved energy{{/code}} 571 - //always saved (PBD)//321 +_always saved (PBD) 572 572 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_SPECT/VAL.TD{{/code}} 573 573 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_SPECT{{/code}} 574 574 desc: electron bunch energy bunch resolved ... ... @@ -577,7 +577,7 @@ 577 577 \\ 578 578 579 579 {{code language="none"}}/FL1/Electron Diagnostic/Electron energy/wavelength bunch train average{{/code}} 580 - //always saved (PBD)//330 +_always saved (PBD) 581 581 DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/LAMBDA_MEAN/VAL{{/code}} 582 582 DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/LAMBDA_MEAN{{/code}} 583 583 desc: Wavelength calculated by the electron bunch energy (average over the bunch train) (FLASH1) ... ... @@ -625,7 +625,7 @@ 625 625 //always saved (PBD)// 626 626 DOOCS prop : {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP/CHARGE.TD{{/code}} 627 627 DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}} 628 -desc: The bunch pattern as function of time in a burst recorded by toroid diagnostic BEHIND the undulator. (FLASH1) 378 +desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH1) 629 629 units: 630 630 \\ 631 631 ... ... @@ -635,7 +635,7 @@ 635 635 //always saved (PBD)// 636 636 DOOCS prop : {{code language="none"}}none{{/code}} 637 637 DAQ channel: {{code language="none"}}none{{/code}} 638 -desc: Each 10 Hz burst has its unique train ID. For the HDF5 data 388 +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 !) 639 639 units: 640 640 \\ 641 641 ... ... @@ -642,7 +642,7 @@ 642 642 ===== Train time ===== 643 643 644 644 {{code language="none"}}/Timing/train time{{/code}} 645 -desc:Local time as array of day, hour, minute, second, and centisecond. This data zation purposes only. For correlations use the train ID or the Unix time of the time stamp395 +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 646 646 units: d h min s cs 647 647 \\ 648 648 ... ... @@ -658,43 +658,6 @@ 658 658 659 659 ==== Pump Probe Laser (FLASH1) ==== 660 660 661 -**PIGLET (PG laser)** 662 - 663 -**{{code language="none"}}/FL1/Experiment/Pump probe laser{{/code}}** 664 - 665 -FLASH.LASER/FLACPUPGLASER1.PULSEENERGY/DIAG1out/PULSEENERGY.MEAN 666 -FLASH.LASER/FLACPUPGLASER1.PULSEENERGY/PG1_incoupl/PULSEENERGY.MEAN 667 -FLASH.LASER/FLACPUPGLASER1.PULSEENERGY/PG2_incoupl/PULSEENERGY.MEAN 668 -FLASH.SYNC/LASER.LOCK.EXP/FLASH1.MOD1.PG.OSC/FMC0.MD22.1.ENCODER_POSITION.RD 669 -FLASH.SYNC/LASER.LOCK.EXP/FLASH1.MOD1.PG.OSC/FMC0.MD22.1.ENCODER_POSITION_RAW.RD 670 -FLASH.SYNC/LASER.LOCK.EXP/FLASH1.MOD1.PG.OSC/FMC0.MD22.1.POSITION.RD 671 - 672 -**BL - Hidra laser ** 673 - 674 -Property,Units,Description 675 -FLASH.LASER/MODBL.CAM/BL1.13.AC/DAQ_CHANNEL,'AU','FL1HIDRAPP1 Autocorrelation (IR) ROI readout' 676 -FLASH.LASER/MODBL.CAM/BL1.14.VF/DAQ_CHANNEL,'AU','FL1HIDRAPP1 Virtual Focus Camera (IR) ROI readout' 677 -FLASH.LASER/MODBL.SENSORBOARD/PDTRIG_CAMP/DAQ_CHANNEL,'au','FL1PPL Energy channels' 678 -FLASH.LASER/MODBL.SPECT/CAMP_IR/DAQ_CHANNEL,'au','FL1PPL BL Table Spectrum' 679 -FLASH.LASER/HIDRAPP1.SPECTRUM_ANALYSIS/CAMP_IR/DAQ_CHANNEL,'au','FL1PPL Spectrum Analysis' 680 -FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/FMC0.MD22.1.POSITION.RD,'ps','FL1PPL Optical Delay Line (act)' 681 -FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/FMC0.MD22.1.POSITION_SET.WR,'ps','FL1PPL Optical Delay Line (set)' 682 -FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/FMC0.MD22.1.ENCODER_POSITION.RD,'ps','FL1PPL Optical Delay Line (Encoder Readback)' 683 -FLASH.FEL/FLAPPBEAMLINES.MOTOR/CAMP_Delayline/FPOS,'ps','FL1PPL NIR delay BL1 table (act)' 684 -FLASH.FEL/FLAPPBEAMLINES.MOTOR/CAMP_Delayline/FPOS.SET,'ps','FL1PPL NIR delay BL1 table (set)' 685 -FLASH.FEL/FLAPPBEAMLINES.MOTOR/CAMP.ATT/FPOS,'degree','FL1PPL Transmission degree (act)' 686 -FLASH.FEL/FLAPPBEAMLINES.MOTOR/CAMP.ATT/FPOS.SET,'degree','FL1PPL Transmission degree (set)' 687 -FLASH.FEL/FLAPPBEAMLINES.MOTOR/Camp_Focus_Lens/FPOS,'mm','FL1PPL Focus Mirror Stage Position (act)' 688 -FLASH.FEL/FLAPPBEAMLINES.MOTOR/Camp_Focus_Lens/FPOS.SET,'mm','FL1PPL Focus Mirror Stage Position (set)' 689 -FLASH.LASER/MODBL.FEEDFWD/BL1_Att/INPUT.Y,'%','FL1PPL Transmission rate' 690 -FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/CURRENT_INPUT_JITTER.RD,'fs','FL1PPL Sync. Jitter' 691 -FLASH.SYNC/LASER.LOCK.EXP/F1.PPL.OSC/LOCK_STATUS.VALUE.RD,'au','FL1PPL Sync. Status' 692 - 693 -\\ 694 - 695 -\\ 696 - 697 -{{expand title="Parameters used until 2021"}} 698 698 {{code language="none"}}/FL1/Experiment/Pump probe laser/laser attenuation{{/code}} 699 699 700 700 //always saved (PBD)// ... ... @@ -735,8 +735,7 @@ 735 735 //always saved (PBD)// 736 736 DOOCS prop : {{code language="none"}}TTF2.FEL/TDOLFEL/TDOLFEL/STREAK.CAM.TIME{{/code}} 737 737 DOOCS prop : {{code language="none"}}TTF2.FEL/TDOLFEL/TDOLFEL/STREAK.CAM.TIME{{/code}} 738 -desc: delay time between the optical laser and the FEL units: ps 739 -{{/expand}} 451 +desc: delaytime between the optical laser and the FEL units: ps 740 740 741 741 \\ 742 742 ... ... @@ -746,15 +746,9 @@ 746 746 747 747 ==== User Data (FLASH1) ==== 748 748 749 -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. 750 - 751 -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 752 - 753 -The most common and permanently installed device used by experiment are our ADCs: 754 - 755 755 ===== GHz ADCs ===== 756 756 757 -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]]**463 +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]] 758 758 //saved on DEMAND in the user DAQ// 759 759 \\The HDF5 names for the ADC traces are depending on the beamline : 760 760 \\PG Beamline: ... ... @@ -774,15 +774,17 @@ 774 774 {{code language="none"}}/FL1/Experiment/BL3/ADQ412 GHz ADC/CH03/TD{{/code}} 775 775 776 776 DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00/CH00.TD or CH00.DAQ.TD{{/code}} 777 -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}} con tains 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.483 +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. 778 778 DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.PG/EXP1.CH00{{/code}} 779 779 780 - In addition there are also additional parameters saved like:486 +in addition there are also additional parameters saved like: 781 781 782 -* {{code language="none"}}sample frequency{{/code}}:it shows the sample frequencyinMHz(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.783 -* {{codelanguage="none"}}numberofsamples{{/code}}:total number of samples recorded for each 10 Hztrigger784 -* {{code language="none"}}error (ADC):{{/code}} 0 indicatesthat there was no error488 +* sample frequency (in MHz) 489 +* error (state) 490 +* offset 785 785 492 +~| 493 + 786 786 ===== MHz ADCs ===== 787 787 788 788 similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like: ... ... @@ -790,19 +790,10 @@ 790 790 DOOCS prop : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02/CH00.TD 791 791 DAQ channel: : FLASH.FEL/ADC.SIS.BL1/EXP1.CH02 792 792 793 - In addition there are also additional parameters saved like:501 +\\ 794 794 795 -* {{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. 796 -* {{code language="none"}}number of samples{{/code}}: total number of samples recorded for each 10 Hz trigger 797 - 798 798 [[Contents>>doc:||anchor="Contents"]] 799 799 800 -\\ 801 - 802 -\\ 803 - 804 -\\ 805 - 806 806 === FLASH2 === 807 807 808 808 There is analog to FLASH1 a permanently running "PhotonDagnostic DAQ FLASH2" (PBD2) and 2 User DAQs ... ... @@ -809,12 +809,12 @@ 809 809 810 810 ==== Beamline info (FLASH2) ==== 811 811 812 -{{code language="none"}}/FL2/Beamlines/Attenuator/pressure 813 - (% style="color: rgb(0,0,0);" %)//always saved (PBD2)//(%%)814 - (% style="color: rgb(0,0,0);" %)DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}}(%%)815 - (% style="color: rgb(0,0,0);" %)DAQ channel: {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}}(%%)816 - (% style="color: rgb(0,0,0);" %)desc: set pressure in the gas attenuator(%%)817 - (% style="color: rgb(0,0,0);" %)units: mbar(%%)511 +(% style="color: rgb(255,153,0);" %)(not yet available){{code language="none"}}/FL2/Beamlines/Attenuator/pressure {{/code}}(%%) 512 +//always saved (PBD2)// 513 +DOOCS prop : {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} 514 +DAQ channel: {{code language="none"}}FLASH.FEL/ATT.GAS_DOSING/FL2.HALL/PRESSURE{{/code}} 515 +desc: set pressure in the gas attenuator 516 +units: mbar 818 818 \\ 819 819 820 820 {{code language="none"}}/FL2/Beamlines/FL20/Shutter/open{{/code}} ... ... @@ -829,17 +829,15 @@ 829 829 //always saved (PBD2)// 830 830 DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS{{/code}} 831 831 DAQ channel: FLASH.FEL/FL20H.PH.MOTOR/MOTOR1.MOT3/FPOS 832 -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.Filtersin FLASH1and FLASH2.WebHome]]**531 +desc: Position of the BL filter wheel 1 - to correlate with the filter material please look [[here>>doc:FLASH.Filter history (BL filterwheel 12)]] 833 833 units: degree 834 834 \\ 835 835 836 -/FL2/Beamlines/Filter wheel/position wheel 2 837 -always saved (PBD2) 838 -DOOCS prop : {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS{{/code}} 839 -DAQ channel: {{code language="none"}}FLASH.FEL/FL20H.PH.MOTOR/MOTOR2.MOT3/FPOS{{/code}} 840 -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]] 841 -units: degree 842 842 536 +//always saved (PBD2)// 537 +\\\\[[here>>doc:FLASH.Filter history (BL filterwheel 12)]] 538 +{{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}} 539 + 843 843 \\ 844 844 845 845 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 ... ... @@ -861,37 +861,40 @@ 861 861 862 862 \\ 863 863 561 +(% style="color: rgb(255,204,0);" %)average Sigma to be included in 562 + 563 +(% style="color: rgb(193,199,208);" %){{code language="none"}}/FL2/Photon Diagnostic/GMD/Average energy/energy tunnel uncertainty{{/code}} (%%) 564 +(% style="color: rgb(193,199,208);" %)//always saved (PBD2)// (%%) 565 +(% style="color: rgb(193,199,208);" %)DOOCS prop : FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ.SIGMA (%%) 566 +(% style="color: rgb(193,199,208);" %)DAQ channel: FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ.SIGMA (%%) 567 +(% style="color: rgb(193,199,208);" %)desc : This parameter gives an indication of the error of the measurement of the average pulse energy. This takes signal to noise, detector resolution, uncertainties in crossection etc into account. (it is NOT the measurement of the statistical fluctuation of the SASE pulses)(%%) 568 +(% style="color: rgb(193,199,208);" %)units : microJ 569 + 570 +\\ 571 + 572 +\\ 573 + 864 864 {{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel{{/code}} 865 865 //always saved (PBD2)// 866 866 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}} 867 867 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.TD{{/code}} 868 -desc : Energy per pulse measured in the Tunnel (in fro nt 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)869 -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]]**578 +desc : Energy per pulse measured in the Tunnel (in fromt of the gas attenuator and the apertures in the Hall) 579 +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]] 870 870 871 -{{info title="GMD pulse resolved data structure"}} 872 -For every pulse in the pulse train the information is saved: 873 - 581 +\\ 874 874 875 -1. **Intensity per pulse** (a.u. (more or less µJ )) 876 -1. Intensity per pulse (auxillary GMD) - not used 877 -1. Position horizontal (mm, for a single pulse the position information may be very noisy - talk to your local contact) 878 -1. Position vertical (mm, for a single pulse the position information may be very noisy - talk to your local contact) 879 -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)(%%)) 880 -1. Position horizontal sigma (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise) 881 -1. Position vertical sigma (mm, indicates the error (RMS, sigma) of the measurement according to known uncertainties and signal to noise) 882 -1. Combined warning and error flags 583 +\\ 883 883 884 -The pulse energy and the error are plotted for the first bunch of the pulse trains saved in this 885 -file 585 +{{code language="none"}}/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel uncertainty (sigma){{/code}} 586 +//always saved (PBD2)// 587 +DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL/INTENSITY.SIGMA.TD{{/code}} 588 +DAQ channel: {{code language="none"}}FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL:4{{/code}} 589 +desc :(% style="color: rgb(0,0,0);" %)This parameter gives an indication of the error of the measurement of the pulse energy. This takes signal to noise, detector resolution, uncertainties in crossection etc into account. (it is NOT the measurement of the statistical fluctuation of the SASE pulses)(%%) 590 +units : a.u. (more or less µJ - related to the value of the pulse energy ) 886 886 887 - 888 -[[image:attach:image2021-2-9_10-51-6.png||height="250"]] 889 889 890 -\\ 891 -{{/info}} 593 +{{code language="none"}}{{/code}} 892 892 893 -\\ 894 - 895 895 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 ! 896 896 897 897 \\ ... ... @@ -904,7 +904,7 @@ 904 904 //always saved (PBD2)// 905 905 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}} 906 906 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS{{/code}} 907 -desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal) 607 +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) 908 908 units : mm 909 909 910 910 \\ ... ... @@ -913,20 +913,20 @@ 913 913 //always saved (PBD2)// 914 914 DOOCS prop : {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}} 915 915 DAQ channel: {{code language="none"}}FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS{{/code}} 916 -desc : the Average ( ~~ 20 sec averaging time ) Beam position of the photon Beam determined by the GMD (tunnel, x=horizontal) 616 +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) 917 917 units : mm 918 918 919 919 \\ 920 920 921 -/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel x 922 -always saved (PBD2) 923 -DOOCS prop : FLASH.FEL/XGM.BPM/FL2.HALL/X.TD 924 -DAQ channel: FLASH.FEL/XGM.BPM/FL2.HALL:2 925 -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 ...) 926 -units : mm 621 +\\ 927 927 928 -(x=horizontal, y = vertial) 929 929 624 +//always saved (PBD2)// 625 +\\\\{{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 626 +{{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}} 627 + 628 +{{code language="none"}}(x=horizontal, y = vertial){{/code}} 629 + 930 930 again the same parameter set is available for the **HALL GMD** 931 931 932 932 \\ ... ... @@ -933,9 +933,9 @@ 933 933 934 934 \\ 935 935 936 -==== Photon Diagnostics OPIS[[ 636 +==== Photon Diagnostics OPIS[[ >>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]](FLASH2) ==== 937 937 938 -for more info see: **[[ OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]]**638 +for more info see: [[ OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]] 939 939 940 940 (The OPIS hall is not installed yet ...) 941 941 ... ... @@ -954,7 +954,7 @@ 954 954 // saved opon request (PBD2)// 955 955 DOOCS prop : {{code language="none"}}FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}} 956 956 DAQ channel:{{code language="none"}} FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040{{/code}} 957 -desc : mean 657 +desc : meanwavelength ( ~~ 1 sec averaging time ) measured in the TUNNEL for a specific bunch out of the bunch train (via photoelectron spectroscopy) 958 958 units : nm 959 959 960 960 \\ ... ... @@ -968,216 +968,121 @@ 968 968 969 969 \\ 970 970 971 -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 sav ing 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"]])671 +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 savng the compleate 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"]] ( respobsible for [[OPIS>>url:http://photon-science.desy.de/facilities/flash/photon_diagnostics/opis_spectrometer/index_eng.html||shape="rect"]]) 972 972 973 973 \\ 974 974 975 -In case OPIS was not operating there is still informat ion 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 ...675 +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 ... 976 976 977 977 \\ 978 978 979 979 \\ 980 980 681 +\\ 682 + 981 981 ==== Electron Beam properties (FLASH2) ==== 982 982 983 983 ===== bunch charge ===== 984 984 985 985 {{code language="none"}}/FL2/Electron Diagnostic/Bunch charge/after undulator{{/code}} 986 -//always saved (PBD 2)//688 +//always saved (PBD)// 987 987 DOOCS prop : {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}} 988 988 DAQ channel: {{code language="none"}}FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2{{/code}} 989 -desc: electron bunch charge FLASH2 (average value for each bunchtrain).691 +desc: electron bunch charge (FLASH2) 990 990 units: nC 991 991 992 992 \\ 993 993 994 -===== electron bunch energy ===== 995 - 996 -{{code language="none"}}/FL2/Electron Diagnostic/Electron energy/energy of first bunch/behind undulators{{/code}} 997 -//always saved (PBD2)// 998 -DOOCS prop : {{code language="none"}}FLASH.DIAG/BEAM_ENERGY_MEASUREMENT/FL2XTDS/ENERGY.FLASH2{{/code}} 999 -DAQ channel: (% style="color: rgb(94,108,132);" %)TTF2.DAQ/PBD2.BEAM.ENERGY.MEAS.ML.COPY/FL2XTDS.ENERGY.FLASH2{{code language="none"}}{{/code}}(%%) 1000 -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 1001 - 1002 -(% style="letter-spacing: 0.0px;" %)units: (% class="twikiNewLink" %)MeV 1003 - 1004 1004 \\ 1005 1005 1006 -(% style="color: rgb(94,108,132);font-weight: 600;letter-spacing: 0.0px;" %) 1007 -undulator settings 698 +(% class="wrapped" %) 699 +|((( 700 +FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP 701 +)))|((( 702 +/FL2/Electron Diagnostic/Undulator setting/SASE14 gap 703 +))) 704 +|((( 705 +TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH 706 +)))|((( 707 +/FL2/Electron Diagnostic/Undulator setting/set wavelength 708 +))) 1008 1008 1009 -{{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/set wavelength{{/code}} 1010 -//always saved (PBD2)// 1011 -DOOCS prop : {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}} 1012 -DAQ channel: {{code language="none"}}TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH{{/code}} 1013 -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 % ... 1014 -units: nm 1015 - 1016 -{{code language="none"}}/FL2/Electron Diagnostic/Undulator setting/SASE14 gap{{/code}} 1017 -//always saved (PBD2)// 1018 -DOOCS prop : {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}} 1019 -DAQ channel: {{code language="none"}}FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP{{/code}} 1020 -desc: gap value of the undulators. This can be used to follow up how many undulators were closed and if there was a taper 1021 -units: mm 1022 - 1023 -The gap values are saved for all 12 undulators (Nr 3 to 14). Undulator 14 is the one closest to the experimental hall. 1024 - 1025 1025 ===== 1026 -arrival time (BAM)=====711 +arrival time ===== 1027 1027 1028 -{{info title="BAM information: updates 2022"}} 1029 -* 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"]] 1030 -* The data format of the BAM has been completely altered in the 2022 shutdown 1031 -* 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 ... 1032 -* 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) 1033 -* There has been also a renaming (and relocation) of the BAMs. 1034 -** acc: 4DBC3 → FL0.DBC2 1035 -** FL1: 1SFELC → FL1.SFELC 1036 -** FL2: 8FL2XTDS → (% style="color: rgb(23,43,77);" %)FL2.SEED5 1037 -* for more Info: [[LINK to detailed infos from MSK>>url:https://confluence.desy.de/display/SDiagPublic/BAM+Data+Structure||shape="rect"]] 1038 -* [[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]] 1039 -* a recent [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]] 1040 -{{/info}} 1041 - 1042 -\\ 1043 - 1044 -{{expand title="Discontinued BAM format (used until end 2021)"}} 1045 -(% style="color: rgb(0,0,0);" %)**Discontinued BAM data recording ** 1046 - 1047 -{{code language="none"}}/FL2/Electron Diagnostic/BAM/8FL2XTDS/electron bunch arrival time (low charge){{/code}} 1048 -//always saved (PBD2)// 1049 -DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/8FL2XTDS/LOW_CHARGE_ARRIVAL_TIME{{/code}} 1050 -DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/8FL2XTDS.LOW_CHARGE_ARRIVAL_TIME{{/code}} 1051 -desc: Electron bunch arrival time measured with the BAM after the FLASH2 undulator (pulse resolved data) 1052 -units: ps (bigger numbers indicate later arrivaltime of the electrons) 1053 - 1054 -**FL1**{{code language="none"}}//Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}} 1055 -//always saved (PBD2)// 713 +{{code language="none"}}/FL1/Electron Diagnostic/BAM/4DBC3/electron bunch arrival time (low charge){{/code}} 714 +//always saved (PBD)// 1056 1056 DOOCS prop : {{code language="none"}}FLASH.SDIAG/BAM/4DBC3/LOW_CHARGE_ARRIVAL_TIME{{/code}} 1057 1057 DAQ channel: {{code language="none"}}FLASH.SDIAG/BAM.DAQ/4DBC3.LOW_CHARGE_ARRIVAL_TIME{{/code}} 1058 -desc: Electron bunch arrival time measured with the BAM in the accelerator (pulse resolved data) 1059 -units: ps (bigger numbers indicate later arrivaltime of the electrons) 717 +desc: Electron bunch arrival time measured with the BAM (more or less) before the undulator (pulse resolved data) 718 +units: ps (bigger numbers indicate later arrivaltime of the electrons) 719 +note: besides the arivaltime from FLASH1 there is also the FLASH2/3 electron arrival time saved. [[LINK to detailled infos from MSK (may only work inside DESY network~[~[image:url:http://hasfweb.desy.de/pub/TWiki/TWikiDocGraphics/external-link.gif~|~|width="13" height="12"~]~]>>url:http://www.desy.de/~~mbock/pages/BAM_daq_channel_descriptions.html||shape="rect"]] and to a recent [[talk about the working principle of the BAM>>url:https://confluence.desy.de/download/attachments/134216957/BAM-basics_and_outlook-2018_DESY-template_16-9Format.pdf?version=1&modificationDate=1565162143328&api=v2||shape="rect"]] 1060 1060 1061 1061 \\ 1062 1062 1063 -{{info title="BAM hints"}} 1064 -* The BAM 4DBC3 measures the arrivaltime of** FLASH 1 and FLASH2** in the same data set (thus also sorted in at /FL1/ !). 1065 -* 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 1066 -** 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 1067 -* [[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]] 1068 -* [[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"]] 1069 -* a recent [[talk about the working principle of the BAM>>attach:BAM-basics and outlook-2018_DESY-template_16-9Format.pdf]] 1070 -{{/info}} 1071 -{{/expand}} 1072 - 1073 1073 \\ 1074 1074 1075 -====== **BAM FL0.DBC2**{{code language="none"}}{{/code}} ====== 1076 - 1077 -(% style="color: rgb(255,102,0);" %)**DBC2**/electron bunch arrival time (HDF5 name not yet implemented - see zraw)(%%) 1078 -//always saved (PBD)// 1079 -**FL0.DBC2** 1080 -(% style="color: rgb(0,0,0);" %)channel: FLASH.SDIAG/BAM/**FL0.DBC2**/ARRIVAL_TIME.ABSOLUTE.SA2.COMP 1081 -{{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). 1082 -units: fs (bigger numbers (typically) indicate later arrival times of the electrons). 1083 - 1084 1084 \\ 1085 1085 1086 -(% 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}}(%%) 1087 -//always saved (PBD)// 1088 -{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE{{/code}} 1089 -(% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.ABSOLUTE {{code language="none"}}DAQ channel: {{/code}}(%%) 1090 -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). 1091 -units: fs (bigger numbers (typically) indicate later arrival times of the electrons). 727 +===== electron bunch energy ===== 1092 1092 729 +{{code language="none"}}/FL1/Electron Diagnostic/Electron energy/average electron energy{{/code}} 730 +_always saved (PBD) 731 +DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_INTRA_MEAN/VAL{{/code}} 732 +DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_MEAN{{/code}} 733 +desc: electron bunch energy (average over the bunch train) 734 +units: (% class="twikiNewLink" %)MeV(%%) 1093 1093 \\ 1094 1094 1095 -(% style="color: rgb(255,102,0);" %)DBC2/error (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}(%%) 1096 -//always saved (PBD)// 1097 -(% style="color: rgb(0,0,0);" %)E.bamError{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM{{/code}}(%%) 1098 -(% style="color: rgb(0,0,0);" %)FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMERROR{{code language="none"}}DAQ channel: {{/code}}(%%) 1099 -desc: If the value is 0 , the BAM is working well. If it is non-zero there is a problem !! 737 +{{code language="none"}}/FL1/Electron Diagnostic/Electron energy/pulse resolved energy{{/code}} 738 +_always saved (PBD) 739 +DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/E_SPECT/VAL.TD{{/code}} 740 +DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/E_SPECT{{/code}} 741 +desc: electron bunch energy bunch resolved 742 +units: (% class="twikiNewLink" %)MeV 1100 1100 1101 1101 \\ 1102 1102 1103 - (% style="color: rgb(255,102,0);" %)DBC2/status (HDF5 name not yet implemented - see zraw){{code language="none"}}/FL2/Electron Diagnostic/BAM/{{/code}}(%%)1104 - //always saved (PBD)//1105 - (%style="color:rgb(0,0,0);" %)E..bamStatus.//2//{{code language="none"}}DOOCS prop :FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIM{{/code}}(%%)1106 - (%style="color:rgb(0,0,0);" %): FLASH.SDIAG/BAM/FL0.DBC2/ARRIVAL_TIME.BAMSTATUS.2{{code language="none"}}DAQ channel{{/code}}(%%)1107 -desc: status bit: 0 - data isvalid; 1 - beam present;2 -calibrationongoing;3- feedbackenabled;4 - feedback acting;mostlycheckforbit0 ==1is sufficient1108 - 746 +{{code language="none"}}/FL1/Electron Diagnostic/Electron energy/wavelength bunch train average{{/code}} 747 +_always saved (PBD) 748 +DOOCS prop : {{code language="none"}}TTF2.DAQ/ENERGY.DOGLEG/LAMBDA_MEAN/VAL{{/code}} 749 +DAQ channel: {{code language="none"}}PBD.ENERGY.DOGLEG/LAMBDA_MEAN{{/code}} 750 +desc: Wavelength calculated by the electron bunch energy (average over the bunch train) (FLASH1) 751 +units: nm 1109 1109 \\ 1110 1110 1111 - ====== **BAM FL2.SEED5**{{codelanguage="none"}}{{/code}} ======754 +[[Contents>>doc:||anchor="Contents"]] 1112 1112 1113 -/FL2/Electron Diagnostic/BAM/**SEED5**(% style="color: rgb(255,102,0);" %)/electron bunch arrival time (HDF5 name not yet implemented - see zraw) 1114 - 1115 -//always saved (PBD)// 1116 -(% style="color: rgb(23,43,77);" %)**FL2.SEED5**(%%) 1117 -(% 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 1118 -{{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). 1119 -units: fs (bigger numbers (typically) indicate later arrival times of the electrons). 1120 - 1121 1121 \\ 1122 1122 1123 - \\758 +==== Timing information, rep rate etc. (FLASH1) ==== 1124 1124 1125 -(% 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}}(%%) 1126 -//always saved (PBD)// 1127 -(% style="color: rgb(23,43,77);" %)**FL2.SEED5**{{code language="none"}}DOOCS prop : FLASH.SDIAG/BAM//ARRIVAL_TIME.ABSOLUTE{{/code}}(%%) 1128 -**~ **(% 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}}(%%) 1129 -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). 1130 -units: fs (bigger numbers (typically) indicate later arrival times of the electrons). 760 +===== bunch repetition rate ===== 1131 1131 1132 -\\ 1133 - 1134 -(% 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}}(%%) 762 +{{code language="none"}}/FL1/Timing/repetition rate{{/code}} 1135 1135 //always saved (PBD)// 1136 - (% 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}}(%%)1137 - (% 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"}}DAQchannel{{/code}}(%%)1138 -desc: If thevalueis0, theBAM is working well. If itsnon-zerothereisa problem !!1139 - 764 +DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.1{{/code}} 765 +DAQ channel: {{code language="none"}}TTF2.UTIL/LASER.CONTROL/GUN/PULSE_FREQ{{/code}} 766 +desc: repetition rate of the bunches / pulses within the burst (FLASH1) 767 +units: kHz 1140 1140 \\ 1141 1141 1142 -(% 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}}(%%) 770 +===== set number of pulses ===== 771 + 772 +{{code language="none"}}/FL1/Timing/set number of bunches{{/code}} 1143 1143 //always saved (PBD)// 1144 -(% 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}}(%%) 1145 -(% 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}}(%%) 1146 -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 774 +DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH1{{/code}} 775 +DAQ channel: {{code language="none"}}TTF2.UTIL/LASER.CONTROL/GUN/PULSE_NUM{{/code}} 776 +desc: Number of pulses set at the gun (FLASH1) 777 +units: 1147 1147 1148 -\\ 1149 - 1150 -[[Contents>>doc:||anchor="Contents"]] 1151 - 1152 -\\ 1153 - 1154 -==== Timing information, rep rate etc. (FLASH2) ==== 1155 - 1156 -===== start time of FLASH2 ===== 1157 - 1158 -{{code language="none"}}/FL2/Timing/start time flash2{{/code}} 1159 -//always saved (PBD2)// 1160 -DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}} 1161 -DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/BUNCH_POSITION.2{{/code}} 1162 -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 ...) 1163 -units: µs 1164 - 1165 -===== bunch repetition rate ===== 1166 - 1167 -{{code language="none"}}/FL2/Timing/repetition rate{{/code}} 1168 -//always saved (PBD2)// 1169 -DOOCS prop : {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}} 1170 -DAQ channel: {{code language="none"}}FLASH.DIAG/TIMER/FLASHCPUTIME1.0/REP_RATE_KHZ.2{{/code}} 1171 -desc: repetition rate of the bunches / pulses within the burst (FLASH2) 1172 -units: kHz 1173 - 1174 1174 ===== actual number of pulses ===== 1175 1175 1176 1176 {{code language="none"}}/FL1/Timing/actual number of bunches{{/code}} 1177 -//always saved (PBD 2)//1178 -DOOCS prop : {{code language="none"}}FLASH.DIAG/ PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}1179 -DAQ channel: {{code language="none"}}F LASH.DIAG/PBD2.TOROID.ML/3GUN/NUMBEROFBUNCHES.FLASH2{{/code}}1180 -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, (FLASH 2)782 +//always saved (PBD)// 783 +DOOCS prop : {{code language="none"}}FLASH.DIAG/TOROID.ML/12EXP/NUMBEROFBUNCHES.FLASH1{{/code}} 784 +DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}} 785 +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) 1181 1181 units: 1182 1182 \\ 1183 1183 ... ... @@ -1184,10 +1184,10 @@ 1184 1184 ===== actual pulse pattern recorded after the undulator ===== 1185 1185 1186 1186 {{code language="none"}}/FL1/Timing/Bunch pattern/pattern after undulator{{/code}} 1187 -//always saved (PBD 2)//1188 -DOOCS prop : {{code language="none"}}F LASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}1189 -DAQ channel: {{code language="none"}}F LASH.DIAG/PBD2.TOROID.ML/9FL2BURN.PULSEPATTERN{{/code}}1190 -desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH 2)792 +//always saved (PBD)// 793 +DOOCS prop : {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP/CHARGE.TD{{/code}} 794 +DAQ channel: {{code language="none"}}TTF2.DIAG/PBD.TOROID.ML/12EXP{{/code}} 795 +desc: The bunch pattern as function of time in a burst recorded by toroide diagnostic BEHIND the undulator. (FLASH1) 1191 1191 units: 1192 1192 \\ 1193 1193 ... ... @@ -1194,7 +1194,7 @@ 1194 1194 ===== Train ID ===== 1195 1195 1196 1196 {{code language="none"}}/Timing/train ID{{/code}} 1197 -//always saved (PBD 2)//802 +//always saved (PBD)// 1198 1198 DOOCS prop : {{code language="none"}}none{{/code}} 1199 1199 DAQ channel: {{code language="none"}}none{{/code}} 1200 1200 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,16 +1203,13 @@ 1203 1203 1204 1204 ===== Train time ===== 1205 1205 1206 -//always saved (PBD2) 1207 -//{{code language="none"}}/Timing/train time{{/code}} 811 +{{code language="none"}}/Timing/train time{{/code}} 1208 1208 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 1209 1209 units: d h min s cs 1210 1210 \\ 1211 1211 1212 -{{code language="none"}}/Timing/time stamp{{/code}} 1213 - 1214 -//always saved (PBD2)// 1215 -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 816 +{{code language="none"}}/Timing/time stamp{{/code}} 817 +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 1216 1216 second column: microseconds 1217 1217 third column: Train ID of FLASH 1218 1218 \\ ... ... @@ -1221,176 +1221,209 @@ 1221 1221 1222 1222 \\ 1223 1223 1224 -==== User Data (FLASH2) ==== 1225 - 1226 -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. 1227 - 1228 -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 1229 - 1230 -The most common and permanently installed device used by experiment are our ADCs: 1231 - 1232 -===== GHz ADCs ===== 1233 - 1234 -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]]** 1235 -//saved on DEMAND in the user DAQ// 1236 -\\Up to now there are 4 channels available at FL24 1237 -\\\\{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD{{/code}} 1238 -{{code language="none"}}/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH01/TD{{/code}} 1239 -\\{{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}} 1240 - 1241 1241 \\ 1242 1242 1243 -DOOCS prop : {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00/CH00.TD or CH00.DAQ.TD{{/code}} 1244 -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. 1245 -DAQ channel: {{code language="none"}}FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00{{/code}} 1246 - 1247 -In addition there are also additional parameters saved like: 1248 - 1249 -* {{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. 1250 -* {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger 1251 -* {{code language="none"}}error (ADC):{{/code}} 0 indicates that there was no error 1252 -* {{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. 1253 - 1254 -===== MHz ADCs ===== 1255 - 1256 -similar to the GHz ADCs the MHz ADCs are saved with HDF5 names like: 1257 -{{code language="none"}}/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH2/TD{{/code}} 1258 -DOOCS prop : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02/CH00.TD 1259 -DAQ channel: : FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH02 1260 - 1261 -In addition there are also additional parameters saved like: 1262 - 1263 -* {{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. 1264 -* {{code language="none"}}number of samples{{/code}}: total number of samoles recorded for each 10 Hz trigger 1265 - 1266 -[[Contents>>doc:||anchor="Contents"]] 1267 - 1268 1268 \\ 1269 1269 1270 1270 \\ 1271 1271 1272 -==== Pump Probe Laser (FLASH2) ==== 1273 - 1274 -There may be more information available from the "Laser DAQ". laese contact your Laser Local Contact. 1275 - 1276 1276 \\ 1277 1277 1278 -**User delay** 1279 - 1280 -Delay (set value): 1281 - 1282 -{{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION_SET.WR{{/code}} 1283 - 1284 -Delay (encoder readback): 1285 - 1286 -{{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/FMC0.MD22.0.POSITION.RD{{/code}} 1287 - 1288 -OXC. jitter: 1289 - 1290 -{{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/F2.PPL.OSC/CURRENT_INPUT_JITTER.RD{{/code}} 1291 - 1292 1292 \\ 1293 1293 1294 -**Pulse resolved energy:** 1295 - 1296 -1a) OPCPA output: 1297 - 1298 -{{code language="none"}}FLASH.LASER/TAMC532DMA/ULGAN1/CH23.TD{{/code}} 1299 - 1300 -1b) OPCPA energy from PES (only fast channel): 1301 - 1302 -FLASH.LASER/CPUULGAN1.PULSEENERGY/OPCPA_Output/DAQ_CHANNEL 1303 - 1304 -2a) Upper breadboard Photodiode (THG) burst: 1305 - 1306 -{{code language="none"}}FLASH.LASER/TAMC532DMA/ULGAN1/CH26.TD{{/code}} 1307 - 1308 -2b) Upper breadboard Photodiode (THG) energy (in-coupling user photodiode, fast) 1309 - 1310 -{{code language="none"}}FLASH.LASER/MOD24.PES/FL24_userPD/DAQ_CHANNEL{{/code}} 1311 - 1312 1312 \\ 1313 1313 1314 -**Attenuator angle:** 838 +(% class="wrapped" %) 839 +|=((( 840 +DAQ name 841 +)))|=((( 842 +HDF5 name 843 +))) 844 +|((( 845 +FLASH.UTIL/FL2.UND.MOTOR/FL2SASE3/GAP 846 +)))|((( 847 +/FL2/Electron Diagnostic/Undulator setting/SASE03 gap 848 +))) 849 +|((( 850 +FLASH.UTIL/FL2.UND.MOTOR/FL2SASE14/GAP 851 +)))|((( 852 +/FL2/Electron Diagnostic/Undulator setting/SASE14 gap 853 +))) 854 +|((( 855 +TTF2.FEEDBACK/FL2.WAVELENGTHCONTROL/FLASH2/WAVELENGTH 856 +)))|((( 857 +/FL2/Electron Diagnostic/Undulator setting/set wavelength 858 +))) 859 +|((( 860 +FLASH.FEL/XGM.PHOTONFLUX/FL2.HALL/PHOTONFLUX.UJ 861 +)))|((( 862 +/FL2/Photon Diagnostic/GMD/Average energy/hall 863 +))) 864 +|((( 865 +FLASH.FEL/XGM.PHOTONFLUX/FL2.HALL/PHOTONFLUX 866 +)))|((( 867 +/FL2/Photon Diagnostic/GMD/Average energy/hall (raw) 868 +))) 869 +|((( 870 +FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX.UJ 871 +)))|((( 872 +/FL2/Photon Diagnostic/GMD/Average energy/tunnel 873 +))) 874 +|((( 875 +FLASH.FEL/XGM.PHOTONFLUX/FL2.TUNNEL/PHOTONFLUX 876 +)))|((( 877 +/FL2/Photon Diagnostic/GMD/Average energy/tunnel (raw) 878 +))) 879 +|((( 880 +FLASH.FEL/XGM.POSMON/FL2.HALL/IX.POS 881 +)))|((( 882 +/FL2/Photon Diagnostic/GMD/Average beam position/position hall horizontal 883 +))) 884 +|((( 885 +FLASH.FEL/XGM.POSMON/FL2.HALL/IY.POS 886 +)))|((( 887 +/FL2/Photon Diagnostic/GMD/Average beam position/position hall vertical 888 +))) 889 +|((( 890 +FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IX.POS 891 +)))|((( 892 +/FL2/Photon Diagnostic/GMD/Average beam position/position tunnel horizontal 893 +))) 894 +|((( 895 +FLASH.FEL/XGM.POSMON/FL2.TUNNEL/IY.POS 896 +)))|((( 897 +/FL2/Photon Diagnostic/GMD/Average beam position/position tunnel vertical 898 +))) 899 +|((( 900 +FLASH.FEL/XGM.BPM/FL2.HALL:0 901 +)))|((( 902 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall horizontal 903 +))) 904 +|((( 905 +FLASH.FEL/XGM.BPM/FL2.HALL:1 906 +)))|((( 907 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position hall vertical 908 +))) 909 +|((( 910 +FLASH.FEL/XGM.BPM/FL2.TUNNEL:0 911 +)))|((( 912 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel horizontal 913 +))) 914 +|((( 915 +FLASH.FEL/XGM.BPM/FL2.TUNNEL:1 916 +)))|((( 917 +/FL2/Photon Diagnostic/GMD/Pulse resolved beam position/position tunnel vertical 918 +))) 919 +|((( 920 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL:1 921 +)))|((( 922 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy aux tunnel 923 +))) 924 +|((( 925 +FLASH.FEL/XGM.INTENSITY/FL2.HALL 926 +)))|((( 927 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy hall 928 +))) 929 +|((( 930 +FLASH.FEL/XGM.INTENSITY/FL2.HALL:0 931 +)))|((( 932 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy hall 933 +))) 934 +|((( 935 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL 936 +)))|((( 937 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel 938 +))) 939 +|((( 940 +FLASH.FEL/XGM.INTENSITY/FL2.TUNNEL:0 941 +)))|((( 942 +/FL2/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel 943 +))) 944 +|((( 945 +FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL042 946 +)))|((( 947 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean phtoton energy 948 +))) 949 +|((( 950 +FLASH.UTIL/STORE/FL2.TUNNEL.OPIS/VAL040 951 +)))|((( 952 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Processed/mean wavelengt 953 +))) 954 +|((( 955 +FLASH.FEL/ADC.ADQ/OPIS1.CH02 956 +)))|((( 957 +/FL2/Photon Diagnostic/Wavelength/OPIS tunnel/Raw data/CH02 958 +))) 959 +|((( 960 +FLASH.DIAG/PBD2.TOROID.ML/9FL2BURN/CHARGE.FLASH2 961 +)))|((( 962 +/FL2/Electron Diagnostic/Bunch charge/after undulator 963 +))) 964 +|((( 965 +FLASH.DIAG/PBD2.TOROID.ML/3GUN/CHARGE.FLASH2 966 +)))|((( 967 +/FL2/Electron Diagnostic/Bunch charge/at gun 968 +))) 969 +|((( 970 +FLASH.FEL/FL20T.PH.MOTOR/MOTOR1.MOT1/FPOS 971 +)))|((( 972 +/FL2/Beamlines/Tunnel Apertures/position aperture1 horizontal 973 +))) 974 +|((( 975 +FLASH.FEL/FL20T.PH.MOTOR/MOTOR2.MOT1/FPOS 976 +)))|((( 977 +/FL2/Beamlines/Tunnel Apertures/position aperture1 vertical 978 +))) 979 +|((( 980 +FLASH.FEL/ADC.SIS.FL2FS/FL20.SHUTTER 981 +)))|((( 982 +/FL2/Beamlines/FL20/Shutter/channel 0 983 +))) 984 +|((( 985 +FLASH.FEL/ADC.ADQ.FL2EXP1/FL2EXP1.CH00 986 +)))|((( 987 +/FL2/Experiment/MTCA-EXP1/ADQ412 GHz ADC/CH00/TD 988 +))) 989 +|((( 990 +FLASH.FEL/ADC.SIS.FL2EXP1/FL2EXP1.CH00 991 +)))|((( 992 +/FL2/Experiment/MTCA-EXP1/SIS8300 100MHz ADC/CH0/TD 993 +))) 994 +|((( 995 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD 996 +)))|((( 997 +/FL2/Experiment/Pump probe laser/Synchronization/timing jitter RMS 998 +))) 999 +|((( 1000 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/LOCK_STATUS.VALUE.RD 1001 +)))|((( 1002 +/FL2/Experiment/Pump probe laser/Synchronization/timing jitter RMS GECCO 1003 +))) 1004 +|((( 1005 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD 1006 +)))|((( 1007 +/FL2/Experiment/Pump probe laser/laser delay readback 1008 +))) 1009 +|((( 1010 +FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION_SET.WR 1011 +)))|((( 1012 +/FL2/Experiment/Pump probe laser/laser delay set value 1013 +))) 1014 +|((( 1015 +FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS 1016 +)))|((( 1017 +/FL2/Experiment/Pump probe laser/FL24/attenuator position 1018 +))) 1019 +|((( 1020 +FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/POS 1021 +)))|((( 1022 +/FL2/Experiment/Pump probe laser/FL24/polarization position 1023 +))) 1315 1315 1316 -{{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}} 1317 - 1318 -**Polarization control:** 1319 - 1320 -{{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR14.FL24/FPOS{{/code}} 1321 - 1322 -**SysDC delay error:** 1323 - 1324 -{{code language="none"}}FLASH.LASER/ULGAN1.DYNPROP/TCFIBER.DOUBLES/DOUBLE26{{/code}} 1325 - 1326 1326 \\ 1327 1327 1328 -**Timing error: (these two need to be observed and both=0 means no error)** 1329 - 1330 -{{code language="none"}}FLASH/CPUULGAN1.TIMING/ULGAN1/dT_alarm{{/code}} 1331 - 1332 -{{code language="none"}}FLASH/CPUULGAN1.TIMING/ULGAN1/dMPN{{/code}} 1333 - 1334 -**Laser error status:** 1335 - 1336 -\\ 1337 - 1338 -**Virtual camera X and Y history, beam size: (use slow data)** 1339 - 1340 -{{code language="none"}}FLASH.LASER/MOD24.BEAMPOS/UV.VF_BP/CENTER.X{{/code}} 1341 - 1342 -{{code language="none"}}FLASH.LASER/MOD24.BEAMPOS/UV.VF_BP/CENTER.Y{{/code}} 1343 - 1344 -{{code language="none"}}FLASH.LASER/MOD24.CAM/UV.14.VF/ROI_SPECTRUM.X.SIG{{/code}} 1345 - 1346 -\\ 1347 - 1348 -{{expand title="Parameters used until 2021"}} 1349 - 1350 -{{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/attenuator position{{/code}}//always saved (PBD2)// 1351 -DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}} 1352 -DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR1.FL24/FPOS{{/code}} 1353 -desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate) 1354 -units : deg. 1355 - 1356 -\\ 1357 - 1358 - 1359 -{{code language="none"}}/FL2/Experiment/Pump probe laser/FL24/polarization position{{/code}}//always saved (PBD2)// 1360 -DOOCS prop : {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}} 1361 -DAQ channel: {{code language="none"}}FLASH.FEL/FLAPP2BEAMLINES/MOTOR2.FL24/FPOS{{/code}} 1362 -desc: attenuation of the PPLaser in the FL24 hutch (rotation of a waveplate) 1363 -units : deg. 1364 - 1365 -\\ 1366 - 1367 -{{code language="none"}}/FL1/Experiment/Pump probe laser/laser delay readback{{/code}} 1368 -//always saved (PBD2)// 1369 -DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}} 1370 -DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/FMC0.MD22.0.POSITION.RD{{/code}} 1371 -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) 1372 -units : ps ) 1373 - 1374 -\\ 1375 - 1376 -{{code language="none"}}/FL1/Experiment/Pump probe laser/Synchronization/timing jitter RMS{{/code}} 1377 -//always saved (PBD)// 1378 -DOOCS prop : {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}} 1379 -DAQ channel: {{code language="none"}}FLASH.SYNC/LASER.LOCK.EXP/FLASH2.PPL1.OSC1/CURRENT_INPUT_JITTER.RD{{/code}} 1380 -desc: rms jitter of the fs-Oscillator 1381 -units: fs 1382 -{{/expand}} 1383 - 1384 1384 [[Contents>>doc:||anchor="Contents"]] 1385 1385 1386 -\\ 1387 - 1388 -=== "/uncategorized/" === 1389 - 1390 - 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 1391 - 1392 -\\ 1393 - 1394 1394 === HDF5 structure revisions === 1395 1395 1396 1396 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: ... ... @@ -1505,6 +1505,72 @@ 1505 1505 [[Contents>>doc:||anchor="Contents"]] 1506 1506 1507 1507 \\ 1508 -{{/layout-cell}} 1509 -{{/layout-section}} 1510 -{{/layout}} 1143 + 1144 +== Example code showing how to access HDF5 files == 1145 + 1146 +\\ 1147 + 1148 +=== Samples how to read HDF5 with Matlab === 1149 + 1150 +The examples apply to HDF files with HDF tree version before vers. 0.3.0. 1151 + 1152 +(% style="color: rgb(0,128,0);" %)%% read in the needed data p=path; path(p,'D:\mess-daten\DAQ-data\hdf5\Gotthard') % add the actual folder to the path hdf5file='FLASH1_EXP-2016-03-16T1420.h5'; % data with Gotthard and VLS 1153 + 1154 +(% style="color: rgb(0,128,0);" %)% h5disp(hdf5file,'/','min') % to get an idea what is in the file % h5info(hdf5file,'/Experiment/Gotthard1/BL.0') % get info about the individual channel 1155 + 1156 +(% style="color: rgb(0,128,0);" %)% read a Number per 10 Hz pulse train: 1157 + 1158 +(% class="code" %) 1159 +((( 1160 +FEL_Wavelength_energy_server=h5read(hdf5file,'/Photon Diagnostic/Wavelength/Calculated by energy/wavelength' ); 1161 +))) 1162 + 1163 +(% style="color: rgb(0,128,0);" %)% read in a 1D array (spectrum) %GMD data GMD_Spectrum=h5read(hdf5file,'/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA'); 1164 + 1165 +(% style="color: rgb(0,128,0);" %)% This reads in all the data . One can also limit the amount of data read to a subset of the data stored in the file. e.g. for image Data (Gotthard) 1166 + 1167 +\\ 1168 + 1169 +(% class="code" %) 1170 +((( 1171 +Start_event= 500 ; % define the first 10 Hz event 1172 + Number_of_events = 20; % how many 10 Hz events to load 1173 +))) 1174 + 1175 +(% style="color: rgb(0,128,0);" %)% read only part of the data: 1176 + 1177 +(% class="code" %) 1178 +((( 1179 +Gotthard_data=h5read(hdf5file,'/Experiment/Gotthard1/BL.0',[2 650 Start_event],[50 85 Number_of_events]); 1180 +))) 1181 + 1182 +(% style="color: rgb(0,128,0);" %)% start stop increment "manual" for 2 D data : [start bunch number in Gotthard data start pixelin spectrum start sample in 10 Hz trains], % [number of bunches in the Gotthard data number of points in the spectrum number of spectra ] 1183 + 1184 +(% class="code" %) 1185 +((( 1186 +VLS_Spectrum=h5read(hdf5file,'/Photon Diagnostic/Wavelength/VLS online spectrometer/PCO.ROI.X',[400 Start_event],[200 Number_of_events] ); 1187 + 1188 +))) 1189 + 1190 +(% style="color: rgb(0,128,0);" %)% start stop increment "manual" for 1D data : [start sample in the spectrum start sample in 10 Hz trains],[number of points in the spectrum number of spectra ] 1191 + 1192 +(% style="color: rgb(0,128,0);" %)%GMD data 1193 + 1194 +(% class="code" %) 1195 +((( 1196 +GMD_Spectrum=h5read(hdf5file,'/Photon Diagnostic/GMD/Pulse resolved energy/energy BDA',[1 Start_event],[40 Number_of_events] ); 1197 +))) 1198 + 1199 +[[Contents>>doc:||anchor="Contents"]] 1200 + 1201 +=== How to read HDF5 with Python via FLASHH5 === 1202 + 1203 +With [[FlashH5>>doc:FLASHUSER.FLASHH5 for easier access of FLASH's HDF5 files]] we provide h5py based examples to access and evaluate FLASH's HDF5 files. 1204 + 1205 +\\ 1206 + 1207 +== HDF5 and DOOCS == 1208 + 1209 +Here is an outdated [[list with the available properties that are always saved (PBD) for FLASH1 as>>attach:FLASH1__DaqChannel2HdfNamePbd.xlsx]] HDF5 names and the corresponding DOOCS names 1210 + 1211 +[[Contents>>doc:||anchor="Contents"]]