[Ifeffit] file type plug-ins
bravel at anl.gov
Sun Jul 17 16:52:37 CDT 2005
One of the new features in Athena 0.8.041 is a plug-in architecture
for processing data files that are not recognized by Ifeffit.
Ifeffit and Athena are pretty successful at importing data from many
of the beam-lines around the world that do XAS, but there are a number
of beam-lines whose data requires either special, hardwired code in
Athena or intervention by the user before importing into Athena.
Neither of these solutions is particularly satisfying. Here I
describe my latest attempt to address this recurring problem.
It is now possible to write a short perl Module and drop it in the
correct location. Athena will find and load that module and use it to
recognize and reformat data that could otherwise not be imported.
Currently, Athena ships with three such plug-ins, one for NSLS X10C,
one for APS 12BM, and one for NSLS X15B.
The NSLS X10C plug-in is extensively documented and explains how to
write other plug-ins. This means that any time a user runs into
trouble importing data into Athena, a plug-in can be written and
dropped into place. Athena will then be able to import that data. No
upgrade required. How cool is that?
So, if you have data that Athena has trouble with, you can take a stab
at writing a plug-in. Or the beam-line scientist can do so. Or I
can. Indeed, I encourage users and beam-line scientists from
beam-lines that use formats that give trouble to Athena to contact me
with examples of those data files. Or, even better, write a plug-in,
send it to me, and I'll distribute it with my codes.
P.S. Some beam-lines that generate data that cannot immediately be
read by Ifeffit include:
* X10C at NSLS (Athena has for some time included special code for
dealing with these data -- this chore has been moved to a plug-in)
* 12BM at the APS (the header contains a line that confuses
* X15B at NSLS (uses a legacy binary format)
* the XAS beam-line at the LNLS, (see
for that discussion)
* At least one of the XAS BLs at SPring8 uses a confusing
multi-column format and mono angle instead of energy
* Any BL using Spec is likely to generate data files that Ifeffit
* Much of the data in the Ferrel Lytle Database at IIT is in
formats that cannot be directly imported into Athena
Athena currently includes plug-ins for the first three BLs on this
list, each involving less than 50 lines of code. These are easy
things to write!
The one for NSLS X15B, however, does not yet work on Windows. It
works great on my Linux boxes, but I have yet to get it to work on
Windows. Stay tuned.
Bruce Ravel ----------------------------------- bravel at anl.gov -or-
ravel at phys.washington.edu
Environmental Research Division, Building 203, Room E-165
Argonne National Laboratory phone and voice mail: (1) 630 252 5033
Argonne IL 60439, USA fax: (1) 630 252 9793
My homepage: http://feff.phys.washington.edu/~ravel
EXAFS software: http://feff.phys.washington.edu/~ravel/software/exafs/
More information about the Ifeffit