Skip to content

Latest commit

 

History

History
79 lines (54 loc) · 4.76 KB

README.md

File metadata and controls

79 lines (54 loc) · 4.76 KB

Angle-resolved Time-of-Flight Data & Analysis Module

logo

License: GPL v3 Last Commit Python Github All Releases

This project is focused on reading, plotting and analyzing data from Angle-Resolved Time of Flight(ARTOF) experiments. ARTOF is an offshoot of ARPES systems where instead of using hemispherical analyzers, a time-of-flight tube coupled with a delay line detector is used. This gives an advantage to map band structure on both dimensions without any need to change the angle of the sample.

Data is binned as a hdf5 file, common in ARPES experiments. The character of data is mostly 4 dimensional; delaypoints(time), energy(time-of-flight), y(angle perpendicular to plane of incidence), x(angle parallel to plane of incidence). An incredible package; xarray is used for labeling this 4 dimensional matrix. Selection, addition and algebraic manipulation of data is done using the functions from xarray package.

Cross-correlation fitting; a method to find the length of ultrashort laser-pulses from delaypoints, is done with curve_fit from SciPy using a convoluted version of an exponential decay and a gaussian.

All the plotting is either done with build-in function from xarray or Matplotlib with SciencePlots style in line plots.

Installation

There are several ways to install the dependencies and package.

First method Package dependencies can be installed together with a creating a conda environment, this is the easiest way. First download the files and inside the folder location, type in terminal:

$ conda env create -f environment.yml

This will install a conda environment with necessary packages. To activate the environment:

$ conda activate artof-env

Second method is to install the dependencies manually. For this method also, I recommend to use the package with Anaconda and create a dedicated environment for the usage:

$ conda create -n env_artof python=3.7
$ conda activate env_artof

Install the dependent packages with requirements.

$ pip install -U -r requirements.txt

Important!

If you are installing packages manually rather than using requirements.txt, PyAbel package should be installed directly from project's GitHub page, following the guide. The version in Python Package Index (PyPI) do not contain the module *.tools, which is used for polar coordinates reprojection.

Future directions;

* Rewrite the plotting functions for better readability
* Import the angle to momentum conversion program to Python from C++
* Possible inclusion of ARPES / HHG data and/or Momentum Microscope data
* setup.py will be added to soon for packaging

Disclaimer

As the data acquisition software is very problematic and old, many error comes during the experiment; crashing of the software, data omitting during saving etc. This code in here also deals with this system specific problems. So if you want to use this piece of code in here, please consider asking me beforehand.