Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Соболь И.М. Численные методы Монте-Карло

.pdf
Скачиваний:
24
Добавлен:
24.10.2023
Размер:
9.56 Mб
Скачать

228

МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ

[ГЛ. G

тать, что при столкновении нейтрона с ядрами, кроме реакции, входящих в 2, возможна еще одна — фиктив­ ное столкновение, при котором ни энергия, ни направле­ ние движения нейтрона не меняются. Сечение фиктивного столкновения будем считать равным 2®. Если (ср. при­ мер гл. 2, п. 1,2.2) 2 = 2„+2с+ 2,, то вероятности соот­ ветствующих реакций в условной задаче равны L„/a, LJa, 1ч/а, а вероятность фиктивного столкновения равна 2ф/а. Пробеги в этой задаче легко вычисляются по фор­ муле (8)

(1/а) ln "(,

а тип столкновения разыгрывается с учетом всех четы­ рех возможностей. Ниже доказано, что сумма таких пробегов до первого нефнктивного столкновения подчи­ няется тому же закону распределения (6), что истинный случайный пробег.

Т е о р е м а

1 ([112]).

Рассмотрим нейтрон, вылетающий из

точки .ѵ =0 по

направлению

оси Ох и подчиняющийся законам ус­

ловной задачи. Обозначим через Е координату первого нефиктиано-

го столкновения. Тогда функция распределения |

выражается фор­

мулой

(6).

 

 

 

 

Д о к а з а т е л ь с т в о . Обозначим через ѵ

случайное количест­

во фиктивных столкновений в интервале (0, £)

и

рассмотрим

случаи

ѵ =

і

{і=0, I, 2, ... ). Выберем произвольные

числа ац,

а2, . . .

. . .

1

], удовлетворяющие неравенствам

 

 

 

 

 

О < А, < Ао < . . . < А,- < А,-+ 1 .

 

 

Вероятность того, что фиктивные столкновения окажутся в окрест­

ностях точек Аь . . .

, а ,-, а

первое иефпктивное столкновение — в

окрестности точки а^

равна

(ср. (15) гл. 5)

р ( х і , . . . , а£_(_ ,) dxi .. . d xi+i =

O J X — А

=ае ' і 1

Проинтегрировав эту вероятность по всем возможным а-,, . . . . а

§

2]

МОДЕЛИРОВАНИЕ СВОБОДНОГО ПРОБЕГА

22Э

таким, что

 

<

х, получим вероятность

 

 

 

 

 

 

 

X

 

*і - И1.

 

X ,

 

 

 

 

 

