Skip to main content

Modular data analysis code for angle resolved photoemission spectroscopy (ARPES)

Project description

ARPES-Lite

ARPES-Lite is my personal fork of the original PyARPES package. I ran into some issues when first working with the package and fixing them required that I break a significant portion of the codebase.

The main improvements to pyarpes are in automation of loading and correcting data (fermi-edge correction, k-space conversion, etc.). There are also improvements and additions to QT based interactive tools.

Because of the changes made to data loading, some work is required to port endstations plugins from pyarpes. If needed, I can easily port existing endstations or add new ones.

Installation

Arpes-lite is most easily installed with pip: pip install arpes-lite.

Note that the package is still imported with import arpes as with pyarpes.

For an editable installation, I recommend installing uv, cloning the github repo, navigating to the cloned repo in your shell, and installing with uv sync. This will also install ipykernel so you can run ipython notebooks with VS Code.

Usage

The PyARPES docs are still the best place to learn how to use arpes-lite. I don't have my own docs to document all of the changes in usage, but there aren't many once you've gotten started.

To start, import common functions with from arpes.config import *. This contains data loading functions, imports the xarray_extensions, and other common functions for correcting and plotting data (fermi-edge correction, stack_plot, etc.) Having an editable arpes.config is the primary advantage of an editable installation.

Data loading can be done the same as in pyarpes with load_data or more easily with load_folder.

Here's an example of the code I use to load all of the data from an experiment:

corrected: list[xr.Dataset] = [
    fix_fermi_edge(data)
    for data in load_folder(data_root, location="BL7", pattern="*.h5")
]
for i, data in enumerate(corrected):
    print(f"{i}: {data.attrs["comment"]}")

This will load all of the data in the data_root folder with a .h5 extension and then perform automatic fermi-edge correction on each dataset. Finally it prints a "comment" attribute stored during the measurement. From there you can convert_to_kspace without having to specify your momentum coordinates. Finally, you can use export_dataset to save a .nc file with any conversions/corrections you've performed so you don't have to do them every time you analyze your data.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arpes_lite-1.0.1.tar.gz (7.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arpes_lite-1.0.1-py3-none-any.whl (7.7 MB view details)

Uploaded Python 3

File details

Details for the file arpes_lite-1.0.1.tar.gz.

File metadata

  • Download URL: arpes_lite-1.0.1.tar.gz
  • Upload date:
  • Size: 7.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.9

File hashes

Hashes for arpes_lite-1.0.1.tar.gz
Algorithm Hash digest
SHA256 d90e6b776788792a2212ccb5c755f89f5907b4614e399329575710a1f56d85aa
MD5 9e4fa4331c618e7a5eb290ad677e7492
BLAKE2b-256 07d17cab8c0adb993d44a7ffa4e6a8512b016a7ac511cff481e30368ce0f6d55

See more details on using hashes here.

File details

Details for the file arpes_lite-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for arpes_lite-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 57f859bd323046b180bb72842f3d71beca525830d8ea0abe3517835b08f2563d
MD5 6e7a64879aad8aa1d769cfd1b14f5009
BLAKE2b-256 7e7ffe8054cbbe4aff08df99fb6780cf5a668aa8a9c3d5fa6516b7396556befa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page