[Ifeffit] Asymmetric error bars in IFeffit
frenkel at bnl.gov
Sun Oct 24 19:59:15 CDT 2010
It is a strange result. Suppose you fit a bulk metal foil and vary the 1nn coordination number. You will not get 12 +/- 1000. You will get about 12 +/- 0.3 depending on the data quality and the k range, and on the amplitude factor you fix constant. Then, suppose you take your formula for a particle radius from your JAP article and propagate this uncertainty to get the radius uncertainty. That would give you a huge error because you are in the flat region of the N(R) function and R does bit affect N.
The meaning of your large error bar is, I think, that you are in such a large limit of sizes that they cannot be inverted to get N and thus the errors cannot be propagated to find Delta R.
Why don't you try to obtain N instead of R? You will get much smaller error bars and you can find the lower R limit from your N(R) equation (by plugging in N - deltaN you will find R - delta R).
The right limit is infinity as you pointed out.
From: ifeffit-bounces at millenia.cars.aps.anl.gov <ifeffit-bounces at millenia.cars.aps.anl.gov>
To: XAFS Analysis using Ifeffit <ifeffit at millenia.cars.aps.anl.gov>
Sent: Fri Oct 22 16:23:08 2010
Subject: [Ifeffit] Asymmetric error bars in IFeffit
I'm puzzling over an issue with my latest analysis, and it seemed like the sort of thing where this mailing list might have some good ideas.
First, a little background on the analysis. It is a simultaneous fit to four samples, made of various combinations of three phases. Mossbauer has established which samples include which phases. One of the phases itself has two crystallographically inequivalent absorbing sites. The result is that the fit includes 12 Feff calculations, four data sets, and 1000 paths. Remarkably, everything works quite well, yielding a satisfying and informative fit. Depending on the details, the fit takes about 90 minutes to run. Kudos to Ifeffit and Horae for making such a thing possible!
Several of the parameters that the fit finds are "characteristic crystallite radii" for the individual phases. In my published fits, I often include a factor that accounts for the fact that a phase is nanoscale in a crude way: it assumes the phase is present as spheres of uniform radius and applies a suppression factor to the coordination numbers of the paths as a function of that radius and of the absorber-scatterer distance. Even though this model is rarely strictly correct in terms of morphology and size dispersion, it gives a first-order approximation to the effect of the reduced coordination numbers found in nanoscale materials. Some people, notably Anatoly Frenkel, have published models which deal with this effect much more realistically. But those techniques also require more fitted variables and work best with fairly well-behaved samples. I tend to work with "messy" chemical samples of free nanoparticles where the assumption of sphericity isn't terrible, and the size dispersion is difficult to model accurately.
At any rate, the project I'm currently working on includes a fitted characteristic radius of the type I've described for each of the phases in each of the samples. And again, it seems to work pretty well, yielding values that are plausible and largely stable.
That's the background information. Now for my question:
The effect of the characteristic radius on the spectrum is a strongly nonlinear function of that radius. For example, the difference between the EXAFS spectra of 100 nm and 1000 nm single crystals due to the coordination number effect is completely negligible. The difference between 1 nm and 10 nm crystals, however, is huge.
So for very small crystallites, IFeffit reports perfectly reasonable error bars: the radius is 0.7 +/- 0.3 nm, for instance. For somewhat larger crystallites, however, it tends to report values like 10 +/- 500 nm. I understand why it does that: it's evaluating how much the parameter would have to change by to have a given impact on the chi square of the fit. And it turns out that once you get to about 10 nm, the size could go arbitrarily higher than that and not change the spectrum much at all. But it couldn't go that much lower without affecting the spectrum. So what IFeffit means is something like "the best fit value is 10 nm, and it is probable that the value is at least 4 nm." But it's operating under the assumption that the dependence of chi-square on the parameter is parabolic, so it comes up with a compromise between a 6 nm error bar on the low side and an infinitely large error bar on the high side. Compromising with infinity, however, rarely yields sensible results.
Thus my question is if anyone can think of a way to extract some sense of these asymmetric error bars from IFeffit. Here are possibilities I've considered:
--Fit something like the log of the characteristic radius, rather than the radius itself. That creates an asymmetric error bar for the radius, but the asymmetry the new error bar possesses has no relationship to the uncertainty it "should" possess. This seems to me like it's just a way of sweeping the problem under the rug and is potentially misleading.
--Rerun the fits setting the variable in question to different values to probe how far up or down it can go and have the same effect on the fit. But since I've got nine of these factors, and each fit takes more than an hour, the computer time required seems prohibitive!
--Somehow parameterize the guessed variable so that it does tend to have symmetric error bars, and then calculate the characteristic radius and its error bars from that. But it's not at all clear what that parameterization would be.
--Ask the IFeffit mailing list for ideas!
Sarah Lawrence College
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Ifeffit