p { s < * , ѵ = (}=_ [ dxi+i

J

 

dxt . . . I p (.V,........xi+ ,) dxi =

 

 

 

 

 

 

 

 

 

*/+i

~ ф (-v'i) dxi • • •

 

— J e

1+1 [«

^

ф (A'r-hI)] dA'(+i

J

 

 

 

 

 

 

 

 

 

 

...

I

У ф (.v,)rf.v,.

 

 

 

 

 

 

 

 

 

 

 

0

 

 

Все

внутренние

интегралы

легко вычисляются.

Если

ввести

обозна-

 

 

X

 

 

 

 

 

 

 

 

 

 

чеиие /ф (х) — (*

fs) ds, то

(заменив

 

на у)

 

можно

будет

 

 

о

 

 

 

 

 

 

 

 

 

 

записать результат в виде

 

 

 

 

 

 

 

 

 

 

Р {1 < X. V = і } = J е~аи [ос - Ѵ ф (у)]

 

 

dy .

 

Отсюда следует,

что

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

г *У-гІг.Ли

 

 

1

Р

< -V} =

V

Р (1

< X, V =

і)

=

Се

 

[« — ^ .ф (y)J

 

 

1=0

 

 

 

 

 

о

 

 

 

 

 

 

 

 

 

=

1 -

- а х

И,„(я)

1 — ехр [— f V

(s) ds[,

 

 

 

 

е

 

Ф> ' =

 

 

 

 

 

 

 

 

 

 

I

 

о

J

что и требовалось доказать.

а

количество

фиктивных

столкновений

 

Так как

при увеличении

возрастает, то обычно стараются выбрать минимально возможное значение, т. е. a = su p 2 . Некоторые другие применения метода по­ стоянного сечения указаны в работах [152, 169].

2.3. Моделирование свободного пробега заряженной частицы.

Рассмотрим пробег

быстрой заряженной

частицы

в

плазме,

состав

и температуры которой (как функции

времени

/

и

координаты г)

заданы. Физические

ограничения на плазму: а)

не

слишком

боль­

шое разрежение; б) ларморовский радиус значительно больше дли­ ны свободного пробега, так что траекторию частицы можно считать прямолинейной: г=Го+ш э.

В результате взаимодействия с электронами и ионами среды

частица теряет

свою

энергию (тормозится). Этот

процесс можно

считать непрерывным,

так что вдоль траектории

 

 

 

 

dEldt = —q(E, г, 1).

 

 

Формулы для расчета q предполагаются заданными.

 

 

Полное сечение 2

заряженной частицы зависит от ее энергии и

положения, так

что в

конечном счете 2 = 2 (£, г,

t).

Скорость ча­

стицы v — ds/dt

связана с ее энергией соотношением

Е — (1/2)Мѵ2,

где М — масса

частицы.

 

 

230

МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ

[ГЛ. 6

Для того чтобы вычислить значения функции

/(/) =

можно численно интегрировать систему обыкновенных дифферен­ циальных уравнений

 

 

dl

dB

 

ds

 

(13)

 

 

 

 

~df ~

~dt

 

 

 

 

 

 

 

с

начальными

условиями

l(to) = 0 ,

E(t0) = E 0,

s[t0) = 0.

Если при

/ =

tk значение Ik = 1 (t^f < l n y ,

а

при t = t k+l значение / fc+1 =

I (^é+ i) > — ln V. то

значения

всех величин

в момент

столкнове­

ния — t = tg,

Е — Eg

и S— I — можно проннтерполнровать:

 

= lk+ г (^+i “

h■),

= Ek ~ г (Ek ~

 

Б =

+ г (sk+i -

sk),

где г = ( -

ln у -

I *)/(/,t+1 -

1к).

Возможен также случаи,

когда

при I = ljz

значение

все

еще не превосходит —Іпу, а частица вылетает из области G пли ее

энергия

оказывается

ниже интересующего

нас

уровня Ек < Д П]ІП.

Тогда частица из дальнейшего рассмотрения исключается. При расчете некоторых задач оказалось удобным выбрать в качестве независимой переменной в (13) энергию Е и численно интегрировать уравнения

dt

1

_ds_ _

V

dl_

_ öS

dE

q

dE

q

dE

q

при E ^ E ^ E mm с

 

начальными

условиями

t(Ea) = t 0, s(E0) = 0,

/( £ o )= 0 .

Для моделирования пробегов заряженных частиц также можно использовать метод постоянного сечения (п. 2.2.3), если только в интересующем нас диапазоне величин sup £ = « < < » . Тогда можно длину свободного пробега разыгрывать по той же формуле (12); затем придется интегрировать два уравнения

 

dE

q

 

dt

 

1

 

 

 

ds

V

'

ds

~

V

 

 

от s = 0 до s = |

(начальные

значения

E ( 0 ) = E 0,

t( 0 ) = / 0)

н, толь­

ко вычислив Eg,

11 и ~2j(Eg,

rg,

tg)t

можно

будет определить

(разыграть), фиктивное ли это столкновение или нет.

 

З а м е ч а н и е .

Изложенный

метод

разработан в [81].

Иногда

взаимодействие заряженной частицы с электронами и ионами среды целесообразно учитывать двояко: взаимодействия, приводящие к не­ большим изменениям энергии частицы, осредняются и включаются в непрерывное торможение q, а сравнительно редкие столкновения,

влекущие за собой значительное изменение энергии («катастрофиче­ ские столкновения»), включаются в 2 и разыгрываются [39, 104].

§ 3]

ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ ВЕСОВ

231

§

3. Использование статистических весов

 

В гл: 5 мы встречались с величинами

или Wh кото­

рые называли весами. Однако при решении многих физи­ ческих задач веса можно вводить, руководствуясь чисто физическими соображениями, отправляясь при этом or естественного процесса и не пользуясь макроскопиче­ скими уравнениями (например, уравнением переноса). Нередко использование весов заметно повышает эффек­ тивность расчета.

Мы рассмотрим несколько способов введения весов на примере задачи о поглощении нейтронов (п. 1.1).

3.1. Веса, заменяющие розыгрыш поглощения. Пре положим, что из источника г0 в направлении Qo вылетел не один нейтрон, а «пакет», состоящий из большого чис­

ла wo идентичных нейтронов. Разыграв длину

пробе­

га |о, определим

точку столкновения для

всего

паке­

та /'і = /'о+|оПо.

В среднем

при

таком

столкновении

[S„(r1)/S(ri)]t«o

нейтронов

поглощаются,

а [2„(гі)/

/2(гі)]ау0 нейтронов

рассеиваются.

Поэтому,

разыграв

(в соответствии

с индикатрисой

рассеяния)

новое

на­

правление движения

пакета

Qi

 

будем

считать,

что

в этом направлении движется пакет,

состоящий из

 

 

о>і = [2 s (п) /2 (п)] w0

нейтронов.

Правила построения траектории оказываются во многом такими же, как в п. 1.І: так же разыгрываются пробеги | і, функции распределения которых в соответст­ вии с (6) равны

Ft (.ѵ) = 1 — exp I — j 2 (П +

As) dsj,

(14)

так же разыгрываются направления Q(. Однако при

столкновении в точке л +1= Л + £ А

«судьба»

нейтрона

не разыгрывается:

вместо этого предполагается, что

аУі[2о(гі+і)/Е(/-і+і) ]

нейтронов из пакета поглотились,

а в рассеянном пакете остаются лишь

 

 

a»f+i =

[2 s (П + і)/2 (Он-1)] wt

(15)

нейтронов. История пакета заканчивается тогда, когда

232 МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ [ГЛ. 6

он вылетает из области G0. Количество поглощенных за всю историю нейтронов равно

 

ч!»’ = S

[2 в (п+і)

I 2 (п + .)] ш і,

 

(16)

 

£=0

/

 

 

где

V— номер последней точки

траектории внутри

G0

(другими словами, rv+i^G 0).

что величины

(15) и

Наконец, нетрудно

заметить,

(16)

пропорциональны

ш0. Поэтому, несмотря

на

рас­

суждения о «большом

количестве» аУо можем

считать,

что

 

 

Шо=1.

 

(17)

 

 

 

 

Тогда величина тД1)

— количество поглощении в расчете

на одни испущенный нейтрон — окажется

оценкой иско­

мой вероятности: М'^л* = Ра-

(Формальное

доказатель­

ство имеется в § 4),

 

 

 

Для приближенного расчета рл нужно реализовать

достаточно большое число N траекторий указанного ви­

да (с Що=1)'ІІ положить

 

 

 

S—1

 

 

где WO« — значение 7]л\

полученое

на

траектории

номер з.

 

 

 

Докажем теперь, что оценка т)л *всегда не хуже оцен­ ки Цл, используемой при имитации поведения нейтронов

(П. 1.1):

(18)

Согласно лемме п. 1.1. для'этого достаточно доказать,

что

О О іл ^ І .

 

 

 

 

 

Введем для краткости обозначение

 

 

 

 

Si = ^ ( n ) ІЩ(гі).

(19)

Из

формул (15),

(16)

и (17) вытекает, что при гТзП

 

Wi =

sLs,

... Sc,

 

 

и,

=

V

Ѵа ... Sc (1 — si+i).

(20)

 

Щл

2

 

5 3]

ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ ВЕСОВ

2 3 3

Последнее выражение легко преобразовать к виду

 

 

УІА* = 1 - SlS-2 • • • Sv,

(21)

откуда сразу следует требуемое неравенство.

3.1.1. В большинстве реальных задач дисперсия Dr)*)1' заметно

меньше, чем Dr^, однако общих оценок на этот счет мало. Об­ ратимся к частному случаю — однородной области G0, когда

Es W / S W 3 S >"'

Обозначим

через

р,- вероятность того,

чю

траектория пакета 'за­

кончится в точке /у.).]

с номером і+ І

 

или,

другими словами, р[==

= Р{ѵ = і}.

Вычислять

эти

вероятности

нам

не потребуется. Заме­

тим только, что ро равно вероятности того,

что нейтрон, испущен­

ный источником,

вылетит

из области

 

G0,

не

испытав

ни

одного

столкновения.

2.

Рассмотрим

задачу

о

поглощении

нейтронов в

Т е о р е м а

однородной области G0

(п.

1.1 ).

Если

 

 

 

 

 

 

 

 

 

 

 

 

Р0 < ( 1 - Р л ) а,

 

 

 

 

(22)

то имеет место неравенство

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Dll',1*

< sDri^.

 

 

 

 

(23)

Д о к а з а т е л ь с т в о

Из формулы

(21)

видно, что в однород­

ной области

случайная

величина

т)^11

может

принимать

только

зна­

чения 1 sl, где

г =

0, 1, 2,

. . . Следовательно,

ее распределение

за­

дается таблицей

 

 

 

 

 

 

 

 

 

 

 

 

 

 

/ 0

1— s

1— sa . . .

 

1— s

 

 

 

 

 

 

V Po

Pi

 

Pi

•••

 

Pi

 

 

 

 

 

 

Математическое ожидание этой величины равно

 

 

 

 

Мі1л= Е

(1_•s0 Р і = Е Р і Е Р is ‘ = 1~ Р а — Е P i s~-

 

 

і=і

 

 

 

£=1

t=l

 

 

і= 1

 

 

Так как Мг)^ =

рАі

то получаем выражение

 

 

 

 

 

 

 

 

 

 

 

СО

 

 

 

 

 

 

(21)

 

 

 

рА= 1— Ро — Е Р£1'

 

 

 

 

 

 

 

 

 

 

і=і

рн'-ьЕ <ѵ2' -

 

 

Дисперсию іі5і1 запишем в форме

 

 

 

 

= Е

О- 5')3рі -

рл = Е

р і -

р\ -

і= і

і= і

1=1

1=1

234

МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ

[ гл . е

Так как sl ^ s ПрП всех t ^ l , то отсюда следует, что

Входящую сюда сумму исключим с помощью формулы

(24). Полу­

чим неравенство

 

 

 

 

 

 

 

 

 

 

Dii),0 < 1 р 2 а (2 — s ) ( l — р а )

+ ( 1 — s ) p „ .

 

 

 

Наконец,

воспользуемся

условием (22) теоремы, после

чего

послед­

нее неравенство превратится в (23):

 

 

 

 

 

 

DnJ,'» <

1 - Р-А

-

(2- s ) (1 - р А ) + ( 1 - s )

(1 -

р А у - =

s ( p A

-

.

3.2.

Веса, учитывающие вылет из области

G0.

Снов

рассмотрим

задачу

о поглощении

нейтронов

из

п.

1.1.

Пусть из точки Гі

в направлении О,- вылетает пакет,

 

 

 

 

состоящий из большого чис­

 

 

 

 

ла wt идентичных нейтронов.

 

 

 

 

Обозначим

через

U расстоя­

 

 

 

 

ние от точки Гі до границы

 

 

 

 

области G0 (по направлению

 

 

 

 

полета, рис. 64). Обозна­

 

 

 

 

чим через

F,(x)

функцию

 

Рис.

64.

распределения

(14)

длины

 

 

 

 

свободного

пробега

|

для

одного нейтрона из пакета. Вероятность того, что нейтрон этот вылетит из области G0, равна

P {|> /,} = l - F ,( /f).

В среднем из области G0 вылетят ш,[1 —/\( /;) ] ней­ тронов пакета, а юЛ(^) нейтронов испытают столкнове­ ние внутри Gq. Будем считать, что в следующую точку столкновения гі+1 прилетит пакет, содержащий

 

 

Щ+1=ВУ,/%■(/;)

 

 

(25)

нейтронов. Тогда свободный пробег

для

того

пакета

надо

разыгрывать ■внутри G0.

Это

значит,

что

величи­

на

подчиняется

усеченному

распределению

(14) на

интервале 0 < х <.іі

(см. п. 5.2

гл. 2). Функция

распре­

деления %' равна

 

 

 

 

 

F{x)=Fi{x)lFi;(/,).

S 31 ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ ВЕСОВ 235

Метод обратных функций позволяет записать уравнение

для расчета

=

в виде

 

 

 

 

 

^ ( Г ) = ( 1- т ) В Д )

.

(26)!

или, по аналогии с (9), в виде

 

 

 

5;

 

 

_

-

 

1 (О = j 2

 

(п + £2fS) ds = ln [у + (1—Y)ß

^

]•

6

 

 

 

 

 

Определив

точку столкновения

пакета /■1+1= r i+Q,|!,

разыгрываем

(обычным способом),

рассеялся

ли

пакет

или поглотился? Если он рассеялся, то количество ней­ тронов в пакете после рассеяния равно

w{+1 = v,+i.

(27)'

Если он поглотился, то количествопоглощенных нейтро­

нов т)(л2) = ѵі+1. Очевидно, история пакета не может закон­ читься вылетом и продолжается до его поглощения в не­ которой точке rv+1.

Если положить 0)0=

1, то из

(25)

и (27)

следует,

что

 

Wi=Fо(/о)/гі(/1)...Еі-і(/,-і),

 

(28)

а случайная величина

 

 

 

 

 

 

 

= Шѵ-м .

 

 

(29)

В этом

случае т)л2> равно

количеству

поглощенных

ней­

тронов,

приходящихся

на

один

нейтрон

источника, и

служит оценкой для искомой вероятности рл. Формаль­

ное доказательство равенства М"^2) = рА имеется в § 4. Расчетная формула такого метода Монте-Карло:

где (^Ia^ s — значение 4

$ ,

полученное по траектории

номер s.

 

 

Из формул (28) и (29)

видно, чтоѴл’^ І и (по лем­

ме п. 1.1) дисперсия

 

 

 

<

D r , *

( 2)

Таким образом, точность оценки ч)а всегда не хуже, чем точность оценки т,А, получаемой при имитации поведения

2 3 6

МОДЕЛИРОВАНИЕ ЕСТЕСТВЕННЫХ ПРОЦЕССОВ

[ГЛ в

нейтронов. Правда, расчет величины

может ока­

заться более трудоемким, чем расчет т)д, из-за необходи­ мости вычислять іі.

3.3. Веса, заменяющие розыгрыш поглощения и уч тывающие вылет из области G0. Следующий способ рас­ чета рА объединяет особенности двух предыдущих мето­ дов. Пусть из точки rt в направлении Q,- вылетает пакет, состоящий из большого числа ю, идентичных нейтронов. Если (как в п. 3.2) Щ;[1—F,(l,)] нейтронов пакета выле­ тают из области Go, то в следующую точку столкнове­

ния

/'і+і= Гі+ 5і Qi прилетит всего i'i+i =

wiFi(li) нейтро­

нов

(длина пробега

определяется из уравнения (26)).

А теперь, как в п.

3.1, будем считать,

что

Ф-Н Са(П -и)/Е(П +і)]

