[Ifeffit] Other programs than FEFF - GNXAS and MXAN

Matt Newville newville at cars.uchicago.edu
Sun Jul 30 20:37:47 CDT 2006

Hi Matthew,

> A verifier is a program that inspects programs, looking for probable bugs
> such as un-initialized variables, non-standard syntax, and system
> dependencies.  In fortran and C, graphics is not natively provided, so
> much be called from a library.  Such libraries vary from system to system.

Ah, I understand now.  Portability is a main reason why Feff does not have
graphics.  Portability is always challenging, but changes over time.  To me,
it seems way easier than in the early 90s, having been effectively
reduced to "workstations" running BSD/GNU/Posix (linux, Solaris, Mac
OS X) and
Windows.    While Feff8 may still work on VMS and a Cray,  Feff8.* does not
compile with g77 any more (a sad loss of portability, IMHO), and I doubt Feff
has been ported to Palm or VxWorks (if you're laughing,  recall that the other
half of this thread was about "black boxes"!!).

> It may use MS for systems in which the atomic positions are defined, but
> g(r) alone does not define them.  To get both *at one time* would require
> some way of specifying baseline atoms positions plus some random
> distortions with specified distributions, plus models for how those distortions
> are correlated.  Essentially, calculating MS requires assuming things about
> 3-body correlations at least.

I agree with this.  I find it confusing to hear a claim that "using a
g(R) is necessary" at the same time as "MS is necessary", and am not sure
how to handle the combination without model-dependent assumptions.
While I don't know how GNXAS handles this, I'm sure they've thought about it
and come up with a reasonable solution.

> I meant that FEFF's options are a superset, not that they are identical.

That's fair enough.

> > For DW factors for MS paths, Feff can use the correlated Debye model.
> > GNXAS claims to do something different and more complicated, but I've
> > never understand this, or why that would be important for systems that
> > needed to be treated with a g(R).
> If GNXAS provides two different systems, one for disordered systems
> described by g(r) and one for systems described by atomic positions,
> then maybe the 'different&more complicated' part is only for the
> atom-position case.

I'm not sure, but I *think* they do try to do something fairly sophisticated
with disorder in MS paths, including modeling (aka making assumptions
about) MS between absorber and near-neighbors (ie, 0-1-0-1-0, etc).
Since they don't  use Fourier transforms, these MS contributions need to
be included even for a "single shell analysis".    A highly non-Gaussian
g(R) would seem to complicate this to me.    As above, I  trust the GNXAS
folks on all this, but I don't  fully understand all the details, and am very
glad to use Fourier transforms myself.


More information about the Ifeffit mailing list