Reverse Monte Carlo
   HOME

TheInfoList



OR:

The Reverse Monte Carlo (RMC) modelling method is a variation of the standard
Metropolis–Hastings algorithm In statistics and statistical physics, the Metropolis–Hastings algorithm is a Markov chain Monte Carlo (MCMC) method for obtaining a sequence of random samples from a probability distribution from which direct sampling is difficult. This seque ...
to solve an
inverse problem An inverse problem in science is the process of calculating from a set of observations the causal factors that produced them: for example, calculating an image in X-ray computed tomography, source reconstruction in acoustics, or calculating the ...
whereby a model is adjusted until its parameters have the greatest consistency with experimental data.
Inverse problem An inverse problem in science is the process of calculating from a set of observations the causal factors that produced them: for example, calculating an image in X-ray computed tomography, source reconstruction in acoustics, or calculating the ...
s are found in many branches of
science Science is a systematic endeavor that builds and organizes knowledge in the form of testable explanations and predictions about the universe. Science may be as old as the human species, and some of the earliest archeological evidence for ...
and
mathematics Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
, but this approach is probably best known for its applications in
condensed matter physics Condensed matter physics is the field of physics that deals with the macroscopic and microscopic physical properties of matter, especially the solid and liquid phases which arise from electromagnetic forces between atoms. More generally, the sub ...
and
solid state chemistry Solid-state chemistry, also sometimes referred as materials chemistry, is the study of the synthesis, structure, and properties of solid phase materials, particularly, but not necessarily exclusively of, non-molecular solids. It therefore has a str ...
.


Applications in condensed matter sciences


Basic method

