X-ray reflectivity (sometimes known as X-ray specular reflectivity, X-ray reflectometry, or XRR) is a surface-sensitive analytical technique used in chemistry, physics, and materials science to characterize surfaces, thin films and multilayers.[1][2][3][4][5] It is a form of reflectometry based on the use of X-rays and is related to the techniques of neutron reflectometry and ellipsometry.
The basic principle of X-ray reflectivity is to reflect a beam of X-rays from a flat surface and to then measure the intensity of X-rays reflected in the specular direction (reflected angle equal to incident angle). If the interface is not perfectly sharp and smooth then the reflected intensity will deviate from that predicted by the law of Fresnel reflectivity. The deviations can then be analyzed to obtain the density profile of the interface normal to the surface.
History
editThe earliest measurements of X-ray reflectometry were published by Heinz Kiessig in 1931, focusing mainly on the total reflection region of thin nickel films on glass.[6] First calculations of XRR curves were performed by Lyman G. Parratt in 1954.[7] Parratt's work explored the surface of copper-coated glass, but since that time the technique has been extended to a wide range of both solid and liquid interfaces.
Approximation
editWhen an interface is not perfectly sharp, but has an average electron density profile given by , then the X-ray reflectivity can be approximated by the so called Master formula:[1]: 83
Here is the reflectivity, , is the X-ray wavelength (e.g. copper's K-alpha peak at 0.154056 nm), is the density deep within the material and is the angle of incidence.
The Fresnel reflectivity, , in the limit of small angles where polarization can be neglected, is given by:
Here is the wavevector inside the material, and the critical angle , with the Thomson scattering length.
Below the critical angle (derived from Snell's law), 100% of incident radiation is reflected through total external reflection, . For , . Typically one can then use this formula to compare parameterized models of the average density profile in the z-direction with the measured X-ray reflectivity and then vary the parameters until the theoretical profile matches the measurement.
Oscillations
editFor films with multiple layers, X-ray reflectivity may show oscillations with Q (angle/wavelength), analogous to the Fabry-Pérot effect, here called Kiessig fringes.[8] The period of these oscillations can be used to infer layer thicknesses, interlayer roughnesses, electron densities and their contrasts, and complex refractive indices (which depend on atomic number and atomic form factor), for example using the Abeles matrix formalism or the recursive Parratt-formalism as follows:
where Xj is the ratio of reflected and transmitted amplitudes between layers j and j+1, dj is the thickness of layer j, and rj,j+1 is the Fresnel coefficient for layers j and j+1
where kj,z is the z component of the wavenumber. For specular reflection where the incident and reflected angles are equal, Q used previously is two times kz because . With conditions RN+1 = 0 and T1 = 1 for an N-interface system (i.e. nothing coming back from inside the semi-infinite substrate and unit amplitude incident wave), all Xj can be calculated successively. Roughness can also be accounted for by adding the factor
where is a standard deviation (aka roughness).
Thin film thickness and critical angle can also be approximated with a linear fit of squared incident angle of the peaks in rad2 vs unitless squared peak number as follows:
- .
Curve fitting
editX-ray reflectivity measurements are analyzed by fitting to the measured data a simulated curve calculated using the recursive Parratt's formalism combined with the rough interface formula. The fitting parameters are typically layer thicknesses, densities (from which the index of refraction and eventually the wavevector z component is calculated) and interfacial roughnesses. Measurements are typically normalized so that the maximum reflectivity is 1, but normalization factor can be included in fitting, as well. Additional fitting parameters may be background radiation level and limited sample size due to which beam footprint at low angles may exceed the sample size, thus reducing reflectivity.
Several fitting algorithms have been attempted for X-ray reflectivity, some of which find a local optimum instead of the global optimum. The Levenberg-Marquardt method finds a local optimum. Due to the curve having many interference fringes, it finds incorrect layer thicknesses unless the initial guess is extraordinarily good. The derivative-free simplex method also finds a local optimum. In order to find global optimum, global optimization algorithms such as simulated annealing are required. Unfortunately, simulated annealing may be hard to parallelize on modern multicore computers. Given enough time, simulated annealing can be shown to find the global optimum with a probability approaching 1,[9] but such convergence proof does not mean the required time is reasonably low. In 1998,[10] it was found that genetic algorithms are robust and fast fitting methods for X-ray reflectivity. Thus, genetic algorithms have been adopted by the software of practically all X-ray diffractometer manufacturers and also by open source fitting software.
Fitting a curve requires a function usually called fitness function, cost function, fitting error function or figure of merit (FOM). It measures the difference between measured curve and simulated curve, and therefore, lower values are better. When fitting, the measurement and the best simulation are typically represented in logarithmic space.
From mathematical standpoint, the fitting error function takes into account the effects of Poisson-distributed photon counting noise in a mathematically correct way:
- .
However, this function may give too much weight to the high-intensity regions. If high-intensity regions are important (such as when finding mass density from critical angle), this may not be a problem, but the fit may not visually agree with the measurement at low-intensity high-angle ranges.
Another popular fitting error function is the 2-norm in logarithmic space function. It is defined in the following way:
- .
Needless to say, in the equation data points with zero measured photon counts need to be removed. This 2-norm in logarithmic space can be generalized to p-norm in logarithmic space. The drawback of this 2-norm in logarithmic space is that it may give too much weight to regions where relative photon counting noise is high.
Neural network analysis of XRR
editThe application of neural networks (NNs) in X-ray reflectivity (XRR) has gained attention for its ability to offer high analysis speed, noise tolerance and its ability to find global optima. Neural networks offer a fast and robust alternative to fit programs by learning from large synthetic datasets that are easy to calculate in the forward direction and providing quick predictions of material properties, such as layer thickness, roughness, and density. The first application of neural networks in XRR was demonstrated in the analysis of thin film growth,[11] and a wide range of publications has explored the possibilities offered by neural networks, including free form fitting, fast feedback loops for autonomous labs and online expeirmnet control.
One of the main challenges in XRR is the non-uniqueness of the inverse problem, where multiple Scattering Length Density (SLD) profiles can produce the same reflectivity curve. Recent advances in neural networks have focused on addressing this by designing architectures that explore all possible solutions, providing a broader view of potential material profiles. This development is critical in ensuring that solutions are not confined to a single, potentially incorrect branch of the solution space.[12]
Open source software
editAn up to date overview over current analysis software can be found in the following link.[13] Diffractometer manufacturers typically provide commercial software to be used for X-ray reflectivity measurements. However, several open source software packages are also available: Refnx and Refl1D for X-ray and neutron relectometry,[14][15] and GenX[16][17] are commonly used open source X-ray reflectivity curve fitting software. They are implemented in the Python programming language and runs therefore on both Windows and Linux. Reflex[18][19] is a standalone software dedicated to the simulation and analysis of X-rays and neutron reflectivity from multilayers. Micronova XRR[20] runs under Java and is therefore available on any operating system on which Java is available.
Documented neural network analysis packages such as MLreflect have also become available as an alternative approach to XRR data analysis recently.[21]
References
edit- ^ a b J. Als-Nielsen, D. McMorrow, Elements of Modern X-Ray Physics, Wiley, New York, (2001).
- ^ "Open Reflectometry Standards Organisation | Open Reflectometry Standards Organisation". www.reflectometry.org. Retrieved 2024-09-23.
- ^ J. Daillant, A. Gibaud, X-Ray and Neutron Reflectivity: Principles and Applications. Springer, (1999).
- ^ M. Tolan, X-Ray Scattering from Soft-Matter Thin Films, Springer, (1999).
- ^ Holý, V.; Kuběna, J.; Ohlídal, I.; Lischka, K.; Plotz, W. (1993-06-15). "X-ray reflection from rough layered systems". Physical Review B. 47 (23). American Physical Society (APS): 15896–15903. Bibcode:1993PhRvB..4715896H. doi:10.1103/physrevb.47.15896. ISSN 0163-1829. PMID 10005989.
- ^ Kiessig, Heinz (January 1931). "Untersuchungen zur Totalreflexion von Röntgenstrahlen". Annalen der Physik. 402 (6): 715–768. Bibcode:1931AnP...402..715K. doi:10.1002/andp.19314020607. ISSN 0003-3804.
- ^ Parratt, L. G. (1954-07-15). "Surface Studies of Solids by Total Reflection of X-Rays". Physical Review. 95 (2). American Physical Society (APS): 359–369. Bibcode:1954PhRv...95..359P. doi:10.1103/physrev.95.359. ISSN 0031-899X.
- ^ Kiessig, Heinz (1931). "Untersuchungen zur Totalreflexion von Röntgenstrahlen". Annalen der Physik (in German). 402 (6). Wiley: 715–768. Bibcode:1931AnP...402..715K. doi:10.1002/andp.19314020607. ISSN 0003-3804.
- ^ Granville, V.; Krivanek, M.; Rasson, J.-P. (1994). "Simulated annealing: a proof of convergence". IEEE Transactions on Pattern Analysis and Machine Intelligence. 16 (6). Institute of Electrical and Electronics Engineers (IEEE): 652–656. doi:10.1109/34.295910. ISSN 0162-8828.
- ^ Dane, A.D.; Veldhuis, A.; Boer, D.K.G.de; Leenaers, A.J.G.; Buydens, L.M.C. (1998). "Application of genetic algorithms for characterization of thin layered materials by glancing incidence X-ray reflectometry". Physica B: Condensed Matter. 253 (3–4). Elsevier BV: 254–268. Bibcode:1998PhyB..253..254D. doi:10.1016/s0921-4526(98)00398-6. ISSN 0921-4526.
- ^ Greco, Alessandro; Starostin, Vladimir; Hinderhofer, Alexander; Gerlach, Alexander; Skoda, Maximilian W A; Kowarik, Stefan; Schreiber, Frank (2021-12-01). "Neural network analysis of neutron and x-ray reflectivity data: pathological cases, performance and perspectives". Machine Learning: Science and Technology. 2 (4): 045003. doi:10.1088/2632-2153/abf9b1. ISSN 2632-2153.
- ^ Starostin, Vladimir; Dax, Maximilian; Gerlach, Alexander; Hinderhofer, Alexander; Tejero-Cantero, Álvaro; Schreiber, Frank (2024-07-26). "Fast and Reliable Probabilistic Reflectometry Inversion with Prior-Amortized Neural Posterior Estimation". arXiv:2407.18648 [physics.app-ph].
- ^ "Software | Open Reflectometry Standards Organisation". www.reflectometry.org. Retrieved 2024-09-23.
- ^ refnx/refnx, refnx, 2024-09-21, retrieved 2024-09-23
- ^ "Reflectometry Software". NIST. 2017-04-14.
- ^ Bjorck, Matts. "GenX - Home". genx.sourceforge.net.
- ^ Björck, Matts; Andersson, Gabriella (2007-11-10). "GenX: an extensible X-ray reflectivity refinement program utilizing differential evolution". Journal of Applied Crystallography. 40 (6). International Union of Crystallography (IUCr): 1174–1178. doi:10.1107/s0021889807045086. ISSN 0021-8898.
- ^ Vignaud, Guillaume; Gibaud, Alain (2019-02-01). "REFLEX: a program for the analysis of specular X-ray and neutron reflectivity data". Journal of Applied Crystallography. 52 (1). International Union of Crystallography (IUCr): 201–213. doi:10.1107/s1600576718018186. ISSN 1600-5767. S2CID 104467965.
- ^ "Main Page - Reflex". reflex.irdl.fr/Reflex/reflex.html.
- ^ "jmtilli/micronovaxrr". GitHub. 2017-07-25.
- ^ Greco, A.; Starostin, V.; Edel, E.; Munteanu, V.; Rußegger, N.; Dax, I.; Shen, C.; Bertram, F.; Hinderhofer, A.; Gerlach, A.; Schreiber, F. (2022-04-01). "Neural network analysis of neutron and X-ray reflectivity data: automated analysis using mlreflect, experimental errors and feature engineering". Journal of Applied Crystallography. 55 (2): 362–369. doi:10.1107/S1600576722002230. ISSN 1600-5767. PMC 8985606. PMID 35497655.