книги из ГПНТБ / Соболь И.М. Численные методы Монте-Карло
.pdfГ-*“ - •
Метод
Имеющиеся
Величины
Расчет і-го зВенп
Начало Н*1!-го
'зВена
W)
rt * Bo
X
fl
Пі+1
Да Нет
Конецтраектории
Ѵа =0
y<sui ■
Да \Нет
Конец траектории
Зг7
S2,
4*1
т
г ^ т
%
fi
Пн
Гы*В,?
Да \Нет Конецтраектории
л
%Г%аи,
^IH
Рис. 65.
(2)
V W ,
h . - m - t i
Пн
~=5 |
*»4. |
и |
|
У^м ?
Да \Нет
Конецтраектории
у"/Ч\ч,
Bi*
ш
ѵ\ А
i n W ; ft
Пн
зн і т
Щ*Г ui*1siH
hu r hi V - ^ ?
Ч н ^ ? Пет Да
Конецтраектории
На % ,
%*,
.ГЛ[ ПРОЦЕССОВ ЕСТЕСТВЕННЫХ ОДЕЛИРОВАНИЕ М 8 3 3
О
§ 3] |
|
ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ ВЕСОВ |
|
|
230'- |
||||||||||
Во |
всех |
методах |
Q0 |
выбирается случайно (формула (15) |
гл. 2); |
||||||||||
Qj. разыгрывается |
по |
плотности |
р |
(гг, |
£2£_Q)- |
величина |
= |
||||||||
= X ( c ) /S ( 0 - |
|
и |
(1) |
пробег |
§(- |
определяется |
из |
уравнения |
|||||||
В |
методах (0) |
|
|||||||||||||
(!;,■) = у, |
а гі+ != /■ ,•+ |
В методах |
(2) |
и |
(3) |
пробег І- опреде |
|||||||||
ляется из уравнения |
F t |
|
= yFi (/,), |
а г;+1 = |
/у + |
б;£2; (^— рас |
|||||||||
стояние от точки Гі |
до границы С0 |
по направлению Q,). |
|
|
|||||||||||
З а м е ч а н и е . |
|
Из |
рис. 65 видно, что количество |
вычислении в- |
|||||||||||
методе (1) не больше, чем в методе (0). Поэтому из |
(18) |
вытекает, |
|||||||||||||
что для |
рассматриваемой задачи |
алгоритм, |
использующий |
оценку |
|||||||||||
Т]*,1', всегда более экономичен, чем алгоритм, основанный |
на |
имита |
|||||||||||||
ции процесса, использующий оценку т\А - |
|
|
|
|
|
|
|
||||||||
3.4. |
Различные |
статистические |
веса. |
Величины w |
|||||||||||
использованные |
|
в |
пп. 3.1, 3.2 |
и |
3.3, |
называют |
весами |
||||||||
(или статистическими весами). |
И |
вместо того чтобы го |
ворить о пакете, содержащем wt нейтронов (число wt обычно дробное!), говорят о нейтроне с весом wt. При движении нейтрона по траектории вес его меняется.
3.4.1. Р а с щ е п л е н и е т р а е к т о р и й . Использо ванные выше рассуждения (с пакетом идентичных ней тронов) показывают, что после очередного столкновения в точке г{ вместо одного нейтрона с весом ш,- можно рассматривать m идентичных нейтронов, вес каждогоиз которых равен wj/n. Таким образом, траектория ней трона после точки г,- как бы расщепляется на m траекто рий, каждая из которых дальше строится независимо.
Этот прием используют для лучшего учета прохожде ния нейтронов в некоторых «важных» областях.
3.4.2. С л у ч а й н ы й о б р ы в т р ' а е к т о р и й. Этот - прием в каком-то смысле противоположен предыдуще му: после очередного столкновения в точке г,- для нейтро на с весом ш,- можно разыграть дополнительную альтер нативу: либо с вероятностью р вес нейтрона увеличивает ся и становится равным wjp, либо с вероятностью 1—р нейтрон «гибнет», и траектория заканчивается. Дейст вительно, в среднем при такой процедуре вес нейтрона остается прежним:
(ш,/р) •/?+0- (1—р) =Wu
Случайный обрыв траекторий используют в тех слу чаях, когда вес нейтрона становится весьма малым и продолжать рассчитывать его траекторию «невыгодно»;.
-240 МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ [ГЛ. 8.
•вклад от всех последующих столкновений сравнительно невелик, а вычислений много; и в то же время пренеб
речь таким весом нельзя. |
|
|
|||
3.4.3. |
С и с т е м а т и ч е с к.а я в ы б о р к а . Рассмотри |
||||
источник |
нейтронов с |
энергией Е0 и |
равновероятными |
||
направлениями скоростей, распределенный |
в области Gü |
||||
с плотностью р(г). Требуется промоделировать N нейтро |
|||||
нов из этого источника. |
|
|
|
||
Вместо того чтобы независимо разыгрывать началь |
|||||
ные положения всех |
этих нейтронов |
в |
соответствии |
||
с плотностью р(г), |
можно разбить G0 на |
т непересека- |
|||
ющпхся областей |
|
|
|
|
|
|
Gо |
Gо1“}- G02T“ • • • -\~Go,„ |
|
и выбрать в них по N\, N3, ..., Nm начальных положе ний (сумма Л 'і+ .. .-j-jVm не обязана равняться /V). При этом нейтронам, у которых r0^ G 0k, придется приписать начальные веса
wok = (N/Nit) j р (г) dr, |
(32) |
так, чтобы сумма начальных весов всех A^-f- •.. +iVm нейтронов равнялась
Л/ |01’0 1 + . . • + A ;m^0m = А/. |
|
|
Заметим, что начальные направления для |
каждого |
|
из этих нейтронов можно выбирать |
независимо, а плот |
|
ность распределения Го внутри G0h |
равна р (г)/ |
\p(r)dr. |
^Ok
3.5. Статистические веса и существенная выборка. Обоснование статистических весов в простейших задачах может быть получено при помощи метода существенной
выборки (гл. 3, п. 3.2). |
В самом деле, пусть требуется |
вычислить математическое ожидание M/(Q), где случай |
|
ная точка Q = (gi........£„) |
имеет плотность pQ(x........... |
. . . , хп), определенную во всем /г-мерном пространстве.
Можно |
ввести |
любую другую случайную точку |
Н = |
= (ль |
• • •>л») |
Сплотностью Р н { Х \ , ..., хп), допустимой по |
|
.-отношению к произведению f(x, ..., х„)pQ(лу,..., |
л:п) , и |
§ 3] ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ ВЕСОВ 2-U
заменить расчет |
Mf(Q) расчетом М[f(H)w(H)], где |
||||||
ибо |
|
|
w ( I I ) = p Q(II)/p„(H), |
(33)] |
|||
|
|
|
|
|
|
|
|
М[/ (//) w (II) ] = |
j*/ (Р) w (Р) ри (Р) dP = |
|
|||||
|
|
|
|
|
= \ f ( P ) P : J ( P ) d P = W ( Q ) ; |
||
здесь Р— (л'і, . |
. л:„). |
Если координаты т] |
т]„ моде |
||||
лируются |
последовательно, |
с использованием |
условных |
||||
плотностей |
(и. 2.2 гл. 2), то из тождеств |
|
|||||
Pq ( x l |
|
хп) = |
ръ (xL) рі2(л'з I ху) .. ,ръгі (хпI Ху, . . . I хп—і) |
||||
и Рн (Ху , . . . , Хп) = р( Ху) рПі(х.у I Лу) . . . Рг]п (хпI Ху,..., Х,і—\) |
|||||||
вытекает, что «вес» равен |
|
|
|
||||
Р.-Л Н ) |
|
(зіі) |
( n a h ,) |
■ /J5n (T) n h i - - - - ' TlfI_ , ) |
|||
Рн W |
PП, (’ll) |
Pn. (’b 1’ll) ■" |
Рп,г К 1’ll. • • •- ’l.-l) ‘ |
||||
Вычислять |
вес можно |
рекуррентно, |
используя |
формулы |
|||
К’о = |
1; W{ = Wi- 1 |
О7* h i - ■ • - ’lf-i) |
|
||||
^Лі(Чіh l- ••••’!(-!) ’ |
|
||||||
|
|
|
|
w = wn. |
|
|
|
Именно так вводились в гл. |
5 величины Wit которые там |
||||||
назывались весами. |
|
|
|
|
Обычно на практике считают, что введение весов при водит к уменьшению дисперсии, если ш <1. Эта рекомен дация требует пояснения, так как во всем пространстве неравенство w<l\ невозможно: оно равносильно не равенству pQ<ip,i, которое противоречит требованию нормированное™ плотностей. В действительности жела тельно, чтобы неравенство ш< 1 выполнялось в той ча сти В пространства, которая вносит основной вклад в ин тегралы MP(Q) и М [f2(H)w2(H)]\ тогда
М f2(Q) = j’ Г" (Р) Pq (Р) dP « f Г1 (Р) Pq (Р) dP, 'в
М [Р (H)w2 (Н) ] =• J Г- (Р) w2 (Р) ри (Р) dP =
= j Р (Р) W (Р) P q (Р) dP Л 1' /2 (Р) W (Р) P q (Р) dP <
ъ
< f Р (р ) Pq (Р) dP,
в
и, следовательно, D[/(//) to(//) ] < D /(Q ).
16 И. M. Соболь
242 МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ [ГЛ. 6
Во многих практических задачах выполнение этого условия гарантируется тем, что } (Р )Ф 0 только в некото рой части фазового пространства, и как раз в этой части ш(Р) < 1 . Например, в задаче п. 1.1 распределе ние нейтронов, вылетевших из области Go, на величину рА не влияет. Введя веса, учитывающие вылет из области (п. 3.2), мы исключаем моделирование нейтронов вне С0
п получаем |
метод расчета, в котором всегда |
1. |
3.6. |
Метод подобных траекторий. Нередко приходи |
ся рассчитывать методами Монте-Карло серин геометри чески подобных задач. В такой ситуации можно ограни читься моделированием случайных траекторий лишь для одной из этих задач, а траектории для всех других задач получать преобразованием подобия. Этот метод был предложен К. Мортоном [161], который, моделируя про хождение нейтронов через однородную пластинку толщи ны Іі— 1, вычислял вероятности прохождения р(1і) для целой серии однородных пластинок и даже оценил про изводную dpld.li при Іг=0. Дальнейшее развитие мето да имеется в [8, 95]. Обоснование его следует из
§4 гл. 3.
Вкачестве примера рассмотрим задачу о поглоще нии нейтронов из п. 1.1. Предположим, что требуется вы числить вероятности поглощения рА(Ъ) для серии одно родных областей G0(Ä.) с центром подобия в источнике Го (рис. 66), К— коэффициент подобия. Расчет траекто рий Т в G0(1) будем осуществлять методом п. 1.1 или 3.1., а траектории Т' в G0(X) будем считать подобными Г.
Нетрудно заметить, что направления звеньев траекто рий Т' и судьбы нейтронов при столкновениях в точках
этих траекторий окажутся разыгранными правильно, так как законы рассеяния и поглощения во всех точ ках одинаковы*). Однако длины звеньев траекторий Т' будут разыграны неверно.
В самом деле, |
длина свободного пробега |
для |
траектории V должна выбираться в соответствии с |
||
плотностью |
|
|
_________________ |
Р і {х) = 2 е ~ х*. |
|
*) Метод подобных траекторий применим также в задачах, в которых учитываются потери энергии нейтронов при столкновениях: потери в точках траекторий Т' будут такими же, как в соответству ющих точках траекторий Т.
§ 3] |
ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ ВЕСОВ |
213 |
Вместо этого мы полагаем %' равным для траектории Т имеет ту же плотность плотность равна
рк1(х) = (1Д)Рі(хА) =
где пробег Р \ { х ) , так чг
О ѵл
Согласно (33) этот произвол надо компенсировать ве совым множителем
Р‘№ ) І Р ы № =№'->■'*•
Поэтому, если на траектории Т' из точки г,- по направ лению й, вылетел нейтрон с весом Wc, то надо считать,
ВдШ
Рис. 66.
что в точку Гі+\= Гі |
прилетит нейтрон с весом |
Ѵі + і =
Если расчет ведется методом п. 3.1, то после учета по глощения в точке Сч-і останется нейтрон с весом
Wi.pi = Wi (2 s/2 ) )ieil |
(34) |
Для того чтобы выразить веса ш,- через веса wt в обла сти Go(l), разделим (34) на (15):
Wi+i/wi+l = [wi/wi]
244 |
МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ |
[ГЛ. 6 |
|
Выбрав wq — w0= 1, |
получим формулу |
|
|
|
w'i = |
щД'е(1_А-,2Г*>+---+£/-і). |
|
'(Легко доказать, что последняя формула справедлива также в случае метода и. 1.1.)
Согласно (16) количество поглощенных на траекто рии V в G0(X) нейтронов равно
rj(» (X) = ü te>A'ß<1_,',s(b+",+6i- ,).
1= 0
3.7. Векторные веса. При расчете многих задач нейтронной фи зики (в частности, связанных с ядерными реакторами) вместо одно группового приближения используют более точное многогрупповое приближение [25, 51, 53]: предполагается, что энергия каждого ней трона может принимать конечное число значений Е\>Е2> ...
Таким образом, в каждый момент нейтроны оказываются распреде
ленными на т групп. |
При столкновении нейтрона с ядром атома |
|||||
среды возможно как «собственно» рассеяние, при |
котором |
нейтрон |
||||
остается в той же группе, так и замедление, когда |
нейтрон |
из груп |
||||
пы / переходит в группу k, |
причем k > j . |
|
|
|
|
|
Рассмотрим задачу |
о |
поглощении |
нейтронов |
(п. 1.1) в много |
||
групповом приближении. Пусть заданы |
числа р (-— вероятности |
то |
||||
го, что нейтрон, испущенный источником, принадлежит группе |
но |
|||||
мер у. Задана матрица сечений рассеяния |
|
|
|
\ |
1 |
“ |
\хП1 |
/ |
} |
\ |
~т |
|
|
|
|
п полные сечения для нейтронов всех групп |
|
|
|||
s ' = 2{ + s |+1 |
|
... + 2L + 2 '. |
так что вероятность того, что нейтрон группы / при столкновении
перейдет |
в группу к, |
равна |
а |
вероятность того, что |
он |
по |
||
глотится, |
равна |
• |
Для |
простоты будем |
считать, что |
на |
||
правления |
рассеянных |
и |
замедленных |
нейтронов |
(так же, как и |
|||
нейтронов |
источника) |
распределены |
равномерно |
по пространству. |
||||
Требуется |
вычислить вероятность поглощения р А |
в области |
G0 для |
|||||
одного нейтрона источника. |
|
|
|
|
|
|||
Легко |
видеть, что |
метод п. |
1.1 без |
труда переносится на |
такую |
задачу: сперва разыгрывается энергия испущенного нейтрона, а за
тем |
прослеживается его траектория (до поглощения |
или до |
вылета |
из |
области G0); конечно, при каждом столкновении |
нейтрон |
может |
S 3] ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ ВЕСОВ 2-15
перейти в другую энергетическую группу. Методы пп. 3.1—3.3 так
же применимы *). |
|
|
|
|
|
|
|
|
|
|||
В |
работе |
[80] использованы статистические веса более |
слож |
|||||||||
ного вида, |
и |
строится одна |
траектория |
для нейтронов всех |
групп. |
|||||||
Предположим, |
что вдоль |
траектории движется |
«большой пакет», со |
|||||||||
держащий |
нейтроны всех |
групп. Пусть |
вектор |
w(i) — {w](i), . . . |
||||||||
. . . , |
wm (i)} |
описывает состав |
пакета после столкновения |
в |
точке |
|||||||
г/, так |
что |
Wj(i) — количество |
нейтронов, принадлежащих |
группе |
/. |
|||||||
Воспользуемся весами, |
заменяющими |
розыгрыш |
поглощения |
и |
||||||||
учитывающими вылет из области G0 (п. 3.3). Фиксируем номер од |
||||||||||||
ной из групп |
/ = / о и условимся |
свободный пробег I' |
пакета |
разыг |
||||||||
рывать по закону (26) для |
этой |
группы, |
так что |
плотность g' |
равна |
|
|
-zioxj! |
- |
ъіч\ |
|
Р ? ( х ) = Ъ Ь 'е |
I V ~ е |
}< 0 < * < / , . |
|
где |
— расстояние от |
точки |
гі до |
границы G0 по направлению |
полета Й,-**). Так как истинная длина |
свободного пробега для нейт |
|||
рона группы j внутри Gо имеет плотность |
—£'.ѵ//
|
|
Р ' ( х ) = 2 / е |
I V ~ е |
1) , |
0 < х < 1 ( . |
|
||||
то, согласно |
(33), |
необходимо умножить количество таких |
нейтро |
|||||||
нов на весовой множитель |
|
|
|
|
|
|
||||
|
|
|
PjH') |
ѵМі _ , -г°л |
- ( z i - |
|
(35) |
|||
|
|
рѵ <*'> “ |
- Z |
‘l ( |
|
|
|
|||
|
|
|
|
|
|
|||||
|
|
|
|
S ' |
|
|
|
|
|
|
Количество нейтронов группы / в пакете |
после |
столкновения мы |
||||||||
обозначили |
Wj(i). |
Из них |
в |
области |
G0 |
останутся |
лишь |
|||
Wj (i ) |
( |
—zh.\ |
нейтронов. С учетом (35) |
надо считать, что в точку |
||||||
1.1 |
— е |
‘) |
||||||||
j |
= |
г,-+ |
і'Й,- |
прилетят всего |
|
|
|
|
|
|
|
|
|
|
«I (‘ + 1) = и»/ (0 Е ' V |
|
|
|
|||
нейтронов группы /, где множитель |
|
|
|
|
|
|||||
|
|
|
|
|
■zioit \ |
zl— zi°)v |
|
|||
|
|
U ( i ) = (і/5У°) (і — |
|
п |
|
|
|
|||
*) Можно также вычислить все вероятности |
поглощения — на |
|||||||||
зовем их р'д |
— при условии, |
что испущен |
нейтрон группы /, и за |
|||||||
тем сосчитать величину рА — р\рі + |
• |
• • + Р"дРт ■ |
|
|
**) Будем писать g' без индекса і, чтобы ие загромождать из
ложение индексами.
2 4 6 МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ [ГЛ. С
В результате столкновения |
в точке |
из этих о; (і + 1) нейт |
|
ронов часть, а именно |
Оу ( t -f- |
1) (^ o /S O |
нейтронов, поглотятся, |
а Уу ( / + 1) (2 'і І^Еі) нейтронов |
перейдут в группу номер k. Из всего |
||
пакета в группу номер k попадут |
|
||
|
к |
[?Ыу !) V1(г + >) |
|
tM I' + |
1) = ]S |
||
|
/«* |
|
нейтронов, а количество поглощенных нейтронов равно
т
2 ( l i / s ') м* + •>■ /=І
Нетрудно проверить, что если ввести «-мерные векторы
Р = {Рі..........Pm}’ »(О = { М О /2 1. •••> om ( 0 /} j m).
а = {V *. . ...Ѵ " ’] я диагональную матрицу
то схему расчета весов можно записать в векторной форме:
|
w ( 0 ) = p , |
о (і + |
1) = L{i) ш(і), |
|
|
|
ш (< -Ь 1) = |
So (і + 1) |
(36) |
||
при і= О , 1, |
2, . . . Количество поглощенных за всю историю |
пакета |
|||
нейтронов выражается через скалярные произведения |
|
||||
|
|
СО |
|
|
|
|
11л) = |
2 (“ • |
о(< |
+ !)). |
(37) |
|
|
і=0 |
|
|
|
В [80] |
в качестве j0 выбирался |
номер самой быстрой |
груп |
пы: /о= 1. Вероятно, в некоторых случаях выгоднее в качестве /0
выбирать |
номер |
самой |
важной |
(или |
самой |
многочисленной) |
группы. |
|
расчета траектории пакета от количества групп |
||||
Формулы для |
||||||
т не зависят. При |
увеличении т меняется |
лишь |
размерность век |
|||
торов и матриц в формулах (36). |
|
|
|
|||
Совсем |
другой |
метод |
введения |
векторных весов для решения |
||
интегральных уравнении предложен |
в [61], |
|
|
§ 4] |
СТАТИСТИЧЕСКИЕ ВЕСА |
247 |
§ 4. Статистические веса и интегральные уравнения
4.1. Вероятность р А— линейный функционал от плотности столк
новений. Предположим, что источник нейтронов, описанный в п. 1.1, излучает 1 нейтрон в единицу времени. Обозначим через г(Р ) плот ность столкновений за единицу времени в 5-мерном фазовом прост ранстве (см. гі. 2.1.1) и рассмотрим уравнение (49) гл. 5
г (Р) = J К „ (P ', Р) г (P') dP' + / (Р). |
(33) |
|
Область интегрирования по P'={r', |
Q') в этом уравнении: |
по коор |
динате г'— все пространство, а по |
— все направления. Ядро столк |
новений выписано на стр. 223. Свободный член f(P) — это плотность
первых столкновений. Явное выражение |
для f(P) приведено |
ниже |
|||
в п. 4.2. |
|
в области |
Go может быть |
||
Искомая вероятность поглощения РА |
|||||
записана в форме скалярного произведения pA — (z, |
ф), где |
|
|||
Ч»(Р) = |
1 2 « |
*<?.('). |
|
|
(39) |
а Хс (г) — индикатор области G0 (т. е. |
7.q0— 1 |
при |
r e O 0, |
х Оо= 0 |
|
при гф.йо). В самом деле, |
|
|
|
|
|
Jz ( P) i | >( P) dP = |
И 5 Ѵ 2 ) |
d r $ z { r , |
Q)dQ-r |
|
|
|
Gq |
|
|
|
|
внутренний интеграл представляет собой плотность полного коли чества столкновений в точке г за единицу времени, или, что в на шем случае одно и то же, в расчете на один нейтрон источника; ум
ножив это количество на ( 2 а/2 ) dr, получим количество поглоще ний в элементе dr около точки г, а проинтегрировав по G0, получим
количество поглощений в области G0— также в расчете на один нейтрон источника.
4.2. Плотность первых столкновений. Обозначим
®— (Г — г0)//, / = | г — Го I.
Вероятность того, что направление скорости нейтрона, испущенного источником, окажется в конусе da около направления ш, равна dal (Ап). Далее, рассуждая в точности так же, как в п. 2.1.1, полу чим, что вероятность первого столкновения в элементе dP около
точки Р равна
- h d s
/ (Р ) rfP = ^ 2 ( г ) |
° |
d l 8 ( Q ~ a ) d Q , |
откуда следует формула
= |
е х Р “ I 2 ('о + в») |
в (Q — шз. |
(40) |