Informatyka 2 – Wizualizacja metody Monte Carlo do wyznaczania π

Transkrypt

Informatyka 2 – Wizualizacja metody Monte Carlo do wyznaczania π
Informatyka 2 – Wizualizacja metody Monte Carlo do wyznaczania π
Metodą Monte Carlo można na przykład oszacować w przybliżeniu pole koła o środku w punkcie (0,0) zdefiniowanego
nierównością:
x 2 + y ≤r
2
2
W tym celu losowanych jest n punktów z obszaru kwadratu opisanego na tym kole.
Współrzędne wierzchołków takiego kwadratu to (-r,-r), (-r,r), (r,r), (r,-r).
Dla każdego wylosowanego punktu należy sprawdzić, czy jego współrzędne spełniają powyższą nierówność, czyli czy
punkt należy do koła. Punkty, których współrzędne spełniają powyższe wyrażenie, zliczamy.
Daje nam to informację, że spośród n wszystkich losowań k trafiło w obszar koła, zatem pole koła Pk można oszacować
wykorzystując informację o polu powierzchni kwadratu oraz stosunku n do k wylosowanych punktów:
P k≈ P
k ,
n
gdzie P jest polem kwadratu opisanego na kole, tj. P = 4r2.
•
Napisz funkcję, która oblicza przybliżoną wartość liczby π bazując na metodzie Monte Carlo, na przykład tak
jak opisano powyżej. Jako parametr ma być podawana ilość losowanych punktów, a wartością zwracaną ma
być obliczone przybliżenie liczby π.
Prosta podpowiedź:
2
P k =π r ⇒ π =
•
Pk
r2
Stwórz wizualizację graficzną (w postaci zapisu obrazu do pliku PGM) działania funkcji. Na przykład tak:
obraz obszaru losowania jako kwadratowa mapa bitowa 600 x 600, gdzie punkt spoza koła wpisanego w
kwadrat ma kolor czarny, a punkt zawierający się w kole ma kolor szary. Tło jest białe.
Termin oddania: 29.01.2015r.
Punktacja:
p=a 1+ a 2+ a 3+ a 4+ a 5+ a 6
●
a1 – zgodność działania programu z podaną specyfikacją – 4 pkt
●
a2 – poprawność wykorzystania elementów języka C (praca ze zmiennymi, tablicami, pętle, instrukcje
sterujące, zapis do plików, brak ostrzeżeń podczas kompilacji...) – 3 pkt
●
a3 – styl programowania (wcięcia w kodzie, intuicyjne nazwy zmiennych, rozbicie programu na funkcje,
stosowanie komentarzy...) – 2 pkt
●
a4 – odporność na błędnie podane dane oraz błędy otwarcia i zapisu do plików – 3 pkt
●
a5 – terminowość oddania – -1 pkt za każdy dzień spóźnienia; możliwość otrzymania 2 dodatkowych punktów
za oddanie do 22.01.2015r.
●
a6 – dokumentacja prezentująca wyniki działania; zrzuty ekranu z wynikami obliczeń oraz obrazy; razem w
postaci pliku PDF – 3 pkt
w sumie: maksymalnie 17pkt

Podobne dokumenty