Курс лекций по дисциплине «Компьютерное моделирование». Рассмотрены основные понятия курса, этапы построения
Вычисление интегралов по методу Монте-Карло
Download 1.11 Mb. Pdf ko'rish
|
2015-kurs-lection-leonova-1
5.3. Вычисление интегралов по методу Монте-Карло Во многих задачах исходные данные носят случайный характер, поэтому для их решения должен применяться статистико-вероятностный подход. На основе таких подходов построен ряд численных методов, которые учитывают случайный характер вычисляемых или измеряемых величин. К ним принадлежит и метод статистических испытаний, называемый также методом Монте-Карло, который применяется к решению некоторых задач вычислительной математики, в том числе и для вычисления интегралов. Метод Монте-Карло состоит в том, что рассматривается некоторая случайная величина ξ, математическое ожидание которой равно искомой величине х: 𝜉𝜉 = 𝜉𝜉 1 + 𝜉𝜉 2 + ⋯ 𝜉𝜉 𝑛𝑛 𝑛𝑛 ≈ 𝑥𝑥. Проводится серия n независимых испытаний, в результате которых получается (генерируется) последовательность n случайных чисел ξ 1 , ξ 2 ,…, ξ n , и по совокупности этих значений приближенно определяется искомая величина 𝑀𝑀 𝜉𝜉 = 𝑀𝑀 �1/𝑛𝑛 � 𝜉𝜉 𝑖𝑖 𝑛𝑛 𝑖𝑖=1 � = 1 𝑛𝑛 𝑀𝑀 � 𝜉𝜉 𝑖𝑖 = 𝑛𝑛𝑥𝑥 𝑛𝑛 = 𝑥𝑥. 𝑛𝑛 𝑖𝑖=1 44 Интегрирование одномерных интегралов Интегрирование одномерных определенных интегралов методом Монте- Карло производится по изложенному ниже алгоритму. 𝑰𝑰 = � 𝒇𝒇(𝒙𝒙)𝒅𝒅𝒙𝒙 = 𝒃𝒃 − 𝒂𝒂 𝒏𝒏 � 𝒇𝒇 (𝒙𝒙 𝒊𝒊 ), 𝒏𝒏 𝒊𝒊=𝟏𝟏 𝒃𝒃 𝒂𝒂 где x i - равномерно распределенная случайная величина; f(x) – подынтегральная функция; n - количество случайных аргументов x i ; b и a- верхний и нижний пределы интегрирования. В Маткаде имеется встроенная функция rnd(x), возвращающая равномерно распределенную случайную величину в диапазоне 0 - x. Для решения задач методом Монте-Карло необходимо составить программу с использованием этой функции. ПРИМЕР 5.1 Вычислить методом Монте-Карло приведенный ниже интеграл. Приведено решение численным методом и методом Монте-Карло, � √𝑥𝑥 3 + 2𝑥𝑥 + 8 5 √𝑥𝑥 5 + 3𝑥𝑥 4 + 8𝑥𝑥 + 9 3 𝑑𝑑𝑥𝑥 2 0 Решение: Выберем N=1000000 Ответ: W=1,142. W y 0 ← x rnd 2 ( ) ← y y 5 x 3 2 x ⋅ + 8 + 3 x 5 3 x 4 ⋅ + 8 x ⋅ + 9 + + ← W y 2 ⋅ N ← i 1 N .. ∈ for := 45 ПРИМЕР 5.2 Вычислить методом Монте-Карло интеграл 𝑦𝑦 = � (𝑥𝑥 2 + 3𝑥𝑥 + 8)𝑑𝑑𝑥𝑥 10 −3 Задача отличается от предыдущей тем, что нижний предел не равен нулю, а функция rnd(х) вычисляет случайные числа в пределах 0-х. Поэтому здесь вычисляются два интеграла. Решение: Выбираем m=1000000. Download 1.11 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling