Fitting X-ray absorption near edge structure

Python implementation of FitIt software to fit X-ray absorption near edge structure (XANES). The python version is extended with additional features: machine learning, automatic component analysis, direct geometry prediction and others.


  • Uses ipywidgets to construct the portable GUI
  • Calculates XANES by FDMNES or FEFF
  • Interpolates XANES in order to speedup fitting. Support different types of interpolation point generation: grid, random, IHS and various interpolation methods including machine learning algorithms
  • Using multidimensional interpolation approximation you can vary parameters by sliders and see immediately theoretical spectrum, which corresponds to this geometry. Fitting can be performed on the basis of visual comparison with experiment or using automatic procedure and quantitative criteria.
  • Supports direct prediction of geometry parameters by machine learning
  • Includes automatic and semi-automatic component analysis


  1. Run the following command in your python environment:

    pip install --upgrade pyfitit

    If you don't have python and pip, install it, for example using anaconda distribution.
  2. Download and unpack examples.
  3. Start jupyter notebook system and open some .ipynb-example in your browser.

If you like the software, acknowledge it using the references below