[Ifeffit] Debye factor and S02 correlation

Matt Newville newville at cars.uchicago.edu
Sat Nov 2 09:19:08 CST 2002

Hi Paul,

> I thought I would parrot back something I read in one of Bruce's
> tutorials (that seemed to work well for me), namely that the Debye
> factor, sigma has a k dependence while S02 does not.  This means that
> if you can Fourier isolate the first shell (and you can assume a
> coordination number), you can determine a value for S02 by a fit using
> different k weights.  You simply fit sigma for various fixed values of
> S02 (e.g. 0.6 - 1.0) and repeat the process for different k weights
> (e.g. k, k^2, k^3).  The resulting plot of sigma vs. S02 will result in
> a straight line for a given k weighting.  The three different k weights
> will intersect at a single point (or almost so) and the value of S02 at
> this point will be the value of S02 for the sample.

Yes, this trick of 'multiple k-weights' is so useful that the
feffit() command should probably have  as an easy-to-use
option for this, say by supplying a list of kweights:
  path(1, feff=feff0001.dat, s02=my_amp, sigma2=my_ss2)
  feffit(data=my_data.chi, 1, ...,  kweight='1,2,3')

That would probably be much easier on the user than using the
multiple data set mechanism.

This does not currently exist, but it would not be too difficult
to implement.  How to manage the automatically generated array
outputs is not obvious. I'd probably have the array outputs use
only the first k-weight in the list (which wouldn't need to be
the lowest k-weight).  Of course, other outputs can be made with
ff2chi()  and fftf() after the fit.  I don't currently know how
the use of restraints would impact a fit with multiple k-weights.

This should go in the core so that a 'multiple k-weight' fit
counts as only one data set in a multiple-data-set fit (and so
that I can use it from the command line!).  Bruce and I are
almost ready to release 1.0075, so this may have to wait a few
weeks.  Are there any preferences on how this should work?  Any
requests for similar things?

> S02, the passive electron reduction factor is a term that
> encompasses many body effects, in particular the effect of the
> core hole.  It is also as such said to have a "weak energy and
> path dependence" [J.J.  Rehr and R.C. Albers in Reviews of
> Modern Physics, v. 72, no. 3 (2000)].  The question is how fair
> is it to assume that S02 is a constant independent of shell, or
> in other words should S02 be allowed to vary with shell (e.g.
> with significant multiple scattering contributions?)

John may have a different view on this, but my view is that the
errors in the calculated mean-free path may have a much stronger
energy dependence than the errors in the calculated So2.  From
the analysis point-of-view, I prefer to think of So2 as
k-independent, and put all k-dependent pieces go into lambda(k)
or F(k).  Feff tries to include all loss terms as well as it can.

> I don't remember the paper offhand, but as I recall, in a paper
> by Bruce, the value of S02 was ascribed a value greater than
> unity.  I didn't grok the explanation at the time, and was
> wondering if Bruce (or anyone else) in his ever-expanding
> knowledge of exafs has an explanation for when/if S02 can be
> greater than unity.  Certainly if you consider Rehr's
> definition of the overlap integral of the N-1 electron
> wavefunction with and without a core hole, the value of S02
> cannot be greater than unity[same reference, p. 636].  Any
> comments?

So2 _is_ calculated (if crudely in Feff6 and 7 -- I don't know if
Luke Campbell's work on improved So2 is included in Feff8 yet).
So one might even expect that So2 should be 1, and even find it a
little strange that it's usually around 0.9.  Clearly, there are
loss terms that are not taken into account well enough in Feff.
My view is that it's not well known whether this is dominated by
an k-dependent term (ie, should be put into F or lambda) or a
k-independent term (So2).


More information about the Ifeffit mailing list