evedata

Importing eveH5 data from synchrotron radiometry measurements conducted at BESSY/MLS in Berlin.

Welcome! This is the documentation for evedata, a Python package for importing (synchrotron) radiometry data obtained at one of the beamlines at BESSY-II or MLS in Berlin, mostly operated by the German National Metrology Institute, the Physikalisch-Technische Bundesanstalt (PTB). This package acts as main interface between the (eveH5) data files and the processing and analysis code and provides abstractions that allow for a convenient and intuitive access to the data and information contained in the data files. For related packages for viewing and analysing those data, have a look at the related projects section.

Loading the contents of a data file of a measurement may be as simple as:

from evedata import Measurement

measurement = Measurement(filename="my_measurement_file.h5")
measurement.load()

Here, measurement contains a high-level abstract representation of all the information contained in the data file as a hierarchy of Python objects. For more details, see the documentation of the measurement module.

Features

A list of (planned) features:

  • Importer for eve HDF5 files (used at PTB in Berlin, Germany)

  • Fully backwards-compatible to older eveH5 versions

  • Complete information available that is contained in an eveH5 file

  • Access to the information stored in the scan description

  • Data are (only) loaded on demand, not when loading the file

  • Powerful and intuitive abstractions, allowing for associative access to data and information – beyond a purely tabular view of the data

And to make it even more convenient for users and future-proof:

  • Open source project written in Python (>= 3.9)

  • Developed fully test-driven

  • Extensive user and API documentation

Warning

evedata is currently under active development and still considered in Alpha development state. Therefore, expect frequent changes in features and public APIs that may break your own code. Nevertheless, feedback as well as feature requests are highly welcome.

Where to start

Users new to evedata should probably start at the beginning, those familiar with its underlying concepts and interested in the overall structure may have a look at the Architecture section. The Use cases and Terminology sections may be worth skimming over as well.

Installation

To install the evedata package on your computer (sensibly within a Python virtual environment), open a terminal (activate your virtual environment), and type in the following:

pip install evedata

For further details, see the Installation section.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GPLv3 License.