Xray::...antler(3pm)

πŸ“¦
version 3.0.1 Β· 2 versions
  • 3.0.1 Β· debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking (latest)
  • 3.0.1 Β· ubuntu jammy
, in debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– Xray::Absorption::Chantler πŸ’–

okay so bestie, this is the Perl manual page for Xray::...antler(3pm) β€” it lives in the User Contributed Perl Documentation section, and it's genuinely iconic. buckle up. πŸŽ€


✨ NAME ✨

Xray::Absorption::Chantler β€” a Perl interface to the Chantler tables. that's it, that's the whole name, slay. πŸ’…


🌸 SYNOPSIS 🌸

like, the whole vibe in two lines:

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

and then go read the docs for Xray::Absorption for the details, ok? iykyk. πŸ¦‹


πŸ’œ DESCRIPTION πŸ’œ

so this module gets inherited by the Xray::Absorption module, and it's the plug that gives you access to all the data chillin' inside the Chantler tables of anomalous scattering factors plus line and edge energies. main character energy fr. πŸ‘‘

the data in here β€” everybody calls it "The Chantler Tables" β€” was published as:

  C. T. Chantler
  Theoretical Form Factor, Attenuation, and Scattering Tabulation
     for Z = 1 - 92 from E = 1 - 10 eV to E = 0.4 - 1.0 MeV
  J. Phys. Chem. Ref. Data 24, 71 (1995)

and you can find that on the web at:

  http://physics.nist.gov/PhysRefData/FFast/Text/cover.html

the Chantler data itself is available on the web at:

  http://physics.nist.gov/PhysRefData/FFast/html/form.html

and if you want even more info, C.T. Chantler has a personal web page:

  http://optics.ph.unimelb.edu.au/~chantler/home.html

okay now the fun part πŸ’– β€” the data lives inside a database file called chantler.db, which gets generated at install time from the flat text files of the Chantler data. it's stored in a Storable archive using "network" ordering. the way that this is literally so smart?? it gives you speedy disk and memory access plus network and platform portability. obsessed. ✨

the required "File::Spec", "Chemistry::Elements", and "Storable" modules are all available from CPAN. 🫢


πŸ”₯ METHODS πŸ”₯

ngl, the methods in this module behave a bit different from the other modules used by "Xray::Absorption". so this section is specifically about the methods that act differently for this data resource. no cap. πŸ’―

  • "get_energy" β€” example time:
$energy = Xray::Absorption -> get_energy($elem, $edge);

this behaves similarly to the "get_energy" method of the other resources. BUT ✨ when you're using the Chantler data resource, $edge can be any of K, L1-L3, M1-M5, N1-N7, O1-O5, or P1-P3. here's the tea though: line energies are not supplied with the Chantler data set 🫠 β€” so the line energies from the McMaster tables are used instead.

  • "cross_section" β€” example time again:
$xsec = Xray::Absorption -> cross_section($elem, $energy, $mode);

this behaves slightly differently from the similar method for the McMaster and Elam resources. the Chantler tables contain anomalous scattering factors and the sum of the coherent and incoherent scattering cross-sections. the photo-electric cross-section gets calculated from the imaginary part of the anomalous scattering, using this formula:

mu = 2 * r_e * lambda * conv * f_2

where "r_e" is the classical electron radius, lamdba is the photon wavelength, and conv is a units conversion factor. and the numbers, bestie, the NUMBERS:

r_e    = 2.817938 x 10^-15 m
lambda = 2 pi hbar c / energy
hbar*c = 1973.27053324 eV*Angstrom
conv   = Avagadro / atomic weight
       = 6.022045e7 / weight in cgs

okay so the $mode argument is different here than for the other resources πŸ‘€. the options are "xsec", "f1", "f2", "photo", and "scatter", and they tell this method to return, respectively:

  • the full cross-section cross-section
  • the real or imaginary anomalous scattering factor
  • just the photoelectric crosss-section
  • or just the coherent and incoherent scattering

the values for f1 and f2 are computed by linear interpolation of a semi-log scale, as described in the literature reference. and care is taken to avoid the discontinuities at the edges β€” because we do not do jump scares around here. πŸ™ˆ


🌈 EDGE AND LINE ENERGIES 🌈

the Chantler data resource provides a fairly complete set of edge energies. any edge tabulated on the Gwyn William's Table of Electron Binding Energies for the Elements β€” yes, that one, the one published by NSLS and taped on the door of just about every hutch at NSLS πŸšͺ✨ β€” is in the Chantler data resource. the Chantler data comes with the same, limited set of fluorescence energies as McMaster. that's just how it is. πŸ’…


πŸ’€ BUGS AND THINGS TO DO πŸ’€

  • it would be nice to improve the inter-/extrapolation near absorption edges. as it stands, these tables produce really poor DAFS output. 😭 yeah. that's the bug. dramatic but true.

πŸ‘‘ AUTHOR πŸ‘‘

  Bruce Ravel, bruce@phys.washington.edu
  http://feff.phys.washington.edu/~ravel/software/Absorption

and that's the whole page, bestie!! πŸŽ€ this was rendered from perl v5.34.0, dated 2022-06-28, and it's the Xray::...antler(3pm) page from the User Contributed Perl Documentation. mwah. πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from