Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Компьютерное моделирование физических явлений. Учебное пособие
.pdf
где Es и Аs обозначают полную энергию и значение физической величи-
A
s
E
s
A
ны А в конфигурации s. Здесь можно применить простейшую процедуру
Монте-Карло, состоящую в том, что генерируется случайная конфигу-
рация, вычисляются E
, Аs и произведение Asexp(-Es) и подсчитывается
s
соответствующий вклад этой конфигурации в суммы (8.10). Однако каждая такая конфигурация была бы, по-видимому, очень маловероятна и
поэтому давала бы малый вклад в сумму. Вместо этого нужно пользоваться методом существенной выборки и генерировать конфигурации в
соответствии с функцией распределения вероятностей
. Поскольку ус-
s
реднение будет проводиться по m конфигурациям смещенной выборки,
для исключения этого смещения необходимо взвешивать каждую кон-
фигурацию с множителем 1/
Анализ формулы (8.11) убеждает в том, что в качестве
:
s
mm
11
AE E
exp( ) / exp( )
s
ss
ss
. (8.11)
целесооб-
s
разно выбрать распределение Больцмана:
В результате такого выбора
exp( )
s
exp( )
s
величину <А> можно записать в виде
s
E
s
1
m
s
. (8.12)
A
. (8.13)
Выбор
в виде (8.12) предложен Метрополисом. В задачах стати-
s
стической механики выражения «метод Монте-Карло» и «метод выборки Метрополиса» – почти синонимы. Приведем наиболее общую форму
алгоритма Метрополиса на примере системы спинов или частиц.
1. Формирование начальной конфигурации.
2. Случайное пробное изменение в начальной конфигурации. На-
пример, выбираем случайным образом какой-нибудь спин и пробуем
его перевернуть. Или выбираем случайную частицу и пробуем переместить ее на случайное расстояние.
3. Вычисляем
E, т. е. изменение энергии системы, обусловленное
произведенным пробным изменением конфигурации.
4. Если
E меньше или равно нулю, то принимаем новую конфигу-
рацию и переходим к шагу 7.
5. Если
W = exp(–
E положительно, вычисляем вероятность перехода
E/kT).
6. Генерируем случайное число r в интервале (0, 1).
141

7. Если r ≤ W, то новую конфигурацию принимаем, в противном
случае сохраняем предыдущую конфигурацию.
8. Определяем значения требуемых физических величин.
9. Повторяем шаги 1–7 для получения достаточного числа конфи-
гураций или испытаний.
10. Вычисляем средние по конфигурациям, которые статистически
независимы друг от друга.
Описанные выше шаги можно интерпретировать как случайное
блуждание. Будем считать различные конфигурации точками, снабженными порядковыми номерами i = 1, 2, 3, ... , и рассмотрим случайное
блуждание по этим точкам. Шаги 2–6 дают условную вероятность того,
что в момент времени t + 1 прохожий будет находиться в точке i при условии, что в момент времени t он был в точке j. Поскольку нужно вычислять тол
ько отношение P(i) / P(j), нормировать P(i) на единицу нет
необходимости. Заметим, что конфигурации генерируются с вероятностью, пропорциональной требуемой вероятности, и поэтому все средние
превращаются в арифметические средние, как в формуле (8.13).
По-
скольку, однако, коэффициент пропорциональности неизвестен, то оценить этим способом сумму по состояниям Z невозможно.
Доказательство того, что после достаточного числа шагов алгоритм
Метрополиса генерирует состояния с вероятностью, пропорциональной
распределению Больцмана, мало дает для физического понимания алгоритма. Вместо этого можно применить этот алгоритм к идеальному
классическому газу и классическому магниту в магнитном поле и убедиться, чт
о по прошествии достаточного времени алгоритм Метрополи-
са действительно дает распределение Больцмана.
Хотя мы выбираем в качестве
можны и другие варианты, например
го распределения, т. е. с непостоянным значением ω
распределение Больцмана, воз-
s
= ωsехр (–Es). Принятие друго-
s
, для некоторых за-
s
дач оказывается полезным. Кроме того, указанный выше выбор
вероятности перехода W не является единственным приводящим к распределению Больцмана в асимптотическом пределе. Можно показать,
что единственное требование заключается в том, чтобы W удовлетворяло принципу «детального равновесия»:
где W(1
→2) – вероятность перехода в единицу времени системы из
(1 2)exp( / ) (2 1) exp( / )WEkTWEkT
12
, (8.14)
конфигурации 1 в конфигурацию 2.
142

