double arrow

Применение метода Монте-Карло для вычисления кратных интегралов


Хотя Mathcad позволяет вычислять кратные интегралы непосредственно, однако в большинстве случаев при кратности интегралов 3 и более применение метода Монте-Карло предпочтительнее. Дело в том, при одинаковой точности метод Монте-Карло дает существенный выигрыш во времени (в десятки и сотни раз), особенно при большой кратности интегралов. Идея метода состоит в том, что интеграл заменяется величиной Fср.·V, где V – объем области интегрирования, Fср. –среднее значение подынтегральной функции, вычисленное по нескольким случайно выбранным точкам.

Определим подынтегральную функцию.

И вычислим интеграл обычным способом (обратите внимание на время счета!)

А теперь вычислит тот же интеграл методом Монте-Карло

Поскольку в нашем случае объем области интегрирования равен 1, полученное среднее значение совпадает со значением интеграла. При относительной погрешности в 0.001% время вычисления интеграла по методу Монте-Карло существенно меньше.

Интеграл можно вычислить и другим способом. Заключим область интегрирования внутрь прямоугольной области, "набросаем" внутрь полученной области N случайных точек. Тогда интеграл найдем из соотношения ,где N – общее число точек, n – число точек, лежащих внутри области интегрирования, V – объем области, включающей область интегрирования.

Максимальное значение подынтегральной функции в области интегрирования не превосходит 125, следовательно, мы может заключить всю область интегрирования внутрь четырехмерного цилиндроида высотой 125 и объемом V=125. Сгенерируем N четверок случайных чисел и подсчитаем, сколько из них лежит под поверхностью f(x,y,z).



Сейчас читают про: