[Ifeffit] fitting with lots of variables

Mark Jensen mjensen at anl.gov
Wed Jan 21 13:24:21 CST 2004


I was just contemplating how I might answer your question from my experience
when Bruce's e-mail came through, leaving me with nothing subsansive to say.
Thanks, Bruce! He's right on the money in both areas.

First, it's cheating to extend the R range when you're not trying to fit
paths over that range.
Second, if you need 18 parameters and you're only allowed 15, you're going
to have to use math expressions, or fix some parameters at reasonable values
taken from averages, commonly used assumptions (like S0^2 = 0.9), or from
other similar systems.

Mark Jensen

-----Original Message-----
From: ifeffit-bounces at millenia.cars.aps.anl.gov
[mailto:ifeffit-bounces at millenia.cars.aps.anl.gov]On Behalf Of Bruce
Sent: Wednesday, January 21, 2004 1:10 PM
To: k-kupiecki at northwestern.edu; XAFS Analysis using Ifeffit
Subject: Re: [Ifeffit] fitting with lots of variables

On Wednesday 21 January 2004 01:28 pm, k-kupiecki at northwestern.edu wrote:

Hi Kristine,

It'll be interesting to hear what everyone else has to say, but I
think I can offer a few tidbits of wisdom.

> 1)(Assuming I'm already using the largest suitable k-range) -- Increase
> the r-range for the fit (i.e. if fitting the single scattering paths to 4
> Ang requires 18 variables but I only have 15 independent points with
> r-range 1-4... perhaps increase the r-range 1-4.5 (18 ind. points in this
> case) or 1-5 (20 ind. points in this case) while still including the
> paths less than 4Ang in the fit.

This will not necessarily solve the problem.  If you increase the R
range without intending to actually fit the additional peaks, you may
be cheating in the sense that you are pumping up the value of the
Nyquist criterion without actually using the additional information.

Take an extreme example.  Consider a very disordered material which
has a single peak near 2 angstroms and no further peaks.  You might,
then, fit from 1-3 in R space.  You could set Rmax to 5, thereby
doubling the Nyquist criteria, but you almost certainly will not be
changing the fit in any other way.  That is, you are not using the
additional range in R.  Indeed, in my example, there is no additional
information because there is only the one peak.

The implicit assumption when you choose the R range is that you will
then go ahead and actually try to fit those Fourier components.  If
your fitting model does not actually attempt to fit well between 4.5
and 5 Angstroms, then you are not really doing the right thing by
fooling Artemis and Ifeffit into thinking that you are.

> 2) Lump some of the paths' DelRs into expressions (i.e. having DelRs =
> eta1*reff, or eta2*reff, or eta3*reff etc for groupings of paths
> dependent upon distance from core atom).

Now *this* is a good idea.  That is, after all, what math expressions
are all about.  Most of the examples I give in the things I write
discuss math expressions being used to build prior knowledge into a
fit.  Another use of restraints is to limit the freedom of a fit in
the case when you are running out of infomation.

In your case, you are making the assumption that groups of paths have
path lengths (or, perhaps, changes in path length) which cannot be
distinguished at the level of resolution offered by the data and by
the fitting model.  That happens all the time and is a perfectly good
use of math expressions and constraints.

One nice thing about doing these sorts of freedom-limiting constraints
is that you can choose to expand them or lift them as you begin to
understand more about your data.  That is, you may impose this sort of
constraint early on in the analysis, then realize later that your data
does in fact allow lifting some or all of the constraint.

A couple more things to think about.

1.  You might consider simply asserting something about the fit.  For
    example, you might choose to assert that s02 is 0.9 rather than
    float it.  This may lead to some systematic error in the
    determination of sigma^2 values, but may help you find the
    freedom you need to determine delR values.

2.  You can look for trends in data sets.  For example, if you have
    data on the same material at many temperatures, you may notice
    that s02, averaged over all data sets, is (to make it up off the
    top of my head) 0.875 +/- 0.103.  You may then assert that the s02
    is 0.875 and continue on.

    There are lots of kinds of data sets in which you may look for
    trends.  For instance, if you have a series of samples with
    different amounts of dopant, you might expect certain e0 or s02
    (or even delR or sigma^2) values to be the same across all data
    sets.  Looking for trends in data sets is a very powerful tool and
    is a good reason to measure data in series.  For instance, if you
    have a feul cell material that is intended to be operated at some
    elevated temperature, you probably should measure it at that
    temperature *and* at several others so you can find the trends,


 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/

Ifeffit mailing list
Ifeffit at millenia.cars.aps.anl.gov

More information about the Ifeffit mailing list