Войти

Показать полную графическую версию : Метод Монте-Карло


Madinka
17-07-2012, 16:53
Здравствуйте! Помогите пожалуйста написать программу задачи Дирихле для уравнения Лапласа методом Монте-Карло. На плоскости Оху дана область G с границей Г. В области G строится квадратная сетка Sh с шагом h. Предполагаем, что сетка состоит из внутренних и граничных узлов. Граничные узлы сетки Sh образуют её границу Г, т.е. граница Г представляет собой линейный ряд точек М(х,у). Частица М попадая во внутренний узел может перемещаться в один из четырех соседних узлов, причем каждый такой переход случаен. Блуждание частицы заканчивается, как только частица попадает на границу.
Нужно, чтоб программа выдавала случайное число на интервале [0,1]: если число принадлежит интервалу [0;0.25], то движется вправо;
если число принадлежит интервалу [0.5;0.75], то движется влево;
если число принадлежит интервалу [0.25;0.5], то движется вверх;
если число принадлежит интервалу [0.75;1], то движется вниз.
По этой схеме двигаясь точка должна попасть на границу, и в конце посчитать всё по формуле.
Формула: u(x,y)=(1/N)*Σφ(Хк,Ук), N-число случайных блужданий, φ(Хк,Ук) - функция, определенная в точках границы Г области G.

lxa85
17-07-2012, 20:16
Madinka, а можно добавить рисунков, для лучшего понимания условий задачи?

Madinka
17-07-2012, 20:42
а как рисунок сюда вставить?

lxa85
17-07-2012, 22:01
Справа, через "Прикрепить файл". Что такое "вложение"? (http://forum.oszone.net/faq.php?faq=vb_read_and_post#faq_vb_attachment_explain)

Madinka
18-07-2012, 13:13
Вот архив, а так как изображение не сохранялось.




© OSzone.net 2001-2012