[Ifeffit] contributing to the Ifeffit family
ravel at phys.washington.edu
Tue Oct 28 11:15:20 CST 2003
On occassion, the topic comes up of contributions to the ifeffit
universe from other people besides Matt, Sam, and myself. Indeed,
there have been some excellent examples centered around this mailing
list. For example, a few months ago, we had a really useful
discussion, including code examples, about rebinning data. As a
somewhat smaller example, two fine souls responded to my request for
some example data from NSLS X10C.
Last week, Scott asked this:
Oh, and I've been thinking. [Matt and Bruce] spend enormous
amounts of time on this software, and it's a big contribution to
the field. As I explained above, I'm not willing to help on the
coding end, but I'd like to support the project in some way. I
know Bruce has mentioned the need for more/better Athena and
Artemis documentation...I was hesitant to suggest I help with that
until I got more familiar with the software, but I think I'm now
getting to that point. So Bruce--what is the most pressing need in
that area? I'll see if I can start devoting some time to it...
I thought I would answer Scott's question in public. Who knows, maybe
I'll start something ;-)
I will divide this up into a few categories. If you dig into any of
these, we should probably communicate so that you produce something in
a format that will be useful to us developers.
1. Edit and expand upon the documentation that exists for Athena.
The Athena doc is actually in pretty good shape. Most parts of
the code are at least mentioned in the doc. If you are not
familiar with the POD markup that is used in Athena's docs, don't
worry. If you do some significant editing, I'll be happy to touch
up the mark-up.
2. The Artemis document needs serious work. Pick a topic that
interests you (or one of the unwritten topics in the current
document) and start writing. You don't have to write in Latex.
If you write in Word or some other format, all I'd ask is that you
not format what you write too heavily and that you provide me with
external copies of all images in appropriate formats.
3. Write a FAQ (frequently asked/answered/anticipated questions).
Documentation by example
One of the neat (IMHO, anyway) ways that I have documented Athena is
the collection of demo projects, which are just normal Athena projects
with extensive commentary in the Journal area.
1. Make more Athena projects. Improve upon the ones that are already
2. Make some nice Artemis projects. Even better, make a sequence of
Artemis projects which demonstrate the steps one might take in
building a sophisticated fitting model.
Programming and related chores
If you are inclined to deal with code, but don't necessarily want to
dive into Athena or Artemis, here are some smaller projects.
1. Write an object-oriented module in Perl for accessing Spec data
files. I could then use this in Athena.
2. Volunteer to maintain and build the Windows distribution and
3. Collect examples of data from every dedicated XAFS beamline in the
world. (Really, I mean it, every one.) Figure out which ones can
be read by Ifeffit and which cannot. Figure out how to preprocess
the ones that aren't read properly by Ifeffit and explain to us
how to recognize them and how to preprocess them.
4. Think up a battery of tests. Subject Athena and Artemis to those
tests soon after (or even prior to) every release. Let me know
about any problems.
1. Set up a web site for a FAQ which allows searching the FAQ for
2. Set up a web page which indexes the Ifeffit mailing list archives
and allows searching by keywords.
3. Set up and administer a Wiki so everyone can participate in the
process of documenting Ifeffit, SixPack, Athena, and Artemis.
4. Set up and administer a community discussion board. My
inclination would be to use Slash (http://slashcode.com), which
has a comination of features that I think could provide a valuable
service to the XAFS community.
5. Collect and organize new material for the databases that Matt
maintains which contain atoms input files and standards spectra.
Well, that ought to be enough suggestions to get anyone started.
Bruce Ravel ----------------------------------- ravel at phys.washington.edu
Code 6134, Building 3, Room 222
Naval Research Laboratory phone: (1) 202 767 5947
Washington DC 20375, USA fax: (1) 202 767 1697
NRL Synchrotron Radiation Consortium (NRL-SRC)
Beamlines X11a, X11b, X23b
National Synchrotron Light Source
Brookhaven National Laboratory, Upton, NY 11973
My homepage: http://feff.phys.washington.edu/~ravel
EXAFS software: http://feff.phys.washington.edu/~ravel/software/exafs/
More information about the Ifeffit