нейтронов при столкновении поглотились, а

к-'н-і = s-'i'+i l2Ls (C'+O/^L (G+i)]

нейтронов рассеялись и продолжают полет по направле­ нию Qj+i. При таком способе расчета все траектории оказываются бесконечными и не могут закончиться ни вылетом, ни поглощением. На практике расчет продол­ жают до тех пор, пока гос пакета ш,- не станет пренебре­ жимо малым, например меньше некоторого заданного

числа б .

(19;, то, выбрав

Если использовать обозначение

щ0= 1. получим, что

 

wi— F0(l0)S]Fl(li)s2. . .

(30)

а количество поглощенных за всю историю пакета иентронов равно

с»

Чл} = J j Ф + і (1 — Si-1-l).

і= 0

Формальное доказательство того, что М^а}=Ра, и: ется в § 4. Формула для оценки рл> очевидно, запише ГЛ

так:

N

Ра N

S = 1

где — значение 7^3)на траектории номер s.

§ 31

ИСПОЛЬЗОВАНИЕ СТАТИСТИЧЕСКИХ ВЕСОВ

23Т

 

Из формулы (31) видно, что

^гО. Чтобы доказать,

 

(3)

 

 

что пл =^1>представим эту величину в виде

 

^=

= F0 (Іо) - ^ F

