https://github.com/mpes-kit/pesfit

Distributed multicomponent lineshape fitting routines and benchmarks for multidimensional spectroscopy and spectral imaging

https://github.com/mpes-kit/pesfit

Science Score: 10.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.6%) to scientific vocabulary

Keywords

arpes band-structure benchmarks condensed-matter-physics feature-extraction high-performance-computing lineshape lineshape-fitting materials-informatics materials-science photoemission spectral-imaging
Last synced: 6 months ago · JSON representation

Repository

Distributed multicomponent lineshape fitting routines and benchmarks for multidimensional spectroscopy and spectral imaging

Basic Info
Statistics
  • Stars: 1
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
arpes band-structure benchmarks condensed-matter-physics feature-extraction high-performance-computing lineshape lineshape-fitting materials-informatics materials-science photoemission spectral-imaging
Created over 5 years ago · Last pushed over 4 years ago
Metadata Files
Readme License

README.md

pesfit

License Downloads PyPI version

Scalable distributed multicomponent lineshape fitting routines and benchmarks for spectral or spectrum-like data

Rationale

Lineshape fitting is a universal task in photoemission spectroscopy and can be a tedious endeavor due to the increasing amount of data measured in modern instruments (e.g. angle-resolved hemispherical analyzer, time-of-flight electron momentum microscope). It extracts physically meaningful quantities directly related to the materials' electronic properties, which can be reproduced from theory calculations. However, the efficiency bottleneck in lineshape fitting puts constraints on the potential new physical insights obtainable within a meaningful time frame. We set up here examples of multiband photoemission spectra along with existing domain knowledge in the field. The routines and benchmarks featured here offer an open-source data and algorithm platform for continuous algorithm development to improve the computational efficiency of the lineshape fitting task, which, in the meantime, also paves the way towards the automation of materials characterization using photoemission spectroscopy.

Design and scope

The fitting part of the package builds and improves on the existing Model and CompositeModel classes in the widely-used lmfit package to include multicomponent lineshapes (involving an arbitrary number of peaks) evaluated using MapReduce operations. Fitting of many intensity profiles (i.e. line spectra) can be carried out either in sequence or in parallel (built in using dask and multiprocessing).

The focus of the software and its benchmarks in on determining the momentum-dependent band positions in valence band photoemission data at scale (e.g. 104-105 spectra with each containing 10+ bands), which meets the needs for a global understanding of these complex data with reasonable accuracy (not necessarily accounting for all photoemission physics) to yield empirical structural information (i.e. band structure parameters). For conventional data analysis of core-level photoemission spectroscopy that often exhibits a complex background, please consult software packages such as lmfit, xps, and gxps.

Installation

  1. Install from scratch

     pip install git+https://github.com/mpes-kit/pesfit.git 

  2. Upgrade or overwrite an existing installation

     pip install --upgrade git+https://github.com/mpes-kit/pesfit.git 

  3. Install from PyPI

     pip install pesfit 

Data source

Please download the data from mpes-kit/pesarxiv. To run the examples and benchmarks, create a ./data folder in the cloned repository and copy the downloaded data into it.

Benchmarks and examples

Besides source code, the package comes with examples presented in Jupyter notebooks and benchmarks for multiband dispersion fitting routines in scripts, using the data described above.

Documentation

Online documentation is provided here.

Reference

Please cite the following paper when you refer to the software:

R. Patrick Xian, R. Ernstorfer, Philipp M. Pelz, Scalable multicomponent spectral analysis for high-throughput data annotation, arXiv: 2102.05604.

Owner

  • Name: mpes-kit
  • Login: mpes-kit
  • Kind: organization
  • Location: Germany

Codebase for materials informatics in multidimensional) photoemission spectroscopy (https://gitter.im/mpes_tools/community)

GitHub Events

Total
Last Year

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 213
  • Total Committers: 1
  • Avg Commits per committer: 213.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
RealPolitiX x****k@g****m 213

Issues and Pull Requests

Last synced: 9 months ago

All Time
  • Total issues: 0
  • Total pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: 39 minutes
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • RealPolitiX (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 20 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 4
  • Total maintainers: 2
pypi.org: pesfit

Multiband lineshape fitting routines for photoemission spectroscopy

  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 20 Last month
Rankings
Dependent packages count: 10.0%
Dependent repos count: 21.8%
Average: 25.2%
Forks count: 29.8%
Stargazers count: 31.9%
Downloads: 32.7%
Maintainers (2)
Last synced: 6 months ago

Dependencies

requirements.txt pypi
  • cloudpickle *
  • coverage *
  • dask *
  • h5py *
  • hdfio *
  • lmfit *
  • numpy ==1.17.0
  • pandas *
  • sphinx *
setup.py pypi
  • x.strip *