El método de modelado Reverse Monte Carlo (RMC) es una variación del algoritmo estándar de Metropolis-Hastings para resolver un problema inverso mediante el cual un modelo se ajusta hasta que sus parámetros tienen la mayor consistencia con los datos experimentales. Los problemas inversos se encuentran en muchas ramas de la ciencia y las matemáticas , pero este enfoque es probablemente más conocido por sus aplicaciones en la física de la materia condensada y la química del estado sólido .
Aplicaciones en ciencias de la materia condensada
Método básico
Este método se usa a menudo en las ciencias de la materia condensada para producir modelos estructurales basados en átomos que son consistentes con los datos experimentales y están sujetos a un conjunto de restricciones.
Se construye una configuración inicial colocando N átomos en una celda límite periódica , y se calculan una o más cantidades mensurables en función de la configuración actual. Datos utilizados comúnmente incluyen la función de distribución de par y su transformada de Fourier , el último de los que se deriva directamente de los datos de neutrones o dispersión de rayos x (véase de ángulo pequeño de dispersión de neutrones , gran angular de la dispersión de rayos X , de pequeña rayos X de ángulo dispersión y difracción de rayos X ). Otros datos que se utilizaron incluyeron datos de difracción de Bragg para materiales cristalinos y datos EXAFS . La comparación con el experimento se cuantifica utilizando una función de la forma
χ 2 = Σ ( y obs - y calc ) 2 / σ 2
donde y obs e y calc son las cantidades observadas (medidas) y calculadas respectivamente, y σ es una medida de la precisión de la medición. La suma es sobre todas las medidas independientes, que incluirán la suma sobre todos los puntos en una función como la función de distribución de pares.
Se ejecuta un procedimiento iterativo en el que un átomo elegido al azar se mueve una cantidad aleatoria , seguido de un nuevo cálculo de las cantidades mensurables. Tal proceso hará que χ 2 aumente o disminuya su valor en una cantidad Δ χ 2 . El movimiento se acepta con la probabilidad min (1, exp (-Δ chi 2 /2)) de acuerdo a la normal algoritmo Metropolis-Hastings , asegurando que se aceptan los movimientos que dan una mejor concordancia con los datos experimentales, y se mueve dicho acuerdo empeorar con el experimental se pueden aceptar datos en mayor o menor medida que correspondan a cuánto ha empeorado el acuerdo. Además, la medida también puede rechazarse si rompe ciertas restricciones, incluso si se mejora la concordancia con los datos. Un ejemplo sería rechazar un movimiento que acerca dos átomos a un límite preestablecido, para evitar la superposición o colisión entre los dos átomos.
Después de la prueba de aceptación / rechazo, se repite el procedimiento. A medida que aumenta el número de movimientos de átomos aceptados, las cantidades calculadas se acercarán más a los valores experimentales hasta que alcancen un estado de equilibrio. A partir de ese momento, el algoritmo RMC simplemente generará una pequeña oscilación en el valor de χ 2 . La configuración atómica resultante debe ser una estructura que sea consistente con los datos experimentales dentro de sus errores.
Aplicaciones
El método RMC para problemas de materia condensada fue desarrollado inicialmente por McGreevy y Pusztai [1] en 1988, con aplicación al argón líquido (Nótese que hubo aplicaciones independientes anteriores de este enfoque, por ejemplo, las de Kaplow et al. [2] y Gerold y Kern; [3] es, sin embargo, la implementación de McGreevy y Pusztai la más conocida). Durante varios años, la aplicación principal fue para líquidos y materiales amorfos, particularmente porque esto proporciona el único medio para obtener modelos estructurales a partir de datos, mientras que la cristalografía tiene métodos de análisis para datos de difracción de monocristales y polvos . Más recientemente, ha quedado claro que RMC también puede proporcionar información importante para materiales cristalinos desordenados. [4]
Problemas con el método RMC
El método RMC adolece de varios problemas potenciales. El problema más notable es que a menudo más de un modelo cualitativamente diferente dará una concordancia similar con los datos experimentales. Por ejemplo, en el caso del silicio amorfo, la integral del primer pico en la función de distribución de pares puede implicar un número de coordinación atómica promedio de 4. Esto podría reflejar el hecho de que todos los átomos tienen un número de coordinación de 4, pero de manera similar tienen la mitad del número de coordinación. los átomos con número de coordinación de 3 y la mitad con 5 también serán consistentes con estos datos. A menos que se emplee una restricción en el número de coordinación, el método RMC no tendrá ningún medio de generar un número de coordinación único y lo más probable es que resulte una dispersión de los números de coordinación. Usando silicio amorfo como ejemplo, Biswas, Atta-Fynn y Drabold fueron los primeros en dilucidar la importancia de incluir restricciones en el modelado RMC. [5] Dado que el método RMC sigue las reglas normales de la mecánica estadística, su solución final será la que tenga el mayor grado de desorden ( entropía ) posible. Un segundo problema proviene del hecho de que sin restricciones, el método RMC normalmente tendrá más variables que observables. Un resultado de esto será que la configuración atómica final puede tener artefactos que surgen del método que intenta ajustar el ruido en los datos.
Sin embargo, cabe señalar que la mayoría de las aplicaciones del enfoque RMC hoy tienen en cuenta estos problemas mediante el uso apropiado de restricciones implícitas o explícitas. Al incluir un número apropiado de restricciones, Limbu et al. [6] confirma la eficacia de RMC como un enfoque de optimización multiobjetivo para la determinación estructural de materiales complejos, y resuelve una disputa de larga data sobre la singularidad de un modelo de semiconductores tetraédricos amorfos obtenidos mediante inversión de datos de difracción.
Implementaciones del método RMC
Hay cuatro implementaciones disponibles públicamente del método RMC.
fullrmc
El lenguaje de biblioteca fundamental para Monte Carlo inverso o fullrmc [7] [8] [9] [10] [11] es un paquete de modelado RMC multinúcleo. fullrmc es un paquete con interfaz de Python totalmente orientado a objetos en el que cada definición puede sobrecargarse, lo que permite un fácil desarrollo, implementación y mantenimiento del código. bloques y módulos de cálculo de fullrmc se optimizarán escritos en Cython / C . fullrmc no es un paquete RMC estándar, pero es bastante único en su enfoque para resolver una estructura atómica o molecular. fullrmc admite sistemas atómicos y moleculares, todos los tipos (no limitados a cúbicos) de sistemas de condiciones de contorno periódicas , así como las llamadas condiciones de contorno infinitas para modelar nanopartículas o sistemas aislados. El motor de fullrmc se define y se utiliza para iniciar un cálculo de RMC. Por definición, Engine lee solo archivos de configuración atómica del Protein Data Bank (formato de archivo) y maneja otras definiciones y atributos. En fullrmc, los átomos se pueden agrupar en cuerpos rígidos o semirrígidos llamados grupos para que el sistema pueda evolucionar atómicamente, en racimo, molecularmente o cualquier combinación de ellos. A cada grupo se le puede asignar un generador de movimientos diferente y personalizable (traslación, rotación, una combinación de generadores de movimientos, etc.). La selección de grupos por el motor de adaptación también se puede personalizar. Además, fullrmc utiliza algoritmos de aprendizaje por refuerzo e inteligencia artificial para mejorar la proporción de movimientos aceptados.
RMCProfile
RMCProfile [12] [13] es una versión significativamente desarrollada del código RMC original escrito por McGreevy y Puszta. Está escrito en Fortran 95 con algunas características de Fortran 2003 . Ha mantenido la capacidad de modelar líquidos y materiales amorfos utilizando la función de distribución de pares , la dispersión total y los datos EXAFS , pero también incluye la capacidad de modelar materiales cristalinos utilizando explícitamente la información contenida en los datos de difracción de Bragg . RMCProfile ofrece a los usuarios una serie de limitaciones, incluida la inclusión de potenciales moleculares y ventanas de distancia, que aprovechan las posibilidades que ofrece la falta de difusión significativa en materiales cristalinos. RMCProfile permite la simulación de materiales magnéticos, utilizando el componente magnético de los datos de dispersión total, y también permite la simulación de materiales donde los átomos pueden intercambiar posiciones (como se encuentra en muchas soluciones sólidas ).
RMC ++
RMC ++ [14] [15] una versión reescrita en C ++ del código RMC original desarrollado por McGreevy y Pusztain. RMC ++ está diseñado específicamente para el estudio de líquidos y materiales amorfos, utilizando la función de distribución de pares , la dispersión total y los datos EXAFS .
HRMC
Hybrid Reverse Monte Carlo (HRMC) [16] [17] es un código capaz de ajustar tanto la función de correlación de pares como el factor de estructura junto con el ángulo de enlace y las distribuciones de coordinación. Exclusivo de este código es la implementación de una serie de potenciales interatómicos empíricos para carbono (EDIP), silicio (EDIP [18] y Stillinger-Weber [19] ) y germanio (Stillinger-Weber). Esto permite que el código se ajuste a los datos experimentales junto con la minimización de la energía total del sistema.
Referencias
- ^ McGreevy, RL; Pusztai, L. (1988). "Simulación de Monte Carlo inversa: una nueva técnica para la determinación de estructuras desordenadas". Simulación molecular . Informa UK Limited. 1 (6): 359–367. doi : 10.1080 / 08927028808080958 . ISSN 0892-7022 .
- ^ Kaplow, Roy; Rowe, TA; Averbach, BL (15 de abril de 1968). "Disposición atómica en selenio vítreo". Revisión física . Sociedad Estadounidense de Física (APS). 168 (3): 1068–1079. doi : 10.1103 / physrev.168.1068 . ISSN 0031-899X .
- ^ Gerold, V .; Kern, J. (1987). "La determinación de las energías de interacción atómica en soluciones sólidas a partir de coeficientes de orden de corto alcance: un método monte-carlo inverso". Acta Metallurgica . Elsevier BV. 35 (2): 393–399. doi : 10.1016 / 0001-6160 (87) 90246-x . ISSN 0001-6160 .
- ^ Keen, DA; Tucker, MG; Dove, MT (22 de enero de 2005). "Modelado de Monte Carlo inverso del desorden cristalino". Revista de física: materia condensada . Publicación de IOP. 17 (5): S15 – S22. doi : 10.1088 / 0953-8984 / 17/5/002 . ISSN 0953-8984 .
- ^ Biswas, Parthapratim; Atta-Fynn, Raymond; Drabold, DA (28 de mayo de 2004). "Modelado de Monte Carlo inverso de silicio amorfo". Physical Review B . Sociedad Estadounidense de Física (APS). 69 (19): 195207. arXiv : cond-mat / 0401205 . doi : 10.1103 / physrevb.69.195207 . ISSN 1098-0121 . S2CID 15595771 .
- ^ Limbu, Dil K .; Elliott, Stephen R .; Atta-Fynn, Raymond; Biswas, Parthapratim (8 de mayo de 2020). "Desorden por diseño: un enfoque basado en datos para semiconductores amorfos sin funcionales de energía total" . Informes científicos . Nature Publishing Group. 10 (1): 7742. doi : 10.1038 / s41598-020-64327-3 . ISSN 2045-2322 .
- ^ Aoun, Bachir (22 de enero de 2016). "Fullrmc, un paquete de modelado monte carlo inverso de cuerpo rígido habilitado con aprendizaje automático e inteligencia artificial" . Revista de Química Computacional . Wiley. 37 (12): 1102-1111. doi : 10.1002 / jcc.24304 . ISSN 0192-8651 . PMID 26800289 .
- ^ documentación en línea fullrmc
- ^ cuenta fullrmc github
- ^ cuenta fullrmc pypi
- ^ Foro público de preguntas y respuestas de fullrmc
- ^ Tucker, Matthew G; Keen, David A; Dove, Martin T; Goodwin, Andrew L; Hui, Qun (4 de julio de 2007). "RMCProfile: Monte Carlo inverso para materiales policristalinos". Revista de física: materia condensada . Publicación de IOP. 19 (33): 335218. doi : 10.1088 / 0953-8984 / 19/33/335218 . ISSN 0953-8984 . PMID 21694141 .
- ^ Página de inicio de RMCProfile, visitada el 22 de junio de 2010
- ^ Evrard, Guillaume; Pusztai, László (22 de enero de 2005). "Modelado Monte Carlo inverso de la estructura de materiales desordenados con RMC ++: una nueva implementación del algoritmo en C ++". Revista de física: materia condensada . Publicación de IOP. 17 (5): S1 – S13. doi : 10.1088 / 0953-8984 / 17/5/001 . ISSN 0953-8984 .
- ^ Página de inicio de RMC ++, visitada el 22 de junio de 2010
- ^ Opletal, G .; Petersen, TC; Russo, SP (2014). "HRMC_2.1: Método híbrido de Monte Carlo inverso con potenciales de silicio, carbono, germanio y carburo de silicio". Comunicaciones de Física Informática . Elsevier BV. 185 (6): 1854–1855. doi : 10.1016 / j.cpc.2014.02.025 . ISSN 0010-4655 .
- ^ Página de inicio de HRMC
- ^ Justo, JF; Bazant, MK; Kaxiras, E .; Bulatov, VV; Yip, S. (1998). "Potencial interatómico de defectos de silicio y fases desordenadas". Phys. Rev. B . 58 (5): 2539. arXiv : cond-mat / 9712058 . Código Bibliográfico : 1998PhRvB..58.2539J . doi : 10.1103 / PhysRevB.58.2539 . S2CID 14585375 .
- ^ Stillinger, FH; Weber, TA (1985). "Simulación por ordenador de orden local en fases condensadas de silicio". Phys. Rev. B . 31 (8): 5262–5271. Código Bibliográfico : 1985PhRvB..31.5262S . doi : 10.1103 / PhysRevB.31.5262 . PMID 9936488 .