The multislice algorithm [1] is a method for the simulation of the elastic interaction of an electron beam with matter, including all multiple scattering effects. The method is reviewed in the book by John M. Cowley, [2] and also the work by Ishizuka. [3] The algorithm is used in the simulation of high resolution transmission electron microscopy (HREM) micrographs, and serves as a useful tool for analyzing experimental images. [4] This article describes some relevant background information, the theoretical basis of the technique, approximations used, and several software packages that implement this technique. Some of the advantages and limitations of the technique and important considerations that need to be taken into account are described.
The multislice method has found wide application in electron microscopy and crystallography. The mapping from a crystal structure to its image or diffraction pattern is relatively well understood and documented. However, the reverse mapping from electron micrograph images to the crystal structure is generally more complicated. The fact that the images are two-dimensional projections of three-dimensional crystal structure makes it tedious to compare these projections to all plausible crystal structures. Hence, the use of numerical techniques in simulating results for different crystal structure is integral to the field of electron microscopy and crystallography. Several software packages exist to simulate electron micrographs.
There are two widely used simulation techniques that exist in literature: the Bloch wave method, [5] derived from Hans Bethe's original theoretical treatment, [6] and the multislice method. This article focuses on the multislice method for simulation of dynamical diffraction, including multiple elastic scattering effects. Most of the packages that exist implement the multislice algorithm along with Fourier analysis to incorporate electron lens aberration effects to determine electron microscope image and address aspects such as phase contrast and diffraction contrast. For electron microscope samples in the form of a thin crystalline slab in the transmission geometry, the aim of these software packages is to provide a map of the crystal potential, however this inversion process is greatly complicated by the presence of multiple elastic scattering.
The first description of what is now known as the multislice theory was given in the classic paper by Cowley and Moodie. [1] In this work, the authors describe scattering of electrons using a physical optics approach without invoking quantum mechanical arguments. Many other derivations of these iterative equations have since been given using alternative methods, such as Greens functions, differential equations, scattering matrices or path integral methods, see for instance the book by Lianmao Peng, Sergei Dudarev and Michael Whelan. [7]
A summary of the development of a computer algorithm from the multislice theory of Cowley and Moodie for numerical computation was reported by Goodman and Moodie. [8] They also discussed in detail the relationship of the multislice to the other formulations. Specifically, using Zassenhaus's theorem, this paper gives the mathematical path from multislice to 1. Schrödinger equation, 2. Darwin's differential equations, widely used for diffraction contrast Transmission electron microscopy (TEM) image simulations - the Howie-Whelan equations, [9] 3. Sturkey's scattering matrix method. [10] 4. the free-space propagation case, 5. The phase grating approximation, 6. A new "thick-phase grating" approximation, which has never been used, 7. Moodie's polynomial expression for multiple scattering, 8. The Feynman path-integral formulation, and 9. relationship of multislice to the Born series. The relationship between algorithms is summarized in Section 5.11 of Spence (2013), [11] (see Figure 5.9).
The form of multislice algorithm presented here has been adapted from Peng, Dudarev and Whelan 2003. [7] The multislice algorithm is an approach to solving the Schrödinger equation:
In 1957, Cowley and Moodie showed that the Schrödinger equation can be solved analytically to evaluate the amplitudes of diffracted beams. [1] Subsequently, the effects of dynamical diffraction can be calculated and the resulting simulated image will exhibit good similarities with the actual image taken from a microscope under dynamical conditions. Furthermore, the multislice algorithm does not make any assumption about the periodicity of the structure and can thus be used to simulate HREM images of aperiodic systems as well.
The following section will include a mathematical formulation of the Multislice algorithm. The Schrödinger equation can also be represented in the form of incident and scattered wave as:
where is the Green's function that represents the amplitude of the electron wave function at a point due to a source at point .
Hence for an incident plane wave of the form the Schrödinger equation can be written as
| (1) |
We then choose the coordinate axis in such a way that the incident beam hits the sample at (0,0,0) in the -direction, i.e., . Now we consider a wave-function with a modulation function for the amplitude. Equation ( 1 ) becomes then an equation for the modulation function, i.e.,
.
Now we make substitutions with regards to the coordinate system we have adhered, i.e.,
where .
Thus
,
where is the wavelength of the electrons with energy and is the interaction constant. So far we have set up the mathematical formulation of wave mechanics without addressing the scattering in the material. Further we need to address the transverse spread, which is done in terms of the Fresnel propagation function
.
The thickness of each slice over which the iteration is performed is usually small and as a result within a slice the potential field can be approximated to be constant . Subsequently, the modulation function can be represented as:
We can therefore represent the modulation function in the next slice
where, * represents convolution, and defines the transmission function of the slice.
Hence, the iterative application of the aforementioned procedure will provide a full interpretation of the sample in context. Further, it should be reiterated that no assumptions have been made on the periodicity of the sample apart from assuming that the potential is uniform within the slice. As a result, it is evident that this method in principle will work for any system. However, for aperiodic systems in which the potential will vary rapidly along the beam direction, the slice thickness has to be significantly small and hence will result in higher computational expense.
Data Points | N | Discrete FT | Fast FT | Ratio |
---|---|---|---|---|
64 | 6 | 4,096 | 384 | 10.7 |
128 | 7 | 16,384 | 896 | 18.3 |
256 | 8 | 65,536 | 2,048 | 32 |
512 | 9 | 262,144 | 4,608 | 56.9 |
1,024 | 10 | 1,048,576 | 10,240 | 102.4 |
2,048 | 11 | 4,194,304 | 22,528 | 186.2 |
The basic premise is to calculate diffraction from each layer of atoms using Fast Fourier Transforms (FFT) and multiplying each by a phase grating term. The wave is then multiplied by a propagator, inverse Fourier Transformed, multiplied by a phase grating term yet again, and the process is repeated. The use of FFTs allows a significant computational advantage over the Bloch Wave method in particular, since the FFT algorithm involves steps compared to the diagonalization problem of the Bloch wave solution which scales as where is the number of atoms in the system. (See Table 1 for comparison of computational time).
The most important step in performing a multislice calculation is setting up the unit cell and determining an appropriate slice thickness. In general, the unit cell used for simulating images will be different from the unit cell that defines the crystal structure of a particular material. The primary reason for this due to aliasing effects which occur due to wraparound errors in FFT calculations. The requirement is to add additional “padding” to the unit cell has earned the nomenclature “super cell” and the requirement to add these additional pixels to the basic unit cell comes at a computational price.
To illustrate the effect of choosing a slice thickness that is too thin, consider a simple example. The Fresnel propagator describes the propagation of electron waves in the z direction (the direction of the incident beam) in a solid:
Where is the reciprocal lattice coordinate, z is the depth in the sample, and is the wavelength of the electron wave (related to the wave vector by the relation ). In the case of the small-angle approximation ( 100 mRad) we can approximate the phase shift as . For 100 mRad the error is on the order of 0.5% since . For small angles this approximation holds regardless of how many slices there are, although choosing a greater than the lattice parameter (or half the lattice parameter in the case of perovskites) for a multislice simulation would result in missing atoms that should be in the crystal potential.
Additional practical concerns are how to effectively include effects such as inelastic and diffuse scattering, quantized excitations (e.g. plasmons, phonons, excitons), etc. There was one code that took these things into consideration through a coherence function approach [12] called Yet Another Multislice (YAMS), but the code is no longer available either for download or purchase.
There are several software packages available to perform multislice simulations of images. Among these is NCEMSS, NUMIS, MacTempas, and Kirkland . Other programs exist but unfortunately many have not been maintained (e.g. SHRLI81 by Mike O’Keefe of Lawrence Berkeley National Lab and Cerius2 of Accerlys). A brief chronology of multislice codes is given in Table 2, although this is by no means exhaustive.
Code Name | Author | Year Released |
---|---|---|
SHRLI | O’Keefe | 1978 |
TEMPAS | Kilaas | 1987 |
NUMIS | Marks | 1987 |
NCEMSS | O’Keefe & Kilaas | 1988 |
MacTEMPAS | Kilaas | 1978 |
TEMSIM | Kirkland | 1988 |
JMULTIS | Zuo | 1990 |
HREMResearch | Ishizuka | 2001 |
JEMS | Stadelmann | 2004 |
This software is developed by Earl Kirkland of Cornell University. This code is freely available as an interactive Java applet and as standalone code written in C/C++. The Java applet is ideal for a quick introduction and simulations under a basic incoherent linear imaging approximation. The ACEM code accompanies an excellent text of the same name by Kirkland which describes the background theory and computational techniques for simulating electron micrographs (including multislice) in detail. The main C/C++ routines use a command line interface (CLI) for automated batching of many simulation. The ACEM package also includes a graphical user interface that is more appropriate for beginners. The atomic scattering factors in ACEM are accurately characterized by a 12-parameter fit of Gaussians and Lorentzians to relativistic Hartree–Fock calculations.
This package was released from the National Center for High Resolution Electron Microscopy. This program uses a mouse-drive graphical user interface and is written by Roar Kilaas and Mike O’Keefe of Lawrence Berkeley National Laboratory. While the code is no longer developed, the program is available through the Electron Direct Methods (EDM) package written by Laurence D. Marks of Northwestern University. Debye-Waller factors can be included in as a parameter to account for diffuse scattering, although the accuracy is unclear (i.e. a good guess of the Debye-Waller factor is needed).
The Northwestern University Multislice and Imaging System (NUMIS) is a package is written by Laurence Marks of Northwestern University. It uses a command line interface (CLI) and is based on UNIX. A structure file must be provided as input in order to run use this code, which makes it ideal for advanced users. The NUMIS multislice programs use the conventional multislice algorithm by calculating the wavefunction of electrons at the bottom of a crystal and simulating the image taking into account various instrument-specific parameters including and convergence. This program is good to use if one already has structure files for a material that have been used in other calculations (for example, Density Functional Theory). These structure files can be used to general X-Ray structure factors which are then used as input for the PTBV routine in NUMIS. Microscope parameters can be changed through the MICROVB routine.
This software is specifically developed to run in Mac OS X by Roar Kilaas of Lawrence Berkeley National Laboratory. It is designed to have a user-friendly user interface and has been well-maintained relative to many other codes (last update May 2013). It is available (for a fee) from here.
This is a software for multislice simulation was written in FORTRAN 77 by J. M. Zuo, while he was a postdoc research fellow at Arizona State University under the guidance of John C. H. Spence. The source code was published in the book of Electron Microdiffraction. [13] A comparison between multislice and Bloch wave simulations for ZnTe was also published in the book. A separate comparison between several multislice algorithms at the year of 2000 was reported. [14]
The Quantitative TEM/STEM (QSTEM) simulations software package was written by Christopher Koch of Humboldt University of Berlin in Germany. Allows simulation of HAADF, ADF, ABF-STEM, as well as conventional TEM and CBED. The executable and source code are available as a free download on the Koch group website.
This is a code written by Vincenzo Grillo of the Institute for Nanoscience (CNR) in Italy. This code is essentially a graphical frontend to the multislice code written by Kirkland, with more additional features. These include tools to generate complex crystalline structures, simulate HAADF images and model the STEM probe, as well as modeling of strain in materials. Tools for image analysis (e.g. GPA) and filtering are also available. The code is updated quite often with new features and a user mailing list is maintained. Freely available on their website.
Multi-slice image simulations for high-resolution scanning and coherent imaging transmission electron microscopy written by Juri Barthel from the Ernst Ruska-Centre at the Jülich Research Centre. The software comprises a graphical user interface version for direct visualization of STEM image calculations, as well as a bundle of command-line modules for more comprehensive calculation tasks. The programs have been written using Visual C++, Fortran 90, and Perl. Executable binaries for Microsoft Windows 32-bit and 64-bit operating systems are available for free from the website.
OpenCL accelerated multislice software written by Adam Dyson and Jonathan Peters from University of Warwick. clTEM is under development as of October 2019.
cudaEM is a multi-GPU enabled code based on CUDA for multislice simulations developed by the group of [[Stephen Pennycook.
Diffraction is the interference or bending of waves around the corners of an obstacle or through an aperture into the region of geometrical shadow of the obstacle/aperture. The diffracting object or aperture effectively becomes a secondary source of the propagating wave. Italian scientist Francesco Maria Grimaldi coined the word diffraction and was the first to record accurate observations of the phenomenon in 1660.
In particle physics, the Dirac equation is a relativistic wave equation derived by British physicist Paul Dirac in 1928. In its free form, or including electromagnetic interactions, it describes all spin-1⁄2 massive particles, called "Dirac particles", such as electrons and quarks for which parity is a symmetry. It is consistent with both the principles of quantum mechanics and the theory of special relativity, and was the first theory to account fully for special relativity in the context of quantum mechanics. It was validated by accounting for the fine structure of the hydrogen spectrum in a completely rigorous way.
In quantum chemistry and molecular physics, the Born–Oppenheimer (BO) approximation is the best-known mathematical approximation in molecular dynamics. Specifically, it is the assumption that the wave functions of atomic nuclei and electrons in a molecule can be treated separately, based on the fact that the nuclei are much heavier than the electrons. Due to the larger relative mass of a nucleus compared to an electron, the coordinates of the nuclei in a system are approximated as fixed, while the coordinates of the electrons are dynamic. The approach is named after Max Born and his 23-year-old graduate student J. Robert Oppenheimer, the latter of whom proposed it in 1927 during a period of intense ferment in the development of quantum mechanics.
In quantum physics, a wave function, represented by the Greek letter Ψ, is a mathematical description of the quantum state of an isolated quantum system. In the Copenhagen interpretation of quantum mechanics, the wave function is a complex-valued probability amplitude; the probabilities for the possible results of the measurements made on a measured system can be derived from the wave function.
Electron density or electronic density is the measure of the probability of an electron being present at an infinitesimal element of space surrounding any given point. It is a scalar quantity depending upon three spatial variables and is typically denoted as either or . The density is determined, through definition, by the normalised -electron wavefunction which itself depends upon variables. Conversely, the density determines the wave function modulo up to a phase factor, providing the formal foundation of density functional theory.
Electron diffraction is a general term for phenomena associated with changes in the direction of electron beams due to elastic interactions with atoms. Close to the atoms the changes are described as Fresnel diffraction; far away they are called Fraunhofer diffraction. The resulting map of the directions of the electrons far from the sample is called a diffraction pattern, see for instance Figure 1. These patterns are similar to x-ray and neutron diffraction patterns, and are used to study the atomic structure of gases, liquids, surfaces and bulk solids. Electron diffraction also plays a major role in the contrast of images in electron microscopes.
In physics, a wave packet is a short burst of localized wave action that travels as a unit, outlined by an envelope. A wave packet can be analyzed into, or can be synthesized from, a potentially-infinite set of component sinusoidal waves of different wavenumbers, with phases and amplitudes such that they interfere constructively only over a small region of space, and destructively elsewhere. Any signal of a limited width in time or space requires many frequency components around a center frequency within a bandwidth inversely proportional to that width; even a gaussian function is considered a wave packet because its Fourier transform is a "packet" of waves of frequencies clustered around a central frequency. Each component wave function, and hence the wave packet, are solutions of a wave equation. Depending on the wave equation, the wave packet's profile may remain constant or it may change (dispersion) while propagating.
In computational physics and chemistry, the Hartree–Fock (HF) method is a method of approximation for the determination of the wave function and the energy of a quantum many-body system in a stationary state.
In physics, the S-matrix or scattering matrix relates the initial state and the final state of a physical system undergoing a scattering process. It is used in quantum mechanics, scattering theory and quantum field theory (QFT).
Geometrical optics, or ray optics, is a model of optics that describes light propagation in terms of rays. The ray in geometrical optics is an abstraction useful for approximating the paths along which light propagates under certain circumstances.
Phase-contrast imaging is a method of imaging that has a range of different applications. It measures differences in the refractive index of different materials to differentiate between structures under analysis. In conventional light microscopy, phase contrast can be employed to distinguish between structures of similar transparency, and to examine crystals on the basis of their double refraction. This has uses in biological, medical and geological science. In X-ray tomography, the same physical principles can be used to increase image contrast by highlighting small details of differing refractive index within structures that are otherwise uniform. In transmission electron microscopy (TEM), phase contrast enables very high resolution (HR) imaging, making it possible to distinguish features a few Angstrom apart.
In quantum mechanics, the angular momentum operator is one of several related operators analogous to classical angular momentum. The angular momentum operator plays a central role in the theory of atomic and molecular physics and other quantum problems involving rotational symmetry. Such an operator is applied to a mathematical representation of the physical state of a system and yields an angular momentum value if the state has a definite value for it. In both classical and quantum mechanical systems, angular momentum is one of the three fundamental properties of motion.
In condensed matter physics and crystallography, the static structure factor is a mathematical description of how a material scatters incident radiation. The structure factor is a critical tool in the interpretation of scattering patterns obtained in X-ray, electron and neutron diffraction experiments.
The theoretical and experimental justification for the Schrödinger equation motivates the discovery of the Schrödinger equation, the equation that describes the dynamics of nonrelativistic particles. The motivation uses photons, which are relativistic particles with dynamics described by Maxwell's equations, as an analogue for all types of particles.
Phase retrieval is the process of algorithmically finding solutions to the phase problem. Given a complex signal , of amplitude , and phase :
In mathematics, vector spherical harmonics (VSH) are an extension of the scalar spherical harmonics for use with vector fields. The components of the VSH are complex-valued functions expressed in the spherical coordinate basis vectors.
In 1927, a year after the publication of the Schrödinger equation, Hartree formulated what are now known as the Hartree equations for atoms, using the concept of self-consistency that Lindsay had introduced in his study of many electron systems in the context of Bohr theory. Hartree assumed that the nucleus together with the electrons formed a spherically symmetric field. The charge distribution of each electron was the solution of the Schrödinger equation for an electron in a potential , derived from the field. Self-consistency required that the final field, computed from the solutions, was self-consistent with the initial field, and he thus called his method the self-consistent field method.
A helium atom is an atom of the chemical element helium. Helium is composed of two electrons bound by the electromagnetic force to a nucleus containing two protons along with either one or two neutrons, depending on the isotope, held together by the strong force. Unlike for hydrogen, a closed-form solution to the Schrödinger equation for the helium atom has not been found. However, various approximations, such as the Hartree–Fock method, can be used to estimate the ground state energy and wavefunction of the atom.
Fluctuation X-ray scattering (FXS) is an X-ray scattering technique similar to small-angle X-ray scattering (SAXS), but is performed using X-ray exposures below sample rotational diffusion times. This technique, ideally performed with an ultra-bright X-ray light source, such as a free electron laser, results in data containing significantly more information as compared to traditional scattering methods.
In crystallography, direct methods is a set of techniques used for structure determination using diffraction data and a priori information. It is a solution to the crystallographic phase problem, where phase information is lost during a diffraction measurement. Direct methods provides a method of estimating the phase information by establishing statistical relationships between the recorded amplitude information and phases of strong reflections.