Кинетический Монте-Карло
Кинетический Монте-Карло (КМК) метод представляет собой компьютерное моделирование метода Монте-Карло, предназначенное для моделирования временной эволюции некоторых процессов, происходящих в природе. Обычно это процессы, которые происходят с известной скоростью перехода между состояниями. Эти ставки являются входными данными для алгоритма KMC; сам метод не может их предсказать.
Метод КМК по сути аналогичен динамическому методу Монте-Карло и алгоритму Гиллеспи .
Алгоритмы
[ редактировать ]Одна из возможных классификаций алгоритмов KMC - это KMC с отклонением (rKMC) и KMC без отклонения (rfKMC).
КМК без отказов
[ редактировать ]

Алгоритм rfKMC, часто называемый только KMC, для моделирования эволюции системы во времени, в которой некоторые процессы могут происходить с известными скоростями r, можно записать, например, следующим образом: [1] : 13–14
- Установите время .
- Выберите начальное состояние k .
- Формируем список всех возможные скорости перехода в системе , из состояния k в общее состояние i . Состояния, которые не связываются с k, будут иметь .
- Вычислить кумулятивную функцию для . Общая ставка составляет .
- Получить однородное случайное число .
- Найдите событие, которое должно выполнить i, найдя i, для которого (этого можно эффективно достичь с помощью двоичного поиска ).
- Выполнить событие i (обновить текущее состояние ).
- Получить новое равномерное случайное число .
- Обновите время с помощью , где . Обратите внимание, что этот временной интервал представляет собой время, прошедшее между предыдущим событием и этим, а не временной интервал между этим событием и следующим. [1] : 17–18
- Вернитесь к шагу 3.
(Примечание: поскольку среднее значение равен единице, тот же средний масштаб времени можно получить, используя вместо этого на шаге 9. Однако в этом случае задержка, связанная с переходом i, не будет взята из распределения Пуассона, описываемого скоростью , но вместо этого будет средним значением этого распределения. [ нужна ссылка ] )
Этот алгоритм известен в разных источниках под разными названиями: алгоритм времени пребывания , n -кратный способ или алгоритм Борца-Калоса-Лебовица (BKL) . Важно отметить, что рассматриваемый временной шаг является функцией вероятности того, что все события i не произошли. [1] : 13–14
Отказ от КМК
[ редактировать ]Отклонение KMC обычно имеет преимущество более простой обработки данных и более быстрых вычислений для каждого предпринятого шага, поскольку получение всех данных требует много времени. не нужен.С другой стороны, время, выделяющееся на каждом шаге, меньше, чем для rfKMC. Относительный вес плюсов и минусов варьируется в зависимости от конкретного случая и имеющихся ресурсов.
rKMC, связанный с теми же скоростями перехода, что и выше, можно записать следующим образом:
- Установите время .
- Выберите начальное состояние k .
- Получить номер всех возможных скоростей перехода из состояния k в общее состояние i .
- Найдите событие -кандидат для выполнения i путем равномерной выборки из переходы выше.
- Примите событие с вероятностью , где является подходящей верхней границей для . Зачастую легко найти без необходимости вычислять все (например, для вероятности перехода в мегаполисе).
- Если принято, выполните событие i (обновите текущее состояние ).
- Получить новое равномерное случайное число .
- Обновите время с помощью , где .
- Вернитесь к шагу 3.
(Примечание: может переходить от одного шага MC к другому.)Этот алгоритм обычно называют стандартным алгоритмом .
Теоретический [2] и числовые [1] [3] было проведено сравнение алгоритмов.
Временные алгоритмы
[ редактировать ]Если ставки зависят от времени, шаг 9 в rfKMC должен быть изменен следующим образом: [4]
- .
После этого необходимо выбрать реакцию (шаг 6)
Другой очень похожий алгоритм называется методом первой реакции (FRM). Он заключается в выборе первой возникшей реакции, то есть выборе наименьшего времени. , и соответствующий номер реакции i по формуле
- ,
где являются N случайными числами.
Комментарии к алгоритму
[ редактировать ]Ключевое свойство алгоритма КМК (и алгоритма FRM) состоит в том, что если скорости корректны, если процессы, связанные со скоростями, относятся к типу пуассоновских процессов и если разные процессы независимы (т.е. не коррелированы), то КМК Алгоритм дает правильный временной масштаб для эволюции моделируемой системы. Были некоторые споры о правильности шкалы времени для алгоритмов rKMC, но ее правильность также была строго доказана. [2]
Если, кроме того, переходы следуют подробному балансу , алгоритм KMC можно использовать для моделирования термодинамического равновесия. Однако КМК широко используется для моделирования неравновесных процессов. [5] в этом случае подробный баланс не требуется соблюдать.
Алгоритм rfKMC эффективен в том смысле, что каждая итерация гарантированно приводит к переходу. Однако в представленной выше форме требуется операций для каждого перехода, что не слишком эффективно. Во многих случаях это можно значительно улучшить, объединив одни и те же типы переходов в ячейки и/или сформировав древовидную структуру данных событий. Недавно был разработан и протестирован алгоритм масштабирования такого типа с постоянным временем. [6]
Основным недостатком rfKMC является то, что все возможные ставки и реакции должны быть известны заранее. Сам метод ничего не может сделать для их предсказания. Скорости и реакции должны быть получены с помощью других методов, таких как диффузионные (или другие) эксперименты, молекулярная динамика или моделирование теории функционала плотности .
Примеры использования
[ редактировать ]KMC использовался при моделировании следующих физических систем:
- Поверхностная диффузия
- Поверхностный рост [7]
- Диффузия вакансий в сплавах (это было первоначальное использование [8] )
- Ускорение эволюции доменов
- Подвижность и кластеризация дефектов в твердых телах, облученных ионами или нейтронами, включая, помимо прочего, модели накопления повреждений и модели аморфизации/рекристаллизации.
- Вязкоупругость физически сшитых сетей [9]
Чтобы дать представление о том, какими могут быть «объекты» и «события» на практике, приведем один конкретный простой пример, соответствующий примеру 2 выше.
Рассмотрим систему, в которой отдельные атомы осаждаются на поверхность по одному (типично для физического осаждения из паровой фазы ), но также могут мигрировать по поверхности с некоторой известной скоростью скачка. . В этом случае «объектами» алгоритма КМС являются просто отдельные атомы.
Если два атома оказываются рядом друг с другом, они становятся неподвижными. Тогда поток входящих атомов определяет скорость r депозита , и систему можно смоделировать с помощью KMC, учитывая все осажденные мобильные атомы, которые (еще) не встретились с аналогом и не стали неподвижными. Таким образом, на каждом этапе KMC возможны следующие события:
- Новый атом приходит с депозитом по ставке
- Уже осажденный атом прыгает на один шаг со скоростью w .
После того, как событие было выбрано и выполнено с помощью алгоритма KMC, необходимо проверить, не стал ли новый или только что перескочивший атом непосредственно соседним с каким-либо другим атомом. Если это произошло, то атом(ы), которые теперь являются соседними, необходимо удалить из списка мобильных атомов, а соответственно их события прыжка удалить из списка возможных событий.
Естественно, применяя КМК к задачам физики и химии, нужно сначала подумать, достаточно ли хорошо реальная система следует предположениям, лежащим в основе КМК.Реальные процессы не обязательно имеют четко определенные скорости.переходные процессы могут быть коррелированы в случае скачков атомов или частицскачки могут происходить не в случайных направлениях и т.д. При моделированиив совершенно несопоставимых временных масштабах, необходимо также рассмотреть вопрос о том,новые процессы могут присутствовать в более длительных временных масштабах. Если что-либо из этогопроблемы действительны, временные рамки и эволюция системы предсказаны KMCможет быть искаженным или даже совершенно неправильным.
История
[ редактировать ]Первая публикация, в которой были описаны основные особенности метода КМК (а именно использование кумулятивной функции для выбора события и расчета шкалы времени в форме 1/ R ), была сделана Янгом и Элкоком в 1966 году. [8] Примерно в то же время был опубликован алгоритм времени пребывания. [10]
Очевидно, независимо от работ Янга и Элкока, Борца, Калоса и Лебовица. [1] разработали алгоритм KMC для моделирования модели Изинга , который они назвали n-кратным способом . Основы их алгоритма такие же, как у Янга, [8] но они предоставляют гораздо более подробную информацию о методе.
В следующем году Дэн Гиллеспи опубликовал то, что сейчас известно как алгоритм Гиллеспи для описания химических реакций. [11] Алгоритм аналогичен и схема продвижения по времени, по сути, такая же, как и в КМК.
На момент написания этой статьи (июнь 2006 г.) не существовало окончательного трактата по теории КМК, но Фихторн и Вайнберг подробно обсудили теорию моделирования термодинамического равновесия КМК. [12] Хорошее введение также дает Art Voter, [13] [1] и APJ Янсен, [14] [2] и недавний обзор (Chatterjee 2007). [15] или (Чотия 2008). [16] Обоснование KMC как обобщенной динамики Ланжевена с использованием подхода квазистационарного распределения было развито Т. Лельевром и его сотрудниками. [17] [18]
выпустила, вероятно, первое коммерческое программное обеспечение, использующее Kinetic Monte Carlo для моделирования диффузии и активации/деактивации легирующих примесей в кремнии и кремниеподобных материалах В марте 2006 года компания Synopsys , о чем сообщили Мартин-Брагадо и др. [19]
Разновидности КМК
[ редактировать ]Метод КМК можно подразделить по тому, как движутся объекты или происходят реакции. По крайней мере, используются следующие подразделения:
- Решетка КМК ( ЛКМК ) означает КМК, выполненную на атомной решетке . Часто эту разновидность еще называют атомистической КМК, ( АКМК ). Типичным примером является моделирование вакансий диффузии в сплавах , где вакансия может прыгать по решетке со скоростью, зависящей от локального элементного состава. [20]
- Объект КМК ( ОКМК ) означает КМК, проводимый для дефектов или примесей , скачущих либо в случайных, либо в решеточно-специфичных направлениях. В моделирование включены только положения прыгающих объектов, а не положения «фоновых» атомов решетки. Базовый шаг KMC — прыжок на один объект.
- Событие KMC ( EKMC ) или KMC первого прохождения ( FPKMC ) означает разновидность OKMC, в которой следующая реакция между объектами (например, кластеризация двух примесей или вакансии - межузельная аннигиляция) выбирается с помощью алгоритма KMC с учетом положения объекта, и это событие затем немедленно выполняется. [21] [22]
Ссылки
[ редактировать ]- ^ Jump up to: а б с д и Бортц, AB; Калос, Миннесота; Лебовиц, Дж. Л. (1975). «Новый алгоритм моделирования спиновых систем Изинга методом Монте-Карло». Журнал вычислительной физики . 17 (1). Эльзевир Б.В.: 10–18. Бибкод : 1975JCoPh..17...10B . дои : 10.1016/0021-9991(75)90060-1 . ISSN 0021-9991 .
- ^ Jump up to: а б Серебрянский, Сантьяго А. (31 марта 2011 г.). «Физическая шкала времени в кинетическом моделировании цепей Маркова с непрерывным временем по методу Монте-Карло». Физический обзор E . 83 (3). Американское физическое общество (APS): 037701. Бибкод : 2011PhRvE..83c7701S . дои : 10.1103/physreve.83.037701 . ISSN 1539-3755 . ПМИД 21517635 .
- ^ Садик, Абдулла (1984). «Новый алгоритм моделирования кинетики спинового обмена систем Изинга методом Монте-Карло». Журнал вычислительной физики . 55 (3). Эльзевир Б.В.: 387–396. Бибкод : 1984JCoPh..55..387S . дои : 10.1016/0021-9991(84)90028-7 . ISSN 0021-9991 .
- ^ Прадос, А.; Брей, Джей-Джей; Санчес-Рей, Б. (1997). «Динамический алгоритм Монте-Карло для основных уравнений с зависящей от времени скоростью перехода». Журнал статистической физики . 89 (3–4). ООО «Спрингер Сайенс энд Бизнес Медиа»: 709–734. Бибкод : 1997JSP....89..709P . дои : 10.1007/bf02765541 . ISSN 0022-4715 . S2CID 122985615 .
- ^ Мэн, Б.; Вайнберг, WH (1994). «Моделирование температурно-программируемых спектров десорбции методом Монте-Карло». Журнал химической физики . 100 (7). Издательство AIP: 5280–5289. Бибкод : 1994ЖЧФ.100.5280М . дои : 10.1063/1.467192 . ISSN 0021-9606 .
- ^ Слепой, Александр; Томпсон, Эйдан П.; Плимптон, Стивен Дж. (28 мая 2008 г.). «Кинетический алгоритм Монте-Карло с постоянным временем для моделирования больших сетей биохимических реакций». Журнал химической физики . 128 (20). Издательство АИП: 205101. Бибкод : 2008JChPh.128t5101S . дои : 10.1063/1.2919546 . ISSN 0021-9606 . ПМИД 18513044 .
- ^ Мэн, Б.; Вайнберг, WH (1996). «Динамические исследования методом Монте-Карло моделей молекулярно-лучевого эпитаксиального роста: межфазное масштабирование и морфология». Поверхностная наука . 364 (2). Эльзевир Б.В.: 151–163. Бибкод : 1996SurSc.364..151M . дои : 10.1016/0039-6028(96)00597-3 . ISSN 0039-6028 .
- ^ Jump up to: а б с Янг, В.М.; Элкок, EW (1966). «Исследование Монте-Карло миграции вакансий в бинарных упорядоченных сплавах: I». Труды Физического общества . 89 (3). Издательство ИОП: 735–746. Бибкод : 1966PPS....89..735Y . дои : 10.1088/0370-1328/89/3/329 . ISSN 0370-1328 .
- ^ Берле, Стефан А.; Усами, Такао; Гусев, Андрей А. (2006). «Новый подход многомасштабного моделирования для прогнозирования механических свойств наноматериалов на основе полимеров». Полимер . 47 (26). Эльзевир Б.В.: 8604–8617. doi : 10.1016/j.polymer.2006.10.017 . ISSN 0032-3861 .
- ^ Д. Р. Кокс и Х. Д. Миллер, Теория случайных процессов (Метуэн, Лондон), 1965, стр. 6–7.
- ^ Гиллеспи, Дэниел Т. (1976). «Общий метод численного моделирования стохастической временной эволюции связанных химических реакций». Журнал вычислительной физики . 22 (4). Эльзевир Б.В.: 403–434. Бибкод : 1976JCoPh..22..403G . дои : 10.1016/0021-9991(76)90041-3 . ISSN 0021-9991 .
- ^ Фихторн, Кристен А .; Вайнберг, WH (15 июля 1991 г.). «Теоретические основы динамического моделирования Монте-Карло». Журнал химической физики . 95 (2). Издательство AIP: 1090–1096. Бибкод : 1991JChPh..95.1090F . дои : 10.1063/1.461138 . ISSN 0021-9606 .
- ^ AF Voter, Введение в кинетический метод Монте-Карло, в книге «Радиационные эффекты в твердых телах», под редакцией К.Е. Сикафуса и Е.А. Котомина (Springer, Издательское подразделение НАТО, Дордрехт, Нидерланды, 2005).
- ^ APJ Янсен, Введение в моделирование поверхностных реакций методом Монте-Карло, конденсированное вещество, абстрактное cond-mat/0303028 .
- ^ Чаттерджи, Абхиджит; Влахос, Дионисиос Г. (28 февраля 2007 г.). «Обзор пространственных микроскопических и ускоренных кинетических методов Монте-Карло». Журнал компьютерного дизайна материалов . 14 (2). ООО «Спрингер Сайенс энд Бизнес Медиа»: 253–308. Бибкод : 2007JCMD...14..253C . дои : 10.1007/s10820-006-9042-9 . ISSN 0928-1045 . S2CID 53336314 .
- ^ Чотия, Амодсен; Вито, Матье; Фогт, Тибо; Компарат, Дэниел; Пийе, Пьер (30 апреля 2008 г.). «Кинетическое моделирование дипольной блокады методом Монте-Карло в эксперименте с возбуждением Ридберга» . Новый журнал физики . 10 (4). Издание IOP: 045031. arXiv : 0803.4481 . Бибкод : 2008NJPh...10d5031C . дои : 10.1088/1367-2630/10/4/045031 . ISSN 1367-2630 .
- ^ Ди Джезу, Джакомо; Лельевр, Тони; Ле Петрек, Дориан; Некту, Борис (2016). «Модели скачка Маркова и теория переходного состояния: подход квазистационарного распределения». Фарадеевские дискуссии . 195 : 469–495. arXiv : 1605.02643 . Бибкод : 2016ФаДи..195..469Д . дои : 10.1039/C6FD00120C . ISSN 1364-5498 . ПМИД 27740662 . S2CID 25564764 .
- ^ Лельевр, Тони (2018). «Математические основы методов ускоренной молекулярной динамики». В Андреони, Ванда; Ага, Сидни (ред.). Справочник по моделированию материалов . Спрингер. стр. 773–803. arXiv : 1801.05347 . дои : 10.1007/978-3-319-44677-6_27 . ISBN 978-3-319-44677-6 .
- ^ Мартин-Брагадо, Игнасио; Тиан, С.; Джонсон, М.; Кастрильо, П.; Пиначо, Р.; Рубио, Дж.; Джарайс, М. (2006). «Моделирование заряженных дефектов, механизмов диффузии примесей и активации для моделирования TCAD с использованием кинетического Монте-Карло». Ядерные приборы и методы в физических исследованиях. Раздел B: Взаимодействие пучков с материалами и атомами . 253 (1–2). Эльзевир Б.В.: 63–67. Бибкод : 2006НИМПБ.253...63М . дои : 10.1016/j.nimb.2006.10.035 . ISSN 0168-583X .
- ^ Мейсон, доктор медицинских наук; Хадсон, Т.С.; Саттон, AP (январь 2005 г.). «Быстрый вызов истории состояний в кинетическом моделировании Монте-Карло с использованием ключа Зобриста». Компьютерная физика. Коммуникации . 165 (1): 37–48. Бибкод : 2005CoPhC.165...37M . дои : 10.1016/j.cpc.2004.09.007 .
- ^ Далла Торре, Дж.; Боке, Ж.-Л.; Доан, Невада; Адам, Э.; Барбу, А. (2005). «JERK, кинетическая модель Монте-Карло на основе событий для прогнозирования эволюции микроструктуры материалов под облучением». Философский журнал . 85 (4–7). Информа UK Limited: 549–558. Бибкод : 2005PMag...85..549D . дои : 10.1080/02678370412331320134 . ISSN 1478-6435 . S2CID 96878847 .
- ^ Опплеструп, Томас; Булатов Василий Владимирович; Гилмер, Джордж Х.; Калос, Малвин Х.; Садыг, Бабак (4 декабря 2006 г.). «Алгоритм Монте-Карло первого прохода: диффузия без всех прыжков». Письма о физических отзывах . 97 (23). Американское физическое общество (APS): 230602. Бибкод : 2006PhRvL..97w0602O . дои : 10.1103/physrevlett.97.230602 . ISSN 0031-9007 . ПМИД 17280187 .
Внешние ссылки
[ редактировать ]- Трехмерное кинетическое моделирование Монте-Карло на «битовом языке»
- KMC-моделирование неустойчивости Плато-Релея
- KMC-моделирование ГЦК-вицинальной (100)-поверхностной диффузии
- Стохастическая кинетическая модель среднего поля (даёт результаты, аналогичные решеточной кинетической модели Монте-Карло, однако гораздо более экономична и проще в реализации — предоставляется программный код с открытым исходным кодом)