IFEFFIT: Interactive XAFS Analysis
What is IFEFFIT ?
IFEFFIT is an interactive program for XAFS analysis. It combines the high-quality analysis algorithms of AUTOBK and FEFFIT with graphical display of XAFS data and general data manipulation.
IFEFFIT comes as a command-line program, but the underlying functionality is available as a programming library. The IFEFFIT library can be used from C, Fortran, Tcl, Perl, and Python. This allows a variety of user interfaces (both graphical and non-graphical) to be written around IFEFFIT. There are several graphical user interfaces using the IFEFFIT library, including ATHENA, ARTEMIS, and SIXPACK. IFEFFIT and these GUIs are under active development, but are fairly well tested and ready for use.
IFEFFIT was developed primarily by Matt Newville at CARS, the Consortium for Advanced Radiation Sources, at The University of Chicago. Funding comes from theUS DOE. IFEFFIT borrows many ideas and some code from the UWXAFS Project of the University of Washington.
Several other ideas, including the Fast Fourier Transform, non-linear least-squares fitting, the EXAFS path expansion, and eval() were taken from the wide range of publicly available resources that existed in a time before ideas were termed 'intellectual property'.
The IFEFFIT web page is hosted at CARS.
IFEFFIT is a command-line program for XAFS Analysis. It includes high-quality algorithms specific to XAFS Analysis: For background removal, it uses the AUTOBK algorithm, and for fitting EXAFS chi(k) and FEFFIT with graphical display of XAFS data and general data manipulation.
IFEFFIT can also be used within other programs or scripts, so that a variety of small programs and general-purpose user interfaces (both graphical and non-graphical) can be written around it. Several such tools are now included in the IFEFFIT distribution.
IFEFFIT includes the following features:
- Read/Write ASCII data files.
- Simple manipulation of one-dimensional array data
- Interactive plotting of data (outputs to Postscript or GIF)
- XAFS pre-edge removal, E0 determination, normalization
- XAFS background removal (AUTOBK algorithm).
- XAFS Fourier Transform (including Hanning, Kaiser-Bessel, and Sine Window Functions)
- Simple front end for combining FEFF paths -- enhanced FF2CHI.
- FEFFIT analysis: fitting data to FEFF calculations with generalized fitting parameters, automatic error-bar estimation, fitting in either R or k-space.
- Simultaneous refinement of multiple data sets.
- Both constraints and restraints can be applied to the fit.
- Generalized minimization routine for fitting non-XAFS data, including XANES fitting to combinations of model spectra or pre-defined functions.
- Anomalous scattering factors from Cromer-Libermann calculations.
IFEFFIT works on Unix, Windows, and MacOS X systems.
IFEFFIT is Free Software