■ВероятностнаямодельИзингадляканоническогоансамбля
Пусть n – размер решетки, m – число шагов; B – внешнее магнитноеполе в
единицах1/kT; J –энергиявзаимодействиявединицах1/kT.
1.Создадимдвумерныймассив,размерностьюnнаn,вкаждуюячейкукото‐
ройслучайнымобразомзаписывается1или–1.Начальнаярешетка lat:
initconfig = 2*Table[Random[Integer], {n}, {n}] – 1;
lat = initconfig;
Следующаяпоследовательностьшагов 2–4должнабытьвыполненане‐
сколькораз(этоуказаноивп.5),первыйразиспользуетсяначальнаяконфи‐
гурация решетки,азатемконфигурация, полученнаяв расчетена предыду‐
щемшаге.
2.Выберемслучайнуюячейкув lat:
{i1,i2} = {Random[Integer, {1, n}], Random[Integer, {1, n}]}
3.Определимизменениеэнергии,котораяполучитсяврезультатепереворота
спинаввыбраннойячейке.Этоделаетсязанесколькошагов:
3а.Определимчислососедейвыбраннойячейки.Еслиячейканаходитсявнут‐
рирешетки lat, у нееможет бытьчетыре соседнихместа:верхнее,нижнее,пра‐
вое,левое.Когдавыбраннаяячейканаходитсянагранице lat, соседними счита‐
ютсяместаспротивоположнойсторонырешетки.Такойвыборсоседейдля
граничных ячеек называется периодическими граничными условиями.Соседивы‐
бранной ячейки –этоместа lat[[dn,i2]] (нижний сосед), lat[[up,i2]]
(верхнийсосед), lat[[i1,rt]] (правый сосед), lat[[i1,lt]] (левыйсо‐
сед).Величины dn, up, rt, lt определяютсясогласноусловиям:
If[i1 == n, dn = 1, dn = i1+1];
If[i2 == n, rt = 1, rt = i2+1];
If[i1 == 1, up = n, up = i1-1];
If[i2 == 1, lt = n, lt = i2-1];
3b.Изменениеэнергии,котороеполучаетсяв результате переворота спинана
выбранном месте определяетсявыражением: 2(B+J), где 2 –количествовзаимо‐
действующихячеек, J –полныйспинсоседнихячеек; B, J –задаваемыевеличины.
2 lat[[i1, i2]] (B + J nnvalsum)
гдеnnvalsum–полныйспинсоседей
nnvalsum = lat[[dn, i2]]+lat[[up, i2]]+lat[[i1, rt]]+lat[[i1, lt]]
Величина lat[[i1,i2]] может принимать значения 1, –1, а величина
nnvalsum – значения4(всеспинынаправленывверх),2(тривверхиодинвниз),0
(двавверхидвавниз),–2(тривниз,одинвверх),–4(всечетыревниз).Такимобра‐
зом, при переворачивании спина можно получить десять вариантов значений из‐
мененияэнергии.
Передтемкакрассчитатьизменениеэнергии,создадимтаблицуеевозмож‐
ныхзначений:
energydiff[ 1, 4] = 2 (B + 4J); energydiff[ 1, 2] = 2 (B + 2J);
energydiff[ 1, 0] = 2 (B + 0J); energydiff[ 1,-2] = 2 (B – 2J);
energydiff[ 1,-4] = 2 (B – 4J); energydiff[-1, 4] = -2 (B + 4J);
energydiff[-1, 2] = -2 (B + 2J); energydiff[-1, 0] = -2 (B + 0J);
energydiff[-1,-2] = -2 (B – 2J); energydiff[-1,-4] = -2 (B – 4J);
143

