An automated Python workflow for XANES spectral analysis, peak fitting, and structure screening by combining experimental spectra with FEFF10-simulated references.
This repository provides a reproducible pipeline for:
- automated peak detection in experimental XANES spectra,
- Gaussian/Voigt-based spectral fitting,
- descriptor extraction from fitted spectra,
- comparison between experimental and FEFF10-simulated spectra,
- ranking and screening of candidate local configurations.
The workflow is designed to accelerate XANES interpretation while reducing manual intervention in peak assignment and spectrum matching.
For further details, you are encouraged to consult our paper and visit our website for additional resources and also our dataset information.
- Python 3.13
- Validated on Linux OS
- Use
conda env create -f xasfit.ymlto create the enviornment.
To set up the codes, run the following commands:
git clone https://github.com/ai4cat/XASFit.git
cd XASFitThe experimental XANES spectra used in this project were obtained through in-house measurements conducted within our research group. The corresponding atomic configurations and theoretical models were independently constructed as part of our internal database development.
Due to data ownership and ongoing research considerations, the full dataset (including experimental spectra and computed structural configurations) is not publicly distributed within this repository.
Interested users may access relevant data and explore the curated database through our official platform:
👉 Open-ADC
For specific requests or collaborations, please feel free to contact us.
XASFit/
├── fitting/
└── pre-process/
Contributions are welcome! Please follow the standard fork-and-pull request workflow on GitHub.
If you use our code in your research, please cite our paper:
@article{,
title={s},
author={},
journal={},
year={},
volume = {},
pages = {}
}This project is released under the Apache License 2.0.
This license permits use, modification, distribution, and commercial application of the code, while providing explicit patent protection for both contributors and users. It is particularly suitable for research-oriented software and AI-driven workflows.
For the full license text, please refer to the Apache-2.0 license file.