XATT_EL Name
XATT_EL
Author
Craig B. Markwardt, NASA/GSFC Code 662, Greenbelt, MD 20770
craigm@lheamail.gsfc.nasa.gov
UPDATED VERSIONs can be found on my WEB PAGE:
http://cow.physics.wisc.edu/~craigm/idl/idl.html
Purpose
Compute X-ray attenuation coefficient from NIST tables
Major Topics
Physics
Calling Sequence
MU_RHO = XATT_EL(ELEMENT, ENERGY) Description
This function computes the X-ray mass absorption coefficient for a
given element, based on the NIST mass absorption coefficients.
These tables are most well sampled for energies between 1 keV and
100 MeV. These coefficients are from the tables at
http://physics.nist.gov/PhysRefData/XrayMassCoef/cover.html
The user specifies the atomic elements, either by the atomic symbol
(as a character string), or by the atomic number (Z). Values are
interpolated in log-log space.
For a compound or mixture, the ELEMENT parameter can be an array.
The elements are weighted according to the WEIGHTS keyword. The
elements in the compound may be weighted by the relative masses of
each element (BY='MASS') or by the relative number of atoms of each
element (BY='NUMBER'). In the BY='NUMBER' case, standard atomic
masses are used.
The energy is specified as either a scalar value or an array, and
the same number of absorption coefficients are returned.
The transmission of a medium is then defined by:
TRANS = EXP(- MU_RHO * RHO * THICKNESS )
where MU_RHO is the value returned by this function (cm^2/g), RHO
is the mass density of the medium (g/cm^3), and THICKNESS is the
thickness of the material (cm).
The data are stored within this function. The routine should be in
the user's path so that the data can be located.
Inputs
EL - scalar or vector quantity specifying atomic elements. Either
a string giving the atomic symbol, or an integer giving the
atomic number, Z. A vector indicates a compound/mixture
consisting of multiple elements to be combined.
ENERGY - real scalar or array, gives the energy in keV of the
X-ray being absorbed. Keywords
WEIGHTS - an array of weights to be used in combining multiple
elements. Elements should be combined in proportion to
their masses or number, according to the 'BY' keyword.
Weights are normalized to unity if necessary.
Default: equal weight to each element
BY - indicates how multiple elements weighting factors are to be
used. If BY='WEIGHT' or BY='MASS', the WEIGHTS are assumed
to be the proportion of each element by mass. If BY='NUMBER',
the WEIGHTS are assumed to be the number of atoms of each
element. The atomic weight of each element is assumed to be
the mean atomic weight, averaged over the natural isotopic
abundences (See NIST web page
http://physics.nist.gov/PhysRefData/Compositions/).
Default: 'WEIGHT'
ATTENTYPE - type of scattering cross section to compute. One of
the following:
0 = coherent scattering (Thompson)
1 = incoherent scattering (Compton)
2 = photoelectric absorption
3 = pair production by nuclear field
4 = pair production by electron field
5 = total attenuation/scattering cross section
6 = total non-coherent scattering cross section
NOTE: ATTENTYPE always overrides the shortcut keywords
below.
Default: 5
COHERENT_SCATTERING - if set, equivalent to ATTENTYPE=0
INCOHERENT_SCATTERING - if set, equivalent to ATTENTYPE=1
PHOTOELECTRIC - if set, equivalent to ATTENTYPE=2
PAIR_NUCLEAR - if set, equivalent to ATTENTYPE=3
PAIR_ELECTRON - if set, equivalent to ATTENTYPE=4
TOTAL - if set, equivalent to ATTENTYPE=5
NO_COHERENT - if set, equivalent to ATTENTYPE=6
Returns
MU_RHO - the mass attenuation coefficient, with units of cm^2/g.
Example
MU_RHO = XATT_EL('Al', [20.,30,40])
compute coefficient for Aluminum at 20, 30 and 40 keV.
MU_RHO = XATT_EL(47, 60)
compute coefficient for Silver (Z=47) at 60 keV.
MU_RHO = XATT_EL(['H','O'], WEIGHTS=[2,1], BY='NUMBER', 60)
compute coefficient for water (H2O) at 60 keV.
References
Hubbell, J.H. and Seltzer, S.M. (2004),
Tables of X-Ray Mass Attenuation Coefficients and Mass
Energy-Absorption Coefficients (version 1.4).
[Online] Available: http://physics.nist.gov/xaamdi
National Institute of Standards and Technology, Gaithersburg, MD.
Originally published as NISTIR 5632, National Institute of
Standards and Technology, Gaithersburg, MD (1995).
Coursey, J. S., Schwab, D. J. and Dragoset, R. A.
Atomic Weights and Isotopic Compositions (with Relative Atomic
Masses)
Web page http://physics.nist.gov/PhysRefData/Compositions/
Visited March 2006
See Also
Modification History
Written, 17 Jul 2002, CM
Documented, 24 Jul 2002, CM
Changed to more robust (?) way to determine path, 24 Jan 2003, CM
Use ROUTINE_INFO to determine path, 10 Mar 2003, CM
Add ability to process compounds and mixtures, 30 Jun 2005, CM
Completely revamp to handle the full XCOM cross section list, 19
Jul 2005, CM
Add the BY keyword for handling molecules by atomic number instead
of weight, 16 May 2006
Document difference between coherent/incoherent scattering,
2010-11-27, CM