This method is often used in condensed matter sciences to produce atom-based structural models that are consistent with
experimental data Experimental data in science and engineering is data produced by a measurement, test method, experimental design or quasi-experimental design. In clinical research any data produced are the result of a clinical trial. Experimental data may be qua ...
and subject to a set of constraints. An initial configuration is constructed by placing atoms in a periodic boundary cell, and one or more measurable quantities are calculated based on the current configuration. Commonly used data include the
pair distribution function The pair distribution function describes the distribution of distances between pairs of particles contained within a given volume. Mathematically, if ''a'' and ''b'' are two particles in a fluid, the pair distribution function of ''b'' with respect ...
and its
Fourier transform A Fourier transform (FT) is a mathematical transform that decomposes functions into frequency components, which are represented by the output of the transform as a function of frequency. Most commonly functions of time or space are transformed, ...
, the latter of which is derived directly from neutron or x-ray scattering data (see
small-angle neutron scattering Small-angle neutron scattering (SANS) is an experimental technique that uses elastic neutron scattering at small scattering angles to investigate the structure of various substances at a mesoscopic scale of about 1–100 nm. Small angle n ...
,
wide-angle X-ray scattering In X-ray crystallography, wide-angle X-ray scattering (WAXS) or wide-angle X-ray diffraction (WAXD) is the analysis of Bragg peaks scattered to wide angles, which (by Bragg's law) are caused by sub-nanometer-sized structures. It is an X-ray-diffr ...
,
small-angle X-ray scattering Small-angle X-ray scattering (SAXS) is a small-angle scattering technique by which nanoscale density differences in a sample can be quantified. This means that it can determine nanoparticle size distributions, resolve the size and shape of (monodis ...
, and
X-ray diffraction X-ray crystallography is the experimental science determining the atomic and molecular structure of a crystal, in which the crystalline structure causes a beam of incident X-rays to diffract into many specific directions. By measuring the angles ...
). Other data that are used included
Bragg diffraction In physics and chemistry , Bragg's law, Wulff–Bragg's condition or Laue–Bragg interference, a special case of Laue diffraction, gives the angles for coherent scattering of waves from a crystal lattice. It encompasses the superposition of wave ...
data for crystalline materials, and
EXAFS Extended X-ray absorption fine structure (EXAFS), along with X-ray absorption near edge structure (XANES), is a subset of X-ray absorption spectroscopy (XAS). Like other absorption spectroscopies, XAS techniques follow Beer's law. The X-ray ab ...
data. The comparison with experiment is quantified using a function of the form where and are the observed (measured) and calculated quantities respectively, and is a measure of the accuracy of the measurement. The sum is over all independent measurements, which will include the sum over all points in a function such as the pair distribution function. An iterative procedure is run where one randomly chosen atom is moved a
random In common usage, randomness is the apparent or actual lack of pattern or predictability in events. A random sequence of events, symbols or steps often has no :wikt:order, order and does not follow an intelligible pattern or combination. Ind ...
amount, followed by a new calculation of the measurable quantities. Such a process will cause to either increase or decrease in value by an amount . The move is accepted with the probability according to the normal
Metropolis–Hastings algorithm In statistics and statistical physics, the Metropolis–Hastings algorithm is a Markov chain Monte Carlo (MCMC) method for obtaining a sequence of random samples from a probability distribution from which direct sampling is difficult. This seque ...
, ensuring that moves that give better agreement with experimental data are accepted, and moves that worsen agreement with experimental data can be accepted to a greater or lesser extent corresponding to how much the agreement has worsened. Moreover, the move may also be rejected if it breaks certain constraints, even if the agreement with data is improved. An example would be to reject a move which brings two atoms closer than a preset limit, to prevent overlap or collision between the two atoms. Following the acceptance/rejection test, the procedure is repeated. As the number of accepted atom moves increases, the calculated quantities will become closer to the experimental values until they reach an equilibrium state. From then onward the RMC algorithm will simply generate a small oscillation in the value of . The resulting atomic configuration should be a structure that is consistent with the experimental data within its errors.


Applications

The RMC method for condensed matter problems was initially developed by McGreevy and Pusztai in 1988, with application to
liquid A liquid is a nearly incompressible fluid that conforms to the shape of its container but retains a (nearly) constant volume independent of pressure. As such, it is one of the four fundamental states of matter (the others being solid, gas, a ...
argon Argon is a chemical element with the symbol Ar and atomic number 18. It is in group 18 of the periodic table and is a noble gas. Argon is the third-most abundant gas in Earth's atmosphere, at 0.934% (9340 ppmv). It is more than twice as abu ...
(Note that there were earlier independent applications of this approach, for example those of Kaplow et al. and Gerold and Kern; it is, however, the McGreevy and Pusztai implementation that is best known). For several years the primary application was for liquids and amorphous materials, particularly because this provides the only means to obtain structural models from data, whereas
crystallography Crystallography is the experimental science of determining the arrangement of atoms in crystalline solids. Crystallography is a fundamental subject in the fields of materials science and solid-state physics (condensed matter physics). The wor ...
has analysis methods for both single crystal and
powder diffraction Powder diffraction is a scientific technique using X-ray, neutron, or electron diffraction on powder or microcrystalline samples for structural characterization of materials. An instrument dedicated to performing such powder measurements is call ...
data. More recently, it has become clear that RMC can provide important information for disordered crystalline materials also.


Issues with the RMC method

The RMC method suffers from a number of potential problems. The most notable problem is that often more than one qualitatively different model will give similar agreement with experimental data. For example, in the case of amorphous silicon, the integral of the first peak in the
pair distribution function The pair distribution function describes the distribution of distances between pairs of particles contained within a given volume. Mathematically, if ''a'' and ''b'' are two particles in a fluid, the pair distribution function of ''b'' with respect ...
may imply an average atomic coordination number of 4. This might reflect the fact that all atoms have coordination number of 4, but similarly having half the atoms with coordination number of 3 and half with 5 will also be consistent with this data. Unless a constraint on the coordination number is employed, the RMC method will have no means of generating a unique coordination number and most likely a spread of coordination numbers will result. Using amorphous silicon as an example, Biswas, Atta-Fynn and Drabold were the first to elucidate the importance of including constraints in RMC modeling. Since the RMC method follows the normal rules of statistical mechanics, its final solution will be the one with the highest degree of disorder (
entropy Entropy is a scientific concept, as well as a measurable physical property, that is most commonly associated with a state of disorder, randomness, or uncertainty. The term and the concept are used in diverse fields, from classical thermodynam ...
) possible. A second problem comes from the fact that without constraints the RMC method will typically have more variables than observables. One result from this will be that the final atomic configuration may have artifacts that arise from the method attempting to fit noise in the data. One should remark, however, that most applications of the RMC approach today take account of these problems by appropriate use of implicit or explicit constraints. By including appropriate number of constraints, Limbu et al. confirms the effectiveness of RMC as a multi-objective optimization approach to the structural determination of complex materials, and resolves a long-standing dispute concerning the uniqueness of a model of tetrahedral amorphous semiconductors obtained via inversion of diffraction data.


Implementations of the RMC method

There are four publicly available implementations of the RMC method.


fullrmc

Fundamental Library Language for Reverse Monte Carlo or fullrmc is a multicore RMC modeling package. fullrmc is a fully object-oriented
python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
interfaced package where every definition can be overloaded allowing easy development, implementation and maintenance of the code. fullrmc's computation blocks and modules are optimized written in
cython Cython () is a programming language that aims to be a superset of the Python programming language, designed to give C-like performance with code that is written mostly in Python with optional additional C-inspired syntax. Cython is a compiled ...
/ C. fullrmc is not a standard RMC package but it is rather unique in its approach to solving an atomic or molecular structure. fullrmc supports atomic and molecular systems, all types (not limited to cubic) of
periodic boundary conditions Periodic boundary conditions (PBCs) are a set of boundary conditions which are often chosen for approximating a large (infinite) system by using a small part called a ''unit cell''. PBCs are often used in computer simulations and mathematical mode ...
systems as well as the so-called infinite boundary conditions to model nanoparticles or isolated systems. fullrmc's Engine is defined and used to launch a RMC calculation. By definition, Engine reads only
Protein Data Bank (file format) The Protein Data Bank (PDB) file format is a textual file format describing the three-dimensional structures of molecules held in the Protein Data Bank. The PDB format accordingly provides for description and annotation of protein and nucleic acid ...
atomic configuration files and handles other definitions and attributes. In fullrmc atoms can be grouped into
rigid bodies In physics, a rigid body (also known as a rigid object) is a solid body in which deformation is zero or so small it can be neglected. The distance between any two given points on a rigid body remains constant in time regardless of external force ...
or semi-rigid bodies called groups so the system can evolve atomically, clusterly, molecularly or any combination of those. Every group can be assigned a different and customizable move generator (translation, rotation, a combination of moves generators, etc.). Groups selection by the fitting engine can also be customizable. Also fullrmc uses
Artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech re ...
and
Reinforcement learning Reinforcement learning (RL) is an area of machine learning concerned with how intelligent agents ought to take actions in an environment in order to maximize the notion of cumulative reward. Reinforcement learning is one of three basic machine ...
algorithms to improve the ratio of accepted moves.


RMCProfile

RMCProfile is a significantly developed version of the original RMC code written by McGreevy and Pusztai. It is written in Fortran 95 with some Fortran 2003 features. It has maintained the ability to model liquids and amorphous materials using the
pair distribution function The pair distribution function describes the distribution of distances between pairs of particles contained within a given volume. Mathematically, if ''a'' and ''b'' are two particles in a fluid, the pair distribution function of ''b'' with respect ...
, total scattering and
EXAFS Extended X-ray absorption fine structure (EXAFS), along with X-ray absorption near edge structure (XANES), is a subset of X-ray absorption spectroscopy (XAS). Like other absorption spectroscopies, XAS techniques follow Beer's law. The X-ray ab ...
data, but also includes the capability of modelling crystalline materials by explicitly using the information contained within the
Bragg diffraction In physics and chemistry , Bragg's law, Wulff–Bragg's condition or Laue–Bragg interference, a special case of Laue diffraction, gives the angles for coherent scattering of waves from a crystal lattice. It encompasses the superposition of wave ...
data. RMCProfile gives users a range of constraints, including the inclusion of molecular potentials and distance windows, which exploit possibilities afforded by the lack of significant diffusion in crystalline materials. RMCProfile allows simulation of magnetic materials, using the magnetic component of total scattering data, and also allows simulation of materials where atoms are allowed to swap positions (as found in many
solid solution A solid solution, a term popularly used for metals, is a homogenous mixture of two different kinds of atoms in solid state and have a single crystal structure. Many examples can be found in metallurgy, geology, and solid-state chemistry. The word ...
s).


RMC++

RMC++ a rewritten, C++ version of the original RMC code developed by McGreevy and Pusztain. RMC++ is designed specifically for the study of liquids and amorphous materials, using
pair distribution function The pair distribution function describes the distribution of distances between pairs of particles contained within a given volume. Mathematically, if ''a'' and ''b'' are two particles in a fluid, the pair distribution function of ''b'' with respect ...
, total scattering and
EXAFS Extended X-ray absorption fine structure (EXAFS), along with X-ray absorption near edge structure (XANES), is a subset of X-ray absorption spectroscopy (XAS). Like other absorption spectroscopies, XAS techniques follow Beer's law. The X-ray ab ...
data.


HRMC

Hybrid Reverse Monte Carlo (HRMC) is a code capable of fitting both the pair correlation function and structure factor along with bond angle and coordination distributions. Unique to this code is the implementation of a number of empirical
interatomic potential Interatomic potentials are mathematical functions to calculate the potential energy of a system of atoms with given positions in space.M. P. Allen and D. J. Tildesley. Computer Simulation of Liquids. Oxford University Press, Oxford, England, 1989 ...
s for carbon (EDIP), silicon (EDIP and Stillinger-Weber ) and germanium (Stillinger-Weber). This allows the code to fit experimental data along with minimizing the total system energy.


EvAX

EvAX is a code to perform RMC simulations of EXAFS spectra for crystalline and nanocrystalline materials to extract information on the local structural and thermal disorder. EvAX fits experimental EXAFS data by minimizing the difference between Morlet wavelet transforms thus taking into account the representation of EXAFS spectra in k- and R-spaces simultaneously. The code accounts all important multiple-scattering paths with user-specified precision and is able to fit a single structure model to a set of EXAFS spectra, acquired at several absorption edges.{{Cite journal , last1=Jonane , first1=Inga , last2=Anspoks , first2=Andris , last3=Aquilanti , first3=Giuliana , last4=Kuzmin , first4=Alexei , date=2019 , title=High-temperature X-ray absorption spectroscopy study of thermochromic copper molybdate , url=https://linkinghub.elsevier.com/retrieve/pii/S1359645419304070 , journal=Acta Materialia , language=en , volume=179 , pages=26–35 , doi=10.1016/j.actamat.2019.06.034, s2cid=197622066 The evolutionary algorithm is used for optimization allowing more efficient exploration of the possible configuration space with only decent computational resources available. The EvAX code and examples of applications are available fro


References

Monte Carlo methods Inverse problems