eldix

eldix is a full featured control program for the ELDICO Electron Diffraction System. It controls the hardware of the E-beam generator, the goniometer and the detector. At the same time it is an image viewer for X-ray diffraction images supporting a variety of formats: - cbf (crystallographic binary format) - minicbf(crystallographic binary format as used by Dectris) - tiff (Eiger, Pilatus, marCCD) - mar345 (e.g. images with extension .mar2300, .mar1200, etc.) - mar300 (e.g. images with extension .image) - marccd (images produced by the Rayonix CCD-detectors) - raw (8,16 or 32-bit data arrays)

Dependencies

Python 3.5 or later. The GUI depends on tk, so on Ubuntu the package python3-tk must be installed. The program also makes use of:

The program requires additional packages that may not be packaged inside Ubuntu or Debian repositories. They may have to be installed with pip3.

Module pyglet is not essential. It is required only for loading custom fonts that are not available as system fonts. These fonts are Segment7.ttf and Eurostile-LT-Std-Oblique.ttf. If you copy them into a system location (e.g. /usr/share/fonts/truetype) and rebuild the font cache (sudo fc-cache -f -v ) you are all set.

BEWARE: module numpy >= 1.24 is not compatible with h5py < 3.0. It is suggested to install both numpy >= 1.24 and h5py >= 3.0 via pip and not use the versions supplied by the operating system (e.g. on Debian 11: numpy=1.19 and h5py=2.10.0

Ubuntu and Debian Like linux distributions:

To use eldix on Ubuntu or Debian Linux the needed python modules can be installed either through the Synaptic Package Manager (found in System -> Administration) or using apt-get on from the command line in a terminal. The extra packages needed are:

The can be install using 'apt' or 'apt-get' like:

sudo apt install python3-tk python3-pil python3-pil.imagetk python3-numpy python3-scipy python3-matplotlib python3-lz4 python3-opencv python3-zmq python3-pycurl python3-passlib python3-psutil python3-cpuinfo python3-netifaces sudo apt install tifffile sudo apt install python3-pyglet

Some packages are not officially packaged in the Ubuntu or Debian repositories. They will have to be installed via pip3 like:

sudo pip3 install tkinterhtml sudo pip3 install cbf sudo pip3 install bitshuffle sudo pip3 install pyglet

On Linux systems you might also want to install via pip3: sudo pip3 install pyscreenshot

December 2020: For some reason, bitshuffle on Debian 10 fails with a compilation when installed via pip3. Download the package from github and install it "manually", i.e.

sudo apt install cython3 (required for compilation?) git clone https://github.com/kiyo-masui/bitshuffle.git cd bitshuffle python3 setup.py build sudo python3 setup.py install