0(/„)

... Fi (h) [ 1 -

 

Fi+I (/,+,)] s, ..

St-m Г

 

t= 0

 

 

 

 

 

 

 

 

 

 

тогда, о ч е в и д н о ,

/<5»

^ F 0(l0) ^ . \

 

 

по лемме п. 1.1

дис­

ѵ)Л

и

персия

^

 

 

 

 

 

 

 

 

 

 

Д о к а з а т е л ь с т в о .

Формулу

(31)

 

запишем

в виде

 

г (3)

V

г

г

,-Ѵ•

<; _

Ч 1

F

 

Р е

5

 

'Ы~

 

' 0• ■•'

 

 

t

О• • ■iSl• • - Si1*1+1 •

 

В первой сумме выделим первое слагаемое, а в остальных слагае­

мых заменим

индекс і на і+1:

 

 

 

S F о- ■- P f!

■■-Si =

F „ . ■-FiSi ■■-Si =

 

i=0

i=l

 

 

 

 

 

=

F0+ 2 Fo---Pi+lSi- •tSi+1-

 

 

 

i=0

 

Подставив это выражение в предыдущее равенство,

получим

 

с с

СО

 

,,(3) = ^ +

V F „ . . . ^ Hx;. . . s , + I - V

f 0...P..v

. . s .+ , =

 

1=0

і=0

 

 

=

F0 - V

F0. . . F i { \ - F i+l)Sl. ■ ■S,T'+b

 

 

1=0

 

 

что и требовалось доказать.

3.3.1. На рис. 65 приведены схемы расчета одного звена траек­ тории во всех четырех методах оценки р А. Номер (0) соответствует

методу п. 1.1, номера (1), (2) и ( 3 ) — методам пп. 3.1, 3.2 и 3.3.

Нетрудно заметить, что основное различие в количестве вычислений

связано

с тем, что в методах

(0)

п (1)

нужно проверять

условие

«гі+1 е О 0». а в методах

(2) п

(3)

приходится

вычислять

и

 

Кроме

того, в методах

(0)

и

(2)

па

расчет одного

звена

траектории затрачиваются 4 случайных числа

у, а в методах

(1) и

(3) — только 3. Остальные различия сводятся

к нескольким

элемен­

тарным арифметическим операциям.

Некоторые пояснения к схемам на рис. 65. По условию задачи

точка г0 задана; в методах (1), (2)

и (3)

заданы

также и.'0= 1 , а в

методах (1) и (3), кроме того, полагаем

/і0= 0 .

Величина Іц — это

суммарное количество поглощенных

в точках

нейтронов.

Соседние файлы в папке книги из ГПНТБ