[Ifeffit] normalization methods

Matt Newville newville at cars.uchicago.edu
Wed May 15 10:25:23 CDT 2013

Hi Matthew,

On Wed, May 15, 2013 at 9:57 AM, Matthew Marcus <mamarcus at lbl.gov> wrote:
> What I typically do for XANES is divide mu-mu_pre_edge_line by a linear
> function which goes through the post-edge oscillations.
> This division goes over the whole data range, including pre-edge.  If the
> data has obvious curvature in the post-edge, I'll use a higher-order
> polynomial.  For transmission data, what sometimes linearizes the background
> is to change the abscissa to 1/E^2.7 (the rule-of-thumb absorption
> shape) and change it back afterward.  All this is, of course, highly
> subjective and one of the reasons for taking extended XANES data (300eV,
> for instance).  For short-range XANES, there isn't enough info to do more
> than divide by a constant.  Once this is done, my LCF programs allow
> a slope adjustment as a free parameter, thus muNorm(E) =
> (1+a*(E-E0))*Sum_on_ref{x[ref]*muNorm[ref](E)}.  A sign that this degree of
> freedom
> may be being abused is if the sum of the x[ref] is far from 1 or if
> a*(Emax-E0) is large.  Don't get me started on overabsorption :-)
>         mam

Thanks -- I should have said that pre_edge() can now do a
victoreen-ish fit, regressing a line to mu*E^nvict (nvict can be any
real value).

Still, it seems that the current flattening is somewhere between
"better" and "worse", which is unsettling...  Applying the
"flattening" polynomial to the pre-edge range definitely seems to give
poor results, but maybe some energy-dependent compromise is possible.

And, of course, over-absorption is next on the list!


More information about the Ifeffit mailing list