Вычислительная математика. Ч. 1. Асламова В.С - 22 стр.

UptoLike

43
ввод
a, b,
ε
n : = TRUNC ((b-a)/SQRT(SQRT(
ε
)))
вывод
S
Начало
Конец
n mod 2 < > 0
n должно быть
четным
n : = n + 1
нет
да
h : = (b- a)/n
x : = a
c : = 1
S : = 0
i : = 1, n - 1
x : = x + h
S: = S + (c + 3) * f(x)
c : = -
c
S : = h * (S + f(a) + f(b)) / 3
Рис.26. Блок-схема метода Cимпсона.
1 при
i
нечётном
-1 при
i
чётном
с =
44
3.4. Метод Монте-Карло
Этот метод, называемый еще методом статистических испытаний, появился в
начале 60-х годов и получил свое название от города Монте-Карло, на весь мир
знаменитого своими игорными домами. Рулетка, как датчик случайных чисел,
явилась прототипом для создания генератора случайных чисел,
необходимых для работы по этому методу.
Идея принципа достаточно проста. Допустим, нужно оп
ределить площадь
внутри заданного сложного замкнутого контура (рис.27).
Известно много способов определения площади, есть различного типа
приборы (планиметры, интеграторы) и т.д., если известно функциональное
уравнение фигуры, можно его проинтегрировать и т. д. Но также можно
воспользоваться методом Монте-Карло.
Рисунок представляется мишенью. Проводится серия
N независимых
испытанийвыстрелов, причем плотность вероятности выстрела в
прямоугольник
ABCD имеет равномерное распределение.
Тогда при большом количестве выстрелов
N в ABCD отношение числа
выстрелов, попавших в измеряемый контур, к общему числу выстрелов
будет равно доле площади измеряемой фигуры от
ABCD.
ABCD
фигурыизм
выстрелов
попаданий
S
S
N
N
.
.
Чем больше N (N
11), тем точнее производится расчет площади измеряемой
фигуры.
Следующим логическим шагом в создании работоспособного алгоритма
метода Монте-Карло является разбиение прямоугольника
ABCD сеткой на
квадраты. Если мы пронумеруем все деления, то каждая клетка будет иметь
определенный адрес (номер строки, номер столбца), то есть фактически мы
получаем матрицу (рис.28).
Рис. 27
                                                                                                  3.4. Метод Монте-Карло
              Начало                                                          Этот метод, называемый еще методом статистических испытаний, появился в
                                                                           начале 60-х годов и получил свое название от города Монте-Карло, на весь мир
                ввод                                                       знаменитого своими игорными домами. Рулетка, как датчик случайных чисел,
               a, b, ε                                                     явилась     прототипом для        создания      генератора случайных чисел,
                                                                           необходимых для работы по этому методу.
                                                                              Идея принципа достаточно проста. Допустим, нужно определить площадь
n : = TRUNC ((b-a)/SQRT(SQRT( ε)))                                         внутри заданного сложного замкнутого контура (рис.27).
                                              n должно быть
                                              четным
                                   нет
           n mod 2 < > 0

                         да
             n:=n+1



            h : = (b-a)/n
               x:=a

                                                                                                            Рис. 27
              c:=1
              S:=0                                                            Известно много способов определения площади, есть различного типа
                                    с = 1 при i– нечётном                  приборы (планиметры, интеграторы) и т.д., если известно функциональное
                                        -1 при i – чётном
             i : = 1, n -1                                                 уравнение фигуры, можно его проинтегрировать и т. д. Но также можно
                                                                           воспользоваться методом Монте-Карло.
                                         S : = h * (S + f(a) + f(b)) / 3      Рисунок представляется мишенью. Проводится серия N независимых
              x:=x+h                                                       испытаний – выстрелов, причем плотность вероятности выстрела в
        S: = S + (c + 3) * f(x)                                            прямоугольник ABCD имеет равномерное распределение.
                                                    вывод
                                                      S                       Тогда при большом количестве выстрелов N в ABCD отношение числа
               c : = -c                                                    выстрелов, попавших в измеряемый контур, к общему числу выстрелов
                                                                           будет равно доле площади измеряемой фигуры от ABCD.
                                                    Конец
                                                                                                    N попаданий  S
                                                                                                                ≈ изм . фигуры .
                                                                                                    N выстрелов    S ABCD
     Рис.26. Блок-схема метода Cимпсона.                                   Чем больше N (N≥11), тем точнее производится расчет площади измеряемой
                                                                           фигуры.
                                                                              Следующим логическим шагом в создании работоспособного алгоритма
                                                                           метода Монте-Карло является разбиение прямоугольника ABCD сеткой на
                                                                           квадраты. Если мы пронумеруем все деления, то каждая клетка будет иметь
                                                                           определенный адрес (номер строки, номер столбца), то есть фактически мы
                                                                           получаем матрицу (рис.28).


                              43                                                                               44