[Ifeffit] program

Matt Newville newville at cars.uchicago.edu
Fri Mar 30 07:56:05 CDT 2012


Hi Qingyu,

On Fri, Mar 30, 2012 at 1:46 AM, KONG Quingyu
<kong at synchrotron-soleil.fr> wrote:
> We recently collected 3000 EXAFS spectra to follow a chemical reaction process, we would like to fit the experimental data with reference spectra using linear combination fitting. Does anyone know there are available or commercial program to normalize the data and make linear combination fitting. We tried to do it with Athena manually, but 3000 spectra take a long time for us and it is not a practical way.

Ifeffit is designed to be scriptable for batch processing.   This can
be done with a raw Ifeffit script (which isn't very flexible) or from
Perl or Python, which are more flexible.   Carlo mentioned Demeter,
which is a high-level Perl wrapping of the lower-level functionality.
   Working with 3000 spectra may be challenging with Ifeffit version
1.2, as the total amount of available memory is limited, but with some
care it should be possible.

FWIW, the next version of Ifeffit will eliminate this memory
limitation, and make both scripting and extending the functionality
much easier and better.  This is still a work in progress (see
https://github.com/xraypy/xraylarch) and poorly documented, but the
essential idea is to write all of Ifeffit's functionality in Python,
for all the reasons just stated, and this far enough along that I am
confident it will be a big improvement.   So far (for XAFS), this can
read data, do simple pre-edge subtraction, normalization, remove
backgrounds ala autobk, and do XAFS Fourier transforms.   It can do
simple "general purpose fitting", but does not yet expose a
simple-to-use linear combination fitting functionality (shouldn't be
too hard, as all the linear algebra pieces are readily available) or
fitting spectra to Feff calculations (a bit more involved).   Work is
slow (mostly due to other obligations),  but progress is being made,
and it's close to ready for an initial release.   If you are (or
anyone else is) interested in trying this or helping out, let me know.

--Matt




More information about the Ifeffit mailing list