...1
The name was originally intended to stand for INTERACTIVE FEFFIT, but I sort of like the simple self-declarative nature of the name as well as the literary allusion to I, Claudius and I, Robot. It could also be interpreted as the answer to the question, "How do you analyze your XAFS data?". It is in no way intended as a subliminal insertion of FEFF into that other Chicago technological institute known to do some XAFS.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...2
If you have some programming experience, it might help to think of Paths as Objects: A complex data structure which you cannot access directly, but only through the supplied methods. In this view, path() defines and creates a path object, and the commands show(), ff2chi() and feffit(), the functions debye() and eins(), and special variables like reff and degen access this data.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...3
That is, it's not storing the text string for the formulas and re-using them - that would be far too inefficient for data modeling. Instead, IFEFFIT parses and converts the formula into a sort of `byte-code' for easy re-evaluation. The sync() command inspects this `byte-code' for each formula to determine the simplest order of re-evaluation of the variables so that all the inter-dependencies are satisfied
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...4
Actually, IFEFFIT violates standard math precedence by incorrectly associating exponentiation from left to right instead of right to left. That is, it evaluates 4**3**2 as 4096 (= (4**3)**2) instead of the correct value of 262144 (= 4**(3**2)). Fixing this is not high on the priority list.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...5
Note that all the Fourier transform parameters for spline() are stored in variables that end with _spl.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... parentheses6
Actually, up to the first unprotected comma or right parentheses. A comma or parentheses can be protected by enclosing it in pairs of parentheses, double quotes, or curly braces.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... command.7
These two variations of plot(text='300 K Data', text_x=7025, text_y=0.2) and plot_text(x=7025,y=0.2,text='300 K Data') really are equivalent and can be mixed.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...8
IFEFFIT requires version 5 or higher of FEFF. FEFF7 or higher is recommended for use with IFEFFIT.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...9
For those of you with experience with FEFFIT, the concept of the ``local'' variable does not exist in IFEFFIT. All variables are truly global.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.