Hi Qingyu,
On Fri, Mar 30, 2012 at 1:46 AM, KONG Quingyu
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