Согласноусловию,отрицательноезначениевеличины energydiff означает
понижениеэнергии решетки, а положительное значение этой величины –увеличе‐
ниеэнергиирешетки.
4.ИспользуяметодМетрополиса,решаем,нужнолипереворачиватьспинна
выбранномместе:
4а.Проверяем,неполучаетсялиприпереворотеспинаотрицательноезначе‐
ниеизмененияэнергии.Энергияповерхностипонижается врезультатепереворота
(т.е.если energydiff – отрицательна).
energydiff[lat[[i1, i2]], nnvalsum] < 0
4б.Еслиизменениеэнергиинеотрицательно,проверяем,выполняетсялиус‐
ловие,такое, чтоэкспонента от величины изменения энергии сминусом должна
бытьбольшеслучайногочислаот0до1.
Энергиярешеткиповышаетсяврезультатепереворота,новеличина
exp[-energydiff], большечемслучайноечислоот0до1.
Random[] < Exp[-energydiff[lat[[i1, i2]], nnvalsum]
Чембольшеувеличениеэнергииприперевороте,тембольшеположительная
величина energydiff, следовательно, уменьшается значение экспоненты и уве‐
личиваетсявероятностьвыполнениявышеописанногоусловия.
4в.Еслихотябыодноизэтихусловийвыполняется,переворачиваемспин.
lat[[i1, i2]] = –lat[[i1, i2]]
4г.Возвращаемзначениеполучившейсяконфигурации.
МетодМетрополиса,(пп.4а‐г),выражаетсяусловием
If[energydiff[lat[[i1, i2]], nnvalsum] < 0 ||
Random[] < Exp[-energydiff[lat[[i1, i2]], nnvalsum],
lat[[i1, i2]] = -lat[[i1, i2]]; lat, lat]
5.Выполнимпоследовательностьшагов2–4 m раз.
Используявышеперечисленные фрагментыкода,можносоставитьпрограмму
для моделиИзингаиполучениядинамикинамагниченности mag:
s := (
energydiff[ 1, 4] = 2 (B + 4J); energydiff[ 1, 2] = 2 (B + 2J);
energydiff[ 1, 0] = 2 (B + 0J); energydiff[ 1,-2] = 2 (B – 2J);
energydiff[ 1,-4] = 2 (B – 4J); energydiff[-1, 4] = -2 (B + 4J);
energydiff[-1, 2] = -2 (B + 2J); energydiff[-1, 0] = -2 (B + 0J);
energydiff[-1,-2] = -2 (B – 2J); energydiff[-1,-4] = -2 (B – 4J);
{i1, i2} = {Random[Integer,{1, n}], Random[Integer,{1, n}]};
If[i1 == n, dn = 1, dn = i1+1]; If[i2 == n, rt = 1, rt = i2+1];
If[i1 == 1, up = n, up = i1-1]; If[i2 == 1, lt = n, lt = i2-1];
nnvalsum = lat[[dn, i2]] + lat[[up, i2]] +lat[[i1, rt]] + lat[[i1, lt]];
If[energydiff[lat[[i1, i2]],nnvalsum] < 0 ||
Random[] < Exp[-energydiff[lat[[i1, i2]], nnvalsum]],
lat[[i1, i2]] = -lat[[i1, i2]];lat,lat];Return[lat]
)
144

n = 50; m = 100; B = 0; J = -0.1;
initconfig = 2*Table[Random[Integer], {n}, {n}] – 1; lat = initconfig;
T=Table[0,{m}]; mag=Table[0.,{m}];
Do[T[[i]] = s; l = Flatten[T[[i]]]; nl = Length[l];
mag[[i]] = Abs[Sum[l[[j]], {j, 1, nl}]]/nl^2, {i, 1, m}]
ListPlot[mag, PlotJoined -> True]
Получим один из результатов операции «переворота» 1000разнарешетке
50×50системы,длякоторойB/kT=0иJ/kT=–0,1:
0.000014
0.000012
0.00001
-6
8ґ 10
-6
6ґ 10
-6
4ґ 10
-6
2ґ 10
200 400 600 800 1000
С помощью функции ListDensityPlot и оператора Do,можнопросмот‐
ретьсостояние моделиИзинга T[[i]] налюбомшаге.Ниже приведенрезультат
приn=10черезкаждые10шагов.
10
8
6
4
2
0
0 2 4 6 8 10
10
8
6
4
2
0
0 2 4 6 8 10
10
8
6
4
2
0
0 2 4 6 8 10
10
8
6
4
2
0
0 2 4 6 8 10
10
8
6
4
2
0
0 2 4 6 8 10
10
8
6
4
2
0
0 2 4 6 8 10
10
8
6
4
2
0
0 2 4 6 8 10
Любойнабортакихпошаговыхснимковможноанимировать.
8.5.ДругиеприменениямоделиИзинга
Впервые количественный анализ модели был проведен в 1924 г.
Эрнстом Изингом в его докторской диссертации. В 1925 г. полученные
им результаты были опубликованы в его первой и единственной публикации. О том, насколько важной оказалась модель Изинга для последующего развития физики, свидетельствует хотя бы тот факт, что уже
после 1966 г. появилось около 20 тыс. публикаций со ссы
нальную работу Изинга (рис. 8.4) и более 300 тыс. публикаций, использующих или развивающих эту модель.
Введенная изначально для понимания природы ферромагнетизма,
модель Изинга оказалась в центре разнообразных физических теорий,
145
лкой на ориги-

относящихся к критическим явлениям, жидкостям и растворам, спиновым стеклам, клеточным мембранам, моделированию иммунной системы, различным общественным явлениям и т. д. Кроме того, эта модель
служит полигоном для проверки методов численного моделирования
различных физических явлений.
Рис 8.4. Ежегодное количество публикаций, посвященных модели Изинга
после 1966 г. (общее число публикаций за 1966–2003 гг. – около 20 тыс.)
8.5.1.Задачаокоммивояжере
Алгоритм, сходный с алгоритмом Метрополиса, может быть использован в достаточно неожиданной области – в задаче поиска кратчайшего пути на графе. Эта задача называется задачей о бродячем торговце (задачей о коробейнике, задачей о коммивояжере).
Пусть имеется n городов. Некоторые из них связаны между собой
дорогами различной длины. Бродячий торговец хотел бы посетить все
эти города по одному разу, пройдя пр
и этом наименьшее расстояние.
Точно задача может быть решена методом полного перебора, что приводит к колоссальному объему вычислений в реальных задачах. А такие
задачи возникают очень часто, особенно на транспорте. В то же самое
время можно найти решение, близкое к оптимальному, используя метод
Монте-Карло.
Обозначи
м через а некоторую последовательность посещения городов, а через L(a) – соответствующую этой последовательности длину
пути. Мы хотим найти такую последовательность а, при которой длина
146

пути была бы минимальной. Будем применять для этой цели алгоритм
Метрополиса, с той лишь разницей, что мы вместо переворота спинов
будем менять последовательность посещения городов. Тогда второй
пункт алгоритма Метрополиса будет звучать примерно так: «В заданной
последовательности посещения городов случайным образом выбираем
два города и меняем их местами». Роль энергии в это
м случае будет играть длина пути. Но что же такое в этом случае температура? Температура – это некоторый управляющий параметр. Первоначально он выбирается достаточно большим, а затем медленно понижается. Если при
дальнейшем понижении температуры длина пути перестает меняться, то
значит, минимум достигнут.
Понятно, что при малом числе городов трудоемкость метода будет
чрезвычайно боль
шой. В то же время, поскольку трудоемкость обычных
методов растет экспоненциально с ростом системы, этот метод становится весьма эффективным именно для больших систем.
8.5.2.Распознаваниеобразов
Удивительное и неожиданное применение модели Изинга связано с
задачами распознавания образов. Такое применение модели предложил
в 1982 г. Хопфилд. Оказалось, что ферромагнитная модель Изинга имеет много общих черт с ассоциативной памятью, то есть способность
распознавать образ по неполной или искаженной информации о нем.
Для того чтобы моделировать ассоциативную память, система
должна обладать следующ
ими свойствами:
1. Система должна состоять из большого числа n более или менее
однородных элементов – нейронов, связанных между собой. В простейшем случае нейрон считают двоичным элементом. Состояние каждого из них определяется состоянием остальных элементов за некоторый предшествующий интервал времени и связями между ними.
2. Система должна обладать способностью к классификации, то
есть 2
n
входным сигналам (начальным состояниям системы) должно соответствовать существенно меньшее число выходных сигналов (конечных стационарных состояний системы, аттракторов). Набор аттракторов
является информацией, записанной в памяти. Переход системы от начального состояния к конечному называется процессом распознавания
образа по его части, заданной входным сигналом.
3. Система должна обладать способностью к обучению, то есть до-
пускать добавление новых аттракторов без существенн
ого искажения
старых.
147

4. Работа системы должна быть устойчивой по отношению к сбоям
в работе отдельных элементов и связей.
Перечисленными свойствами в значительной мере обладает уже
знакомая модель Изинга. Однако учитывая специфику рассматриваемой
задачи, подобную сеть, состоящую из дискретных двоичных элементов
и связей, называют нейронной сетью. Недостатком обычной модели
Изинга является то, что при низких температур
ах она обладает только
двумя стационарными состояниями (все спины направлены либо вверх,
либо вниз). Однако, если коэффициенты обменного взаимодействия I
i,j
знакопеременные, то количество стационарных состояний существенно
увеличивается. Природные объекты, обладающие такими свойствами,
называются спиновыми стеклами. Поскольку энергия спинового стекла
имеет множество локальных минимумов, то можно сказать, что система
помнит набор различных образов (стабильных состояний). В зависимости от начального состояния система будет релаксировать к тому или
иному конечному состоянию. Естественно, система будет пер
еходить в
ближайшее состояние с минимальной энергией. Таким образом, система
способна к классификации. Задавая различные наборы I
, можно запи-
i, j
сывать в память различные образы.
148

СПИСОКЛИТЕРАТУРЫ
1. Аккерман А.Ф. Моделирование траекторий заряженных частиц
в веществе. – М.: Энергоатомиздат, 1981. – 200 с.
Биндер К., Хеерман Д.В. Моделирование методом Монте-Карло
2.
в статистической физике / перевод с англ. – М.: Наука, 1995.
Введение в математическое моделирование / под ред. П.В. Тру-
3.
сова. – М.: Изд-во «Интеграция», 2000. – С. 9–30.
Воробьев Е.М. Введение в систему «Математика». – М.: Фи-
4.
нансы и статистика, 1998. – 262 с.
Гулд Х., Тобочник Я. Компьютерное моделирование в физике.
5.
Ч. 2. – М.: Мир, 1990. – 400 с
Дьяконов В.П. Системы символьной математики Mathematica 2
6.
и Mathematica 3. – М.: СК Пресс, 1998. – 328 с.
Капица С.П., Курдюмов С.П., Малинецкий Г.Г. Синергетика и
7.
прогнозы будущего. – М.: Наука, 1997. – 286 с.
Мандельброт Б. Фрактальная геометрия природы. – М.: Инсти-
8.
тут компьютерных исследований, 2002. – 656 с.
Методы Монте-Карло в статистической физике / под ред.
9.
К. Биндера. – М.: Мир, 1982.
Соболь И.М. Метод Монте-Карло. – 4-е изд. – М.: Наука. 1985. –
10.
80 с.
Советов Б.Я., Яковлев С.А. Моделирование систем. – М.: Нау-
11.
ка, 1998.
12.
ние. Вводный курс: учеб. пособие. – М.: Едиториал УРСС, 2003. – 144 с.
Хеерман Д.В. Методы компьютерного эксперимента в теорети-
13.
ческой физике. – М.: Наука, 1990. – 176 с.
Эйген М., Винклер Р. Игра жизни. – М.: Наука, 1979. – 96 с.
14.
Gaylord R.J., Wellin P.R. Computer Simulations with Mathematica. –
15.
New York: Springer-Verlag, 1995. 298 p.
.
149

ОГЛАВЛЕНИЕ
1.ОПРЕДЕЛЕНИЕИНАЗНАЧЕНИЕМОДЕЛИРОВАНИЯ.......................................................2
1.1.Чтотакоемодель?.......................................................................................................3
1.2.Материальноеиидеальноемоделирование..........................................................4
1.3.Определениемодели.................................................................................................5
1.4.Свойствамоделей.......................................................................................................7
1.5.Целимоделирования..................................................................................................9
1.6.Классификациямоделей..........................................................................................10
1.6.1.Материальноемоделирование........................................................................11
1.6.2.Идеальноемоделирование...............................................................................13
1.6.3.Когнитивные,концептуальныеиформальныемодели.................................15
2.МЕТОДМОНТЕ‐КАРЛО....................................................................................................20
2.1.Общеепредставлениеометоде..............................................................................20
2.1.1.ПроисхождениеметодаМонте‐Карло.............................................................20
2.1.2.ДвеособенностиметодаМонте‐Карло............................................................21
2.1.3.Задачи,решаемыеметодомМонте‐Карло.........................................................21
2.2.Случайныевеличины................................................................................................22
2.2.1.Н
екоторыеопределения....................................................................................23
2.2.2.Дискретныеслучайныевеличины....................................................................25
2.2.2.1.Характеристикидискретныхслучайныхвеличин.....................................25
2.2.2.2.Математическоеожидание,мода,медиана............................................25
2.2.2.3.Дисперсия......................................................................................................27
2.2.3.Непрерывныеслучайныевеличины.................................................................28
2.2.4.Нормальныеслучайныевеличины...................................................................30
2.2.4.1.Определениенормальнойслучайнойвеличины.....................................30
2.2.4.2.Правило«трехсигм»....................................................................................31
2.2.4.3.Центральнаяпредельнаятеорема.............................................................31
2.3.ПрименениеметодаМонте‐Карло.........................................................................32
2.3.1.ОбщаясхемаметодаМонте‐Карло..................................................................32
2.3.2.Прохождениянейтроновсквозьпластинку.....................................................33
2.3.3.Схемамоделированиятраекторийнейтронов...............................................34
3.ПОТОКЗАРЯЖЕННЫХЧАСТИЦВКРИСТАЛЛЕ...............................................................37
3.1.Эффектканалирования.............................................................................................37
3.2.Источникионов.........................................................................................................41
3.3.Кристаллическаяс
труктура......................................................................................41
3.4.Рассеяние...................................................................................................................44
150
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
