EDACA: EXAFS data analysis using configurational average
Author: Dr. phys. Alexei Kuzmin

Institute of Solid State Physics
University of Latvia

Kengaraga street 8, LV-1063 Riga, Latvia

Internet: http://www.dragon.lv/edaca
E-mail: a.kuzmin@cfi.lu.lv


X-ray absorption spectroscopy (XAS) at synchrotron radiation sources is a structural tool providing information on the local atomic and electronic structure around an atom of a particular type. Today XAS is successfully applied to a study of crystalline, nanocrystalline and disordered solids, liquids and gases in a wide range of external conditions defined by temperature, pressure, etc. The size of the region, probed by XAS, depends on the degree of thermal and static disorder present in a material and is limited by the mean-free path of the excited photoelectron. Typically the information reach region extended up to 3-10 A around the absorbing atom.

An advantage of the XAS method is its sensitivity to many-atom distribution functions, giving rise to multiple-scattering (MS) contributions, and to correlation effects in atom dynamics. Note that accurate account of both effects is still challenging.

The time-scale (about 10-15-10-16 s) of the X-ray absorption process is much shorter than the characteristic time (about 10-13-10-14 s) of thermal vibrations. Therefore, the atoms may be considered as frozen at their instantaneous positions during a single photoabsorption process, and the total experimentally measured X-ray absorption spectrum corresponds to the configurational average of all atomic positions over the time of the experiment. This situation can be straightforwardly modelled combining the molecular dynamics (MD) simulation with the extended X-ray absorption fine structure (EXAFS) calculations, known as the MD-EXAFS approach.

Finally, the agreement between the experimental and configuration-averaged EXAFS spectra can be used to validate the accuracy of the interatomic potential (force-field) models employed in the MD simulations.

MD-EXAFS method

The general scheme of the MD-EXAFS method is shown in figure below.

Scheme of the MD-EXAFS approach

First, the structural model of the system should be constructed, taking into account its periodicity, the presence of defects as well as size and shape in the case of nanocrystals and clusters.
Second, the suitable interatomic potential (force-field) model should be selected, and its parameters should be provided.
Next, the molecular dynamics (MD) simulation at the required temperature and pressure is used to generate a set of instantaneous atomic configurations (“snapshots” of the material structure), and a set of EXAFS signals is calculated for each of the atomic configurations within the ab initio multiple-scattering approach.
Finally, the configuration-averaged EXAFS spectrum is calculated and directly compared with the experimental EXAFS. Note that in such approach both thermal and static disorder effects are naturally accounted within theoretical EXAFS.

Example of the experimental (black open circles) and configuration-averaged (blue solid lines) EXAFS spectra for the Ti K-edge in SrTiO3 and the Cu K-edge in fcc Cu are shown below:

Configuration averaged EXAFS calculations

The EDACA code is composed of three programs edamd.exe, edaca.exe and stdev.exe.
To run EDACA code, one can use the runedaca.bat file, which should contain the following lines:

edamd.exe Fe_bcc_300K_MD.xyz 0 0 8.0 Fe 0

As an alternative, the three programs can be run also separately without employing the runedaca.bat file. The edamd.exe code requires six or more parameters to be specified:

edamd.exe filename_xyz SkipFirst Skip Rmax atom1 absorber_number atom2 atom3 ...

Parameter Explanation

The name of XYZ file with atomic coordinates from MD simulation (GULP, LAMMPS, DL_POLY, ...).


A number of configurations to skip from the beginning, default SkipFirst=0.


A number of configurations to skip (e.g., Skip=0 means to read all configurations, Skip=1 means to read each second configuration.


The radius (in angstroem) of the small cluster around the absorbed used in the EDACA calculations and generated from large XYZ file. Rmax must be larger than the maximum distance (RPATH) specified in the feff.dat file.


the absorber.


= 0 default automatic mode: the absorber located at the MD box center,
>0 equals to the absorber number in the list of atoms,
<0 then |absorber_number| is equal to a number of possible absorbers from the beginning of the XYZ file: this option is required to calculate configuration averaged EXAFS for a part of atoms, e.g. in the central box of MD or RMC simulation.


next atom in the compound, those potential is mentioned in the pot.dat file.

For Cu metal: edamd.exe CuMD.xyz 0 0 10.0 Cu 0
For ReO3 crystal: edamd.exe ReO3MD.xyz 0 0 10.0 Re 0 O
For SrTiO3 crystal: edamd.exe SrTiO3MD.xyz 0 0 10.0 Ti 0 Sr O

The order of elements in the command line is important and should correspond to that in the pot.dat file (see below), the first atom is always the absorber.
After running edamd.exe, XYZ file produced by MD simulation will be split into a set of smaller XYZ files. Each small XYZ file corresponds to individual atomic configuration and is centred at proper absorbing atom (‘0’ number) surrounded by other atoms (‘1’, ‘2’, …) located within a sphere with the radius Rmax. The full list of small XYZ file names is written in a conf.dat file.

The edaca.exe code uses the results produced by the edamd.exe code plus a number of additional files, which should be located in the same directory.

A set of files required by the edaca.exe includes:
1) a set of small XYZ files and conf.dat file produced by edamd.exe.
2) feff.exe - an executable of the FEFF8x or FEFF9x code.
3) *.bin and other files required by the FEFF code (output files after FEFF8 & FEFF9 calculation for static configuration), if cluster potential is supplied by the user (recommended).
4) feff.dat - an input file in ASCII format for the FEFF8x or FEFF9x code with the *.dat extension: it can be produced from the feff.inp file simply by deleting all atomic coordinates after ATOM command.
5) pot.dat - a file in ASCII format which describes correspondence between elements (potentials) in the MD simulation and FEFF calculation. The order of elements (potentials) is important and should be checked by the user!

The edaca.exe code calculates EXAFS spectrum for each XYZ file specified in the conf.dat file. These spectra are saved under the names xt.001, xt.002, …. The main result is saved under the name xt_tot.txt and contains the configuration-averaged EXAFS spectrum. The configuration-averaged X-ray absorption coefficient is also saved under the name mu_tot.txt.


Download EDACA User's Manual in PDF format.

Download EDACA package for Windows.
The ZIP archive includes code, manual and examples.

Download EDACA package for Linux.
The TAR archive includes code, manual and examples.


A. Kuzmin, The use of Molecular Dynamics simulations for the interpretation of EXAFS spectra. Lecture at Brookhaven National Laboratory, November 1-3, 2017.

A. Kuzmin, EDACA software demonstration for Molecular Dynamics simulations of EXAFS spectra. Lecture at Brookhaven National Laboratory, November 1-3, 2017.


Please cite these works in your publications based on the results of the EDACA simulations:

A. Kuzmin, R.A. Evarestov, Quantum mechanics-molecular dynamics approach to the interpretation of X-ray absorption spectra, J. Phys.: Condens. Matter 21 (2009) 055401 (6 pp). DOI: 10.1088/0953-8984/21/5/055401

A. Kuzmin, A. Anspoks, A. Kalinko, J. Timoshenko, The use of x-ray absorption spectra for validation of classical force-field models, Z. Phys. Chem. 230 (2016) 537-549. DOI: 10.1515/zpch-2015-0664

This page is maintained by Alexei Kuzmin (a.kuzmin@cfi.lu.lv).