MXAN: A new program for ab-initio structural quantitative analysis of XANES experiments☆,☆☆
Introduction
X-ray absorption spectroscopy (XAS) is a powerful method for obtaining both electronic and structural information on the absorbing atom site of different types of matter, from biological systems to condensed materials. The low energy part of the XAS spectrum, from the rising edge up to a few hundreds eV, the so called XANES (X-ray absorption near-edge structure) region, is extremely rich of both electronic and structural information, from the oxidation state to the structural details of the absorbing site (overall symmetry, distances and angles) (see [8] and references therein). In principle, in analogy to the Extended X-ray Absorption Fine Structure (EXAFS) part of the spectrum, from this part of the experimental spectrum one can obtain quantitative information about the molecular geometry around from the absorber atom, provided a suitable fitting pattern is available. In addition, XANES spectroscopy has the advantage of being less sensitive to structural oscillations due to thermal disorder since each signal associated with the multiple-scattering (MS) event can be written as a function dependent on the total length of the MS path itself. As a consequence, the associated thermal damping factor contains always a term like , coming from the part. This is the dominant term and is a kind of Debye-Waller damping factor almost equal to 1 in the low-energy part of the spectrum, i.e. for small k values [9]. The capability of XANES analysis to obtain quantitative structural information is of particular importance in the study of unknown compounds in chemical substances such as highly diluted solutions, systems of biological interest with low atomic number absorbers, local analysis of materials under extreme PVT conditions and more recently, time-dependent properties of metastable systems with picosecond lifetimes or less. However, the quantitative analysis of the XANES spectra presents some difficulties mainly due to the theoretical approximation needed in the treatment of the potential and the more time-consuming algorithms to calculate the absorbing cross section in the framework of the full multiple-scattering approach [5], [6]. Several years ago Benfatto and Della Longa proposed a fitting procedure, MXAN (Minuit XANES) based on a full MS theory [1] which could extract local structural information around the absorbing atom from experimental XANES data. Since then, the MXAN method has been successfully used for analyses of many known and unknown systems, yielding structural geometries and metrics comparable to X-ray diffraction and/or EXAFS results [2], [3], [4]. In this paper we present in details the MXAN method describing also the new possibilities now available in the latest version of the program, as the analysis of XANES data coming from time-dependent and structural disordered systems. This first release of the MXAN package is the product of the work of reengineering several source codes assembled consistently to have optimized access in RAM memory and an Input/Output (I/O) workflow suitable for its execution in parallel. Although this release is limited to an OpenMP parallelism, the in-memory data structure and files hierarchy are already setup for an extension on MPI-based parallel distributed memory architectures that will be released with the next version of the package. An important aspect of release technology of MXAN binaries is the choice we made to provide the full package (with an example of input) on docker runtime-based containers. This release mode is undoubtedly new to codes of scientific interest, particularly in X-ray spectroscopy, and we believe that although there are already applications based on docker or singularity images [10], this is a technology that in the near future will heavily permeate the runtime of most numerically intensive applications. These aspects are discussed in sections 3 and 4 where the technologies used and the applications to real cases of fitting are reported, but the interested reader will also find all the details of the implementation of MXAN on containers in the SIMs provided with this work. Currently there are other programs that are able to fit the XANES energy range, for example FitIt [11] and the last version of FDMNES [12]. The first one is a free software able to fit XANES data using multidimensional interpolation approximation. Starting from a calculation done with other softwares, this program is able to find the set of parameters which corresponds to the minimal discrepancy between interpolated and experimental XANES spectra. FDMNES is a program based on the Finite Difference Method which does not require any approximation for the shape of the potential. This program is now able to perform geometrical fits.
Section snippets
Theoretical background
The approach implemented in the MXAN code for the study of experimental XANES spectra is based on a direct fit to theoretical calculations performed by appropriately varying a set of structural parameters in the surrounding of the absorber atom (or atoms). By selecting a starting molecular geometry, MXAN is then able to perform different types of calculations in the context of the full MS approach where the inverse of the scattering path operator is calculated analytically thus avoiding to
Program description
The version of the MXAN code that we publish here has a long history of development that has continued over the last twenty years. Most of the original set of codes written in FORTRAN77 (and previous versions) have been ported in modern FORTRAN90 but some pieces, in particular those more “numerical” sensitive, have been left unchanged for numerical portability and reproducibility. Overall we implemented a new design of RAM inbound access for data that is now accessed through MODULEs statements
Numerical tests examples
We show, as test cases, the MXAN analyses of the K-edges of ion in aqueous solution. This ion is often used as test cases because of the well-defined formal valence of the ionic species and the very simple geometry around the absorber. The data at the K-edges were recorded in transmission mode using a Mylar cell at beam-station 7.1 of the Daresbury Laboratory (see [28] and [29] for details). The background contribution from previous edges has been fitted with a linear function and
Acknowledgments
This research was supported by the “Departments of Excellence-2018” Program (Dipartimenti di Eccellenza) of the Italian Ministry of Education, University and Research, DIBAF-Department of University of Tuscia, Project “Landscape 4.0 – food, wellbeing and environment”.
Declaration of Competing Interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
References (38)
- et al.
Solid State Commun.
(1982) - et al.
Chem. Phys.
(2002) Biophys. J.
(2007)- et al.
J. Synchrotron Radiat.
(2001) - et al.
Phys. Rev. Lett.
(2001) Proc. Natl. Acad. Sci. USA
(2007)J. Chem. Phys.
(2012)- et al.
Phys. Rev. B
(1992) - et al.
Rev. Mod. Phys.
(2000) - et al.
Phys. Rev. B
J. Synchrotron Radiat.
J. Phys. Condens. Matter
Phys. Rev. A
J. Phys. (France) Colloq.
Phys. Rev. A
Phys. Rev. B
Cited by (5)
Tracking the Evolution of Single-Atom Catalysts for the CO<inf>2</inf> Electrocatalytic Reduction Using Operando X-ray Absorption Spectroscopy and Machine Learning
2023, Journal of the American Chemical SocietyTransition State Analogue Molecules as Mechanistic Tools and Inhibitors for Tyrosinase
2023, Copper Bioinorganic Chemistry: from Health to Bioinspired CatalysisK-Edge XANES Investigation of Fe-Based Oxides by Density Functional Theory Calculations
2021, Journal of Physical Chemistry C
- ☆
The review of this paper was arranged by Prof. Stephan Fritzsche.
- ☆☆
This paper and its associated computer program are available via the Computer Physics Communications homepage on ScienceDirect (http://www.sciencedirect.com/science/journal/00104655).