Scroll to navigation

Xray::Absorption::McMaster(3pm) User Contributed Perl Documentation Xray::Absorption::McMaster(3pm)

"cross_section"
Example:

   $xsec = Xray::Absorption -> cross_section($elem, $energy, $mode);
   @xsec = Xray::Absorption -> cross_section($elem, \@energy, $mode);
    

The $mode argument is different here than for the other resources. The options are "xsec", "photo", "coherent" and "incoherent", telling this method to return the full cross-section or just the photoelectric, coherent, or incoherent portions.

The values for all cross-sections are computed as log-log polynomials as described in the original paper by McMaster et al.

NAME

Xray::Absorption::McMaster - Perl interface to the McMaster tables

SYNOPSIS

   use Xray::Absorption;
   Xray::Absorption -> load("mcmaster");

See the documentation for Xray::Absorption for details.

DESCRIPTION

This module is inherited by the Xray::Absorption module and provides access to the data contained in the 1969 McMaster tables.

The data in this module, commonly referred to as "The McMaster Tables", was originally published as

  Compilation of X-Ray Cross Sections
  W.H. McMster, N. Kerr Del Grande, J.H. Mallett, J.H. Hubbell
  National Bureau of Standards
  UCRL-50174 Section II Revision 1
  (1969)
  Available from National Technical Information Services L-3
  United States Department of Commerce

This can be a bit difficult to find. IIT's Galvin library has kindly made a scan of it available: http://www.gl.iit.edu/govdocs/resources/xray.html

The data is contained in a database file called mcmaster.db which is generated at install time from a flat text database of the McMster data. The data originally comes from mucal.f, a Fortran subroutine originally written by Dr. Pathikrit Bandhyapodhyay.

The required Chemistry::Elements module is available from CPAN in the miscellaneous modules section.

EDGE AND LINE ENERGIES

The McMaster data resource only includes K and L 1-3 edges. For light elements, it provides only a single L edge energy -- that for the L1 edge. For heavier elements it provides a single M energy, the energy of the M1 edge. It only supplies four generic fluorescence line energies, Kalpha, Kbeta, Lalpha, and Lbeta. In each case the energy provided is the energy of the brightest line of that sort.

BUGS AND THINGS TO DO

  • Make sure this handles fluorescence lines which are in other resources, but not in this resource in a sensible manner.
  • What happens if you call "line_toggle" when this is loaded? How about when elam was loaded but then you switch to this one?

AUTHOR

  Bruce Ravel, bruce@phys.washington.edu
  http://feff.phys.washington.edu/~ravel/software/Absorption/
2022-06-28 perl v5.34.0