Компьютерное моделирование динамики формирования дифракционной картины от одиночной щели с использованием генератора псевдослучайных чисел - page 6

где
p
1
=
c
1
(
c
1
+
c
2
+
c
3
)
= 0
,
25;
p
2
=
c
2
(
c
1
+
c
2
+
c
3
)
= 0
,
5;
p
3
=
c
3
(
c
1
+
c
2
+
c
3
)
= 0
,
25
.
Функция распределения вероятностей
R
(
X
)
, соответствующая плот-
ности распределения вероятностей
r
(
X
)
:
R
(
X
) =
p
1
R
1
(
X
) +
p
2
R
2
(
X
) +
p
3
R
3
(
X
)
.
Здесь
p
i
— вероятность того, что случайная величина
X
попадает в
диапазон значений, в котором
R
(
X
) =
R
i
(
X
)
;
R
1
(
X
) =
I
(
−∞
,
X
0
)
(
X
)
λ
πdX
;
R
2
(
X
) =
I
(
X
0
,X
0
)
(
X
)
1
2
+
πdX
2
λ
;
R
3
(
X
) =
I
(
X
0
,
)
(
X
) 1
λ
πdX
.
Для каждой функции распределения
R
i
(
Z
)
соответствующий гене-
ратор псевдослучайной величины
Z
можно найти методом обратного
преобразования:
Z
=
λ
πdR
1
;
(6)
Z
= (2
R
2
1)
λ
πd
;
(7)
Z
=
λ
πd
(1
R
3
)
,
(8)
где
R
1
,
R
2
и
R
3
— независимые псевдослучайные величины, каждая
из которых равномерно распределена на отрезке [0, 1].
В рассматриваемом случае
p
1
=
p
3
= 0
,
25
,
p
2
= 0
,
5
. С учетом этого
алгоритм генерации псевдослучайной величины
X
с плотностью ДРВ
(5) сводится к следующему.
Шаг 1.
Генерируем псевдослучайную величину
V
, равномерно
распределенную на отрезке [0, 1]. Если
0
V <
0
,
25
, то за-
пускаем генератор (6) и генерируем случайную величину
Z
, если
0
,
25
V <
0
,
75
, то генерируем величину
Z
с помощью генератора
(7), если
0
,
75
V
1
,
00
, то с помощью генератора (8).
Шаг 2.
Независимо от величины
Z
генерируем псевдослучайную
величину
U
, равномерно распределенную на отрезке [0, 1].
Шаг 3.
Для каждого значения величины
Z
вычисляем значение
f
(
Z
) /
t
(
Z
)
и сравниваем со значением
U
. Если
U > f
(
Z
) /
t
(
Z
)
, то
возвращаемся к шагу 1 и повторяем шаги 2 и 3. Алгоритм продол-
жает возвращаться к шагу 1 до тех пор, пока на шагах 1 и 2 не бу-
дет сгенерирована пара псевдослучайных чисел
(
Z, U
)
, для которой
42
ISSN 1812-3368. Вестник МГТУ им. Н.Э. Баумана. Сер. “Естественные науки”. 2014. № 6
1,2,3,4,5 7,8,9,10,11,12,13,14,15,...16
Powered by FlippingBook