Skip to content

HDF5 files

JPBGoe edited this page Aug 23, 2017 · 6 revisions

HDF5 files

HDF5 files are used as input and output of the simulation. They store the information of the previous simulation steps as well as information of intermediate calculations of this detector. Inside of such files an hierachical structure with groups and data sets exsists. data sets contain data and groups contain other groups or data sets.

Requirements and datastructures of the input HDF5 file

In front of a detector is usually a diffraction area. Here the output of the singFEL diffractor is used. Its output file has the following structure:

HDF5 path Datatype Content
/data/data 2D numpy array integrated intensity per pixel
/data/diffr 2D numpy array integrated intensity per pixel converted to photon count (Poissonized)
/data/angle   Euler angles applied to atomic positions
/history/parent/detail ExternalLink Details of parent data
/history/parent/parent ExternalLink Parent data, hierarchical
/info/package_version   Backengine code version
/info/contact   Support contact
/info/data_description   Data documentation
/info/method_description   Method documentation
/params/geom/detectorDist float Detector distance
/params/geom/pixelWidth float Pixel width (x)
/params/geom/pixelHeight float Pixel height (y)
/params/geom/mask   Masked pixels
/params/beam/photonEnergy   Central photon energy
/params/beam/photons   Number of photons in beam
/params/beam/focusArea   Beam focus area
/params/info   Input parameter for backengine code

Requirements and datastructures of the output HDF5 file

HDF5 path Datatype Content
/data/data 2D numpy array each element is a charge detected at that spot of the detector
/data/photons 2D numpy array each element contains the number of photon it has
/data/interaction m x 5 numpy array each row is an interaction of a photon at the detector
/history/parent ExternalLink Link to the input file
/info/package_version string Backengine code version
/params/geom/detectorDist numpy float_ Detector distance
/params/geom/pixelWidth numpy float_ Pixel width (x)
/params/geom/pixelHeight numpy float_ Pixel height (y)
/params/beam/photonEnergy numpy float_ Central photon energy

Description of the arrays

data/data

This data set includes an array such as data/data, where the simulated and propagated charge per detector pixel is stored in

data/photons

the data/data of the input file but converted to a numpy array

data/interactions

This numpy array (m x 5) recordes the interactions of the photons with the detector. Each row (j elem m) represents an interaction:

- [i,0] = position at the detector of the deposited energy in x
- [i,1] = position at the detector of the deposited energy in y
- [i,2] = position at the detector of the deposited energy in z
- [i,3] = time of the deposition of energy
- [i,4] = deposited energy of the photon at the detector
Clone this wiki locally