Главная > Численные методы для ПЭВМ на языках Бейсик, Фортран и Паскаль
НАПИШУ ВСЁ ЧТО ЗАДАЛИ
СЕКРЕТНЫЙ БОТ В ТЕЛЕГЕ
<< Предыдущий параграф Следующий параграф >>
Пред.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
След.
Макеты страниц

Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO

5.10. Методы Монте-Карло

Вычисление кратных интегралов можно осуществить повторным применением алгоритмов и программ, рассмотренных в предыдущих разделах. Однако с повышением кратности интегралов резко возрастает объем вычислительной работы. Методы статистических испытаний (методы Монте-Карло) свободны от этого недостатка, хотя и обеспечивают сравнительно невысокую точность. С различными вариантами методов Монте-Карло, их теоретическим обоснованием можно ознакомиться по книге [54].

Рис. 5.9. Метод Монте-Карло (вариант 1)

Здесь мы рассмотрим два варианта метода Монте-Карло для вычисления интегралов. Первый способ можно интерпретировать как статистический вариант метода прямоугольников (рис. 5.9), когда в качестве узла берется случайное число, равномерно распределенное на интервале интегрирования Вследствие случайности узла погрешность интеграла также будет носить случайный характер. Проведя вычислений со случайными узлами усредним результат, который и принимаем за приближенное значение интеграла,

Погрешность интеграла будет уменьшаться с ростом числа испытаний по закону [54].

Формула (5.56) обобщается на кратные интегралы

где -мерный объем области интегрирования. Число узлов, в которых придется вычислить подынтегральную функцию, будет пропорционально независимо от кратности интеграла.

Во втором варианте метода Монте-Карло интеграл приводится к виду

где на интервале [0, 1]. Тогда две случайные величины можно рассматривать как координаты точек в единичном квадрате (рис. 5.10). При равномерном распределении точек в квадрате за приближенное значение интеграла принимается отношение количества точек попавших под кривую к общему числу испытаний

Этот алгоритм также обобщается на кратные интегралы.

Рис. 5.10. Метод Монте-Карло (вариант 2)

В программах 5.9 реализованы два варианта метода Монте-Карло для вычисления интеграла Бесселя (5.11).

В основном блоке каждой из программ в диалоговом режиме вводится номер варианта (переменная 1), число испытаний порядок и аргумент функции Бесселя (переменные . Подынтегральная функция лежит на интервале поэтому, когда функция отрицательна, во втором варианте накопленной суммы точек вычитается очередная точка, попавшая под функцию. Использование для этого знаковой функции позволило сократить количество условных операторов.

В качестве датчика псевдослучайных чисел в программе используется стандартная функция Бейсика генерирующая равномерно распределенные числа на интервале [0, 1]. Для перехода к интервалу интегрирования используется линейное преобразование Так как результат, выдаваемый датчиком, не зависит от аргумента X, то в программе он взят постоянным, равным единице.

В программе для генерации случайных чисел использована стандартная функция аргументы которой выбираются нулевыми при первом обращении к программе. Выбор начальных значений позволяет получить повторяемость результатов при разных запусках программы. Для счетчика числа испытаний выбрана вещественная переменная вследствие малого диапазона целых чисел.

В языке Паскаль отсутствует стандартный датчик случайных чисел, поэтому в программе используется функция из системной библиотеки Фортрана. В программе датчик введен в виде функции со служебным словом FORTRAN. Подобным же способом используется стандартная функция Фортрана В таких конструкциях необходимо выполнять условие,

чтобы параметры функции были типа

В заключение приведем контрольные результаты для программ 5.9. При по программе получены значения интеграла для первого варианта метода для второго варианта - Программы при тех же параметрах дают значения Различия результатов обусловлены разной реализацией датчиков случайных чисел в системах Бейсик и Фортран. Заметим, что ширина доверительного интервала погрешности сравнима с величиной Точное значение интеграла

(см. скан)

(см. скан)

1
Оглавление
email@scask.ru