[HOWTO] converting experimental mu(E) in cm^-1
Hi,
I would like your opinion on the procedure to convert the experimental
mu_exp(E) in arbitrary units (counts) to mu(E) in cm^-1.
This is my "student" procedure:
1. take mu_exp(E) - with EXAFS - spectrum in counts
2. take mu_th(E) - without EXAFS - spectrum in cm^-1 (from MacMaster or XOP
software)
3. plot 1+2
4. while mu_exp(E) != mu_th(E) do (by hand!)
4a. mu(E) = A * mu_exp(E) + B
When the two spectra coincide (more or less) I assume that the mu(E) is
converted in cm^-1 units. Is this right?
Does it already exist a software that makes this work automatically? Could
be interesting to implement it in Athena?
Thanks,
M.
--
Mauro Rovezzi
Hi Mauro,
I would like your opinion on the procedure to convert the experimental mu_exp(E) in arbitrary units (counts) to mu(E) in cm^-1.
Does it already exist a software that makes this work automatically? Could be interesting to implement it in Athena?
Here is our approach for normalization: mu_th = S*mu_exp + Bkg where S is the scaling factor and Bkg is the background function (both pre- and post-edge). In addition to polynomials, an erfc() are used to account for the scattering leaking into the fluorescence window. This normalization scheme gives us fairly good results for a series of data with changes one XANES. If you like, I can send you my codes (in MATLAB) and the manuscript (written 3 years ago for JSR, but got frozen on someone's desk). Tsu-Chien <Chien>001000</Chien>
Dead Mauro,
I would like your opinion on the procedure to convert the experimental mu_exp(E) in arbitrary units (counts) to mu(E) in cm^-1.
Why you want mu in cm^-1? This is not necessarily easy to get from an XAFS measurement. For transmission data, what is recorded is counts in an ion chamber or PIN diode that sample the x-ray intensity before and after the sample. Calling these intensities V0 and V1, we typically do the analysis with log(V0/V1). This would be _proportional_ to x*mu, but not an absolute measure of x*mu. To get true measure of absorbance, you'd need to include the ion chamber efficiencies, amplifier gains, and any absorption losses (windows, air) between the two ion chambers as well as the sample thickness to convert the ion chamber currents into a direct measure of mu. A good start would be to measure log(V0/V1) on a blank sample -- something that is rarely done for XAFS. Even then, the average sample thickness would need to be known to pretty high precision to get an absolute measure of mu, as log(I0/I1) is xmu (which is unitless), not mu(E). Finally, mu(E) in cm^-1 has to assume a density for the material. The result is that log(V0/V1) is pretty far removed from an absolute measure of mu in cm^-1. Ifeffit does include the Cromer-Libermann data to help with the corrections as you outlined, but it's not enough to get you to cm^-1 by itself. Perhaps you could explain what is you are trying to do and why? Thanks, --Matt On Fri, 7 May 2004 mauro@rulp.org wrote:
Hi,
I would like your opinion on the procedure to convert the experimental mu_exp(E) in arbitrary units (counts) to mu(E) in cm^-1.
This is my "student" procedure:
1. take mu_exp(E) - with EXAFS - spectrum in counts
2. take mu_th(E) - without EXAFS - spectrum in cm^-1 (from MacMaster or XOP software)
3. plot 1+2
4. while mu_exp(E) != mu_th(E) do (by hand!)
4a. mu(E) = A * mu_exp(E) + B
When the two spectra coincide (more or less) I assume that the mu(E) is converted in cm^-1 units. Is this right?
Does it already exist a software that makes this work automatically? Could be interesting to implement it in Athena?
Thanks, M.
-- Mauro Rovezzi
- Physics student University of Rome "Tor Vergata", ESRF Beamline BM8 - GILDA _______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
On Mon, May 10, 2004 at 09:17:52PM -0500, Matt Newville wrote:
Dead Mauro,
Sorry for the delay in my answer (studying...)
I would like your opinion on the procedure to convert the experimental mu_exp(E) in arbitrary units (counts) to mu(E) in cm^-1.
Why you want mu in cm^-1? This is not necessarily easy to get from an XAFS measurement.
I'm dealing with the selfabsorption correction in Mo/Si multilayers with
standing-wave-assisted EXAFS. In the fluorescence formula I have to multiply
mu(E) for the thickness of the sample to obtain a pure number, so I need
(cm^-1)*(cm).
Mauro
--
Mauro Rovezzi
Hello, I am in the very first steps of trying to use your programs to fit EXAFS data collected on a nickel protein. I have generated a very simple set of coordinate files using some modeling programs, and I would like to use the simplest of them (Ni(H2O)6) to see what happens with feff6. I am trying to run feff6 on my G4 using the following feff.inp file, and I get the following message: Feff 6L.02 Error reading input, bad line follows: CONTROL 1 1 1 1 Fatal Error: at RDINP Here is the .inp file I think I should be using. Please let me know what is wrong. I am sure it is a stupid thing. Stefano TITLE Ni(H2O)6 HOLE 1 1.0 * Ni K edge (8333.0 eV), second number is S0^2 * mphase,mpath,mfeff,mchi CONTROL 1 1 1 1 PRINT 1 0 0 0 RMAX 6.0 POTENTIALS * ipot Z element 0 28 Ni 1 8 O ATOMS * this list contains 7 atoms * x y z ipot tag distance 0.00000 0.00000 0.00000 0 Ni1 0.00000 0.09500 -1.90300 -0.19000 1 O1_1 2.08420 -0.16000 1.88500 0.33200 1 O1_1 2.08420 -1.91100 -0.09400 0.10300 1 O1_1 2.08420 1.91900 -0.02900 -0.07200 1 O1_1 2.08420 0.08300 0.46500 -1.86000 1 O1_1 2.08420 0.10300 -0.22800 1.90400 1 O1_1 2.08420 END
Hi Mauro, On Tue, 11 May 2004 mauro@rulp.org wrote:
I'm dealing with the selfabsorption correction in Mo/Si multilayers with standing-wave-assisted EXAFS. In the fluorescence formula I have to multiply mu(E) for the thickness of the sample to obtain a pure number, so I need (cm^-1)*(cm).
Oh. You're original question did not mention self-absorption corrections at all. You asked about converting measured XAFS to mu in cm^-1. In general, this conversion (that is, to an absolute measure of absorption) is challenging for transmission data and essentially impossible for fluorescence data. But to do the self-absorption corrections on a well-characterized sample, you can use tabulated cross-sections (using barns/atoms is HIGHLY recommended over cm^2/gr or cm^-1 unless you have a pure compound: densities do not add!), and scale the XAFS wiggles to the edge jump of the absorbing atom. That assumes that the tabulated value for mu are correct except that they ignore the XAFS. I'm not sure I understand 'standing-wave-assisted EXAFS'. I'd interpret this to mean the measurements are done near the critical angle to control the penetration depth. Is that right? If so, and if you're asking for advice on self-absorption corrections, you'd need to give more details layer thickness, and measurement geometry. Hope that helps, --Matt
Hi Matt, On Wed, May 12, 2004 at 01:41:49PM -0500, Matt Newville wrote:
But to do the self-absorption corrections on a well-characterized sample, you can use tabulated cross-sections (using barns/atoms is HIGHLY recommended over cm^2/gr or cm^-1 unless you have a pure compound: densities do not add!), and scale the XAFS wiggles to the edge jump of the absorbing atom. That assumes that the tabulated value for mu are correct except that they ignore the XAFS.
Ok, this is what I normally do "by hand". The first part of my question - if this is right - has been widely answered by you and Tsu-Chien. The second part concerned if someone has already written a routine that can match the tabulated cross-sections and the XAFS one automatically and then write out a file containing the scaled XAFS.
I'm not sure I understand 'standing-wave-assisted EXAFS'. I'd interpret this to mean the measurements are done near the critical angle to control the penetration depth. Is that right? If so, and if you're asking for advice on self-absorption corrections, you'd need to give more details layer thickness, and measurement geometry.
Yes, you are right. For standing-wave-assisted EXAFS I mean fluorescence
measurements done at gracing-incidence. In multilayers a standing wave field
occurs for reflection at the first Bragg reflection order, so a defined
shift of the standing wave field position leads to different weights of
absorption.
The experimental setup is phi+theta=90deg with a Ge detector (13 elements),
incidence angle (theta) in the range 0.400-0.700deg. Samples are 10-periods
multilayers with the following structure:
SiO_2(15A)/[Si(42A)/Mo(28A)]_10/Si_substrate
I would like to simulate (and then correct) the selfabsorption in these
samples but applying the standard formula doesn't work. In my opinion, I
think that this is due to the fact that the field intensity in the sample is
not exponentially decaying but oscillating+exponentially-decaying (because
it is a standing wave field).
Thanks,
Mauro
--
Mauro Rovezzi
On Thu, 13 May 2004 mauro@rulp.org wrote:
But to do the self-absorption corrections on a well-characterized sample, you can use tabulated cross-sections (using barns/atoms is HIGHLY recommended over cm^2/gr or cm^-1 unless you have a pure compound: densities do not add!), and scale the XAFS wiggles to the edge jump of the absorbing atom. That assumes that the tabulated value for mu are correct except that they ignore the XAFS.
Ok, this is what I normally do "by hand". The first part of my question - if this is right - has been widely answered by you and Tsu-Chien. The second part concerned if someone has already written a routine that can match the tabulated cross-sections and the XAFS one automatically and then write out a file containing the scaled XAFS.
I don't know if this exists right now, but it wouldn't be hard and would seem to help all self-absorption corrections. Currently, Ifeffit's bkg_cl() does the opposite of this: scaling CL calculations to match experimental data for background subtraction and normalization. It would not be hard to have this report the factors used so that the XAFS could be scaled back to the CL f". The CL values for f" are tabularized in units of electrons (as natural for scattering) but that can be scaled to barns/atom. It might be better to use the McMaster or Elam tables. This would not be too difficult to do with Bruce's perl modules or in Ifeffit itself. I'll put this on the Ifeffit to do list, but you might be able to roll something quick-n-dirty like this yourself faster than I get it in, especially since you're only working with one system.... I think all you'd have to do is scale the normalized XAFS to the edge jump from the tables.
Yes, you are right. For standing-wave-assisted EXAFS I mean fluorescence measurements done at gracing-incidence. In multilayers a standing wave field occurs for reflection at the first Bragg reflection order, so a defined shift of the standing wave field position leads to different weights of absorption.
The experimental setup is phi+theta=90deg with a Ge detector (13 elements), incidence angle (theta) in the range 0.400-0.700deg. Samples are 10-periods multilayers with the following structure:
SiO_2(15A)/[Si(42A)/Mo(28A)]_10/Si_substrate
I would like to simulate (and then correct) the selfabsorption in these samples but applying the standard formula doesn't work. In my opinion, I think that this is due to the fact that the field intensity in the sample is not exponentially decaying but oscillating+exponentially-decaying (because it is a standing wave field).
Are you working at the x-ray reflectivity critical angle (probably a property solely of the SiO2 layer, though 15A is thin!), or at a multilayer Bragg peak? Anyway, this seems wonderfully complicated -- congratulations!! --Matt
On Thu, May 13, 2004 at 12:49:44PM -0500, Matt Newville wrote:
I don't know if this exists right now, but it wouldn't be hard and would seem to help all self-absorption corrections. Currently, Ifeffit's bkg_cl() does the opposite of this: scaling CL calculations to match experimental data for background subtraction and normalization. It would not be hard to have this report the factors used so that the XAFS could be scaled back to the CL f". The CL values for f" are tabularized in units of electrons (as natural for scattering) but that can be scaled to barns/atom. It might be better to use the McMaster or Elam tables.
This would not be too difficult to do with Bruce's perl modules or in Ifeffit itself. I'll put this on the Ifeffit to do list, but you might be able to roll something quick-n-dirty like this yourself faster than I get it in, especially since you're only working with
Ifeffit's bkg_cl() seems a good starting point I will look forward for it and try to do something... (as soon as possible)
one system.... I think all you'd have to do is scale the normalized XAFS to the edge jump from the tables.
I have noticed that sometimes it isn't enough to scale the edge jump but also to subtract a linear function at the post-edge to adapt the slope to the tabulated.
Are you working at the x-ray reflectivity critical angle (probably a property solely of the SiO2 layer, though 15A is thin!), or at a multilayer Bragg peak?
The standing wave field is shifted changing the angle of incidence in the vicinity of the first-order multilayer Bragg peak, to vary the contribution of different regions. Then XAFS measurement is done for the chosen standing wave filed position.
Anyway, this seems wonderfully complicated -- congratulations!!
Thank you very much,
Mauro
--
Mauro Rovezzi
participants (4)
-
Matt Newville
-
mauro@rulp.org
-
Stefano Ciurli
-
Tsu-Chien Weng