Reverse Monte Carlo: Difference between revisions

From SklogWiki
Jump to navigation Jump to search
No edit summary
(Added a recent publication)
 
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Reverse Monte Carlo (RMC) [1-4] is a variation of the standard [[Metropolis Monte Carlo]] (MMC) method. It is used to produce a 3 dimensional atomic model that fits a set of measurements (Neutron-, X-ray-diffraction, EXAFS etc.).
'''Reverse Monte Carlo''' (RMC) <ref>[http://dx.doi.org/10.1080/08927028808080958 R. L. McGreevy and L. Pusztai, "Reverse Monte Carlo Simulation: A New Technique for the Determination of Disordered Structures", Molecular  Simulation, '''1''' pp. 359-367 (1988)]</ref> is a variation of the standard [[Metropolis Monte Carlo]] method. It is used to produce a 3 dimensional atomic [[models |model]] that fits a set of measurements (neutron diffraction, X-ray-diffraction, EXAFS etc.).
In addition to measured data a number of constraints based on prior knowledge of the system (like chemical bonds etc.) can be applied. Some examples are:
In addition to measured data a number of constraints based on prior knowledge of the system (for example, chemical bonding etc.) can be applied. Some examples are:


#Closest approach between atoms (hard sphere potential)
*Closest approach between atoms ([[hard sphere model |hard sphere potential]])
#Coordination numbers.
*Coordination numbers.
#Angles in triplets of atoms.
*Angles in triplets of atoms.


The 3 dimensional structure that is produced by RMC is not unique, it is a model consistent with the data and constraints provided.
The 3 dimensional structure that is produced by reverse Monte Carlo is not unique; it is a model consistent with the data and constraints provided.


The algorithm for RMC can be written:
The algorithm for reverse Monte Carlo can be written as follows:


#Start with a configuration of atoms with periodic boundary conditions. This can be a random or a crystalline configuration from a different simulation or model.
#Start with a configuration of atoms with [[periodic boundary conditions]]. This can be a random or a crystalline configuration from a different simulation or model.
#Calculate the total radial distribution function <math>g_o^C(r)</math> for this old configuration (''C''=Calculated, ''o''=Old).
#Calculate the total [[radial distribution function]] <math>g_o^C(r)</math> for this old configuration (''C''=Calculated, ''o''=Old).
#Transform to the total [[Structure factor | structure factor]]:
#Transform to the total [[Structure factor | structure factor]]:
#:<math>S_o^C (Q)-1=\frac{4\pi\rho}{Q}\int\limits_{0}^{\infty} r(g_o^C(r)-1)\sin(Qr)\, dr</math>  
#:<math>S_o^C (Q)-1=\frac{4\pi\rho}{Q}\int\limits_{0}^{\infty} r(g_o^C(r)-1)\sin(Qr)\, dr</math>  
#:where ''Q'' is the momentum transfer and <math>\rho</math> the number density.
#:where ''Q'' is the momentum transfer and <math>\rho</math> the number density.
#Calculate the difference between the measured structure factor <math>S^E(Q)</math> and the one calculated from the configuration <math>S_o^C(Q)</math>:
#Calculate the difference between the measured structure factor <math>S^E(Q)</math> (''E''=Experimental) and the one calculated from the configuration <math>S_o^C(Q)</math>:
#:<math>\chi_o^2=\sum_i(S_o^C(Q_i)-S^E(Q_i))^2/\sigma(Q_i)^2</math>  
#:<math>\chi_o^2=\sum_i(S_o^C(Q_i)-S^E(Q_i))^2/\sigma(Q_i)^2</math>  
#:this sum is taken over all experimental points <math>\sigma</math> is the experimental error.
#:this sum is taken over all experimental points <math>\sigma</math> is the experimental error.
Line 23: Line 23:
#repeat from step 5.
#repeat from step 5.
When <math>\chi^2</math> have reached an equilibrium the configuration is saved and can be analysed.
When <math>\chi^2</math> have reached an equilibrium the configuration is saved and can be analysed.
== References ==
<references/>
;Related reading
*[http://dx.doi.org/10.1088/0953-8984/13/46/201 R. L. McGreevy, "Reverse Monte Carlo modelling", Journal of Physics: Condensed Matter '''13''' pp. R877-R913 (2001)]
*[http://dx.doi.org/10.1016/S1359-0286(03)00015-9  R. L. McGreevy and P. Zetterström, "To RMC or not to RMC? The use of reverse Monte Carlo modelling", Current Opinion in Solid State and Materials Science. '''7''' pp. 41-47 (2003)]
*[http://dx.doi.org/10.1088/0953-8984/17/5/001  G. Evrard, L. Pusztai, "Reverse Monte Carlo modelling of the structure of disordered materials with RMC++: a new implementation of the algorithm in C++", Journal of Physics: Condensed Matter '''17''' pp. S1-S13 (2005)]
*[http://dx.doi.org/10.1016/j.molliq.2015.02.044    V. Sánchez-Gil, E. G. Noya, L. Temleitner, L. Pusztai "Reverse Monte Carlo modeling: The two distinct routes of calculating the experimental structure factor", Journal of Molecular Liquids '''207''' pp. 211-215 (2015)]




 
[[Category:Monte Carlo]]
== References ==
#[http://dx.doi.org/10.1080/08927028808080958 R. L. McGreevy and L. Pusztai, "Reverse Monte Carlo Simulation: A New Technique for the Determination of Disordered Structures", Molecular  Simulation, '''1''' pp. 359-367 (1988)]
#[http://dx.doi.org/10.1088/0953-8984/13/46/201 R. L. McGreevy, "Reverse Monte Carlo modelling", J.Phys.:Cond. Matter '''13''' pp. R877-R913 (2001)]
#[http://dx.doi.org/10.1016/S1359-0286(03)00015-9  R. L. McGreevy and P. Zetterström, "To RMC or not to RMC? The use of reverse Monte Carlo modelling", Current Opinion in Solid State and Materials Science. '''7''' no. 1 (2003) pp. 41-47 Elsevier Science]
#[http://dx.doi.org/10.1088/0953-8984/17/5/001  G. Evrard, L. Pusztai, "Reverse Monte Carlo modelling of the structure of disordered materials with RMC++: a new implementation of the algorithm in C++", J.Phys.:Cond. Matter '''17''' pp. S1-S13 (2005)]

Latest revision as of 17:57, 25 May 2015

Reverse Monte Carlo (RMC) [1] is a variation of the standard Metropolis Monte Carlo method. It is used to produce a 3 dimensional atomic model that fits a set of measurements (neutron diffraction, X-ray-diffraction, EXAFS etc.). In addition to measured data a number of constraints based on prior knowledge of the system (for example, chemical bonding etc.) can be applied. Some examples are:

  • Closest approach between atoms (hard sphere potential)
  • Coordination numbers.
  • Angles in triplets of atoms.

The 3 dimensional structure that is produced by reverse Monte Carlo is not unique; it is a model consistent with the data and constraints provided.

The algorithm for reverse Monte Carlo can be written as follows:

  1. Start with a configuration of atoms with periodic boundary conditions. This can be a random or a crystalline configuration from a different simulation or model.
  2. Calculate the total radial distribution function for this old configuration (C=Calculated, o=Old).
  3. Transform to the total structure factor:
    where Q is the momentum transfer and the number density.
  4. Calculate the difference between the measured structure factor (E=Experimental) and the one calculated from the configuration :
    this sum is taken over all experimental points is the experimental error.
  5. Select and move one atom at random and calculate the new (n=New) distribution function, structure factor and:
  6. If accept the move and let the new configuration become the old. If then the move is accepted with probability otherwise it is rejected.
  7. repeat from step 5.

When have reached an equilibrium the configuration is saved and can be analysed.

References[edit]

Related reading