Volumen einer Kugel - "Monte Carlo Methode"

Print

Im Rahmen des Themengebiets „Kreis und Kugel“ wurde eine Übung angeboten, die das Programmieren der Monte Carlo Methode am Beispiel einer Kugel in 3D zum Inhalt hatte.

Diese Methode dient dazu, per Gesetz der großen Zahlen, das Volumen eines Körpers in einem gegebenen Raum zu berechnen.

Für die Programmierung wurde auf das Programm Processing zurückgegriffen.

Dabei muss man darauf achten, dass (in 3D) die Seitenlänge s des Würfels das Doppelte des Radius ist.

  • Würfel: Seitenlänge: s
  • Kugel: Radius: s/2

Dafür programmieren wir einen Würfel und Zufallspunkte, die wie folgt definiert werden:

x = round(random (-s/2, s/2)); Bestimmt jeweils zufällige Koordinate x,y,z

y = round(random (-s/2, s/2)); zwischen Anfang und Ende des Würfels

z = round(random (-s/2, s/2); z = räumliche Koordinate

Um das Volumen zu berechnen, wird die Monte-Carlo-Methode benötigt.

Dazu verwenden wir:

- Die Anzahl der Punkte in der Kugel:
√ (x²+y²+z²) < Radius

- Die Anzahl der Punkte außerhalb der Kugel:
√ (x²+y²+z²) > Radius

Kugelvolumen = Würfelvolumen x

[Anzahl Punkte Innerhalb / (Anzahl Punkte Innerhalb + Anzahl Punkte Außerhalb)]

Dabei gilt das Gesetz der großen Zahlen:

Je mehr Punkte auf den Würfel „geschossen werden“ umso genauer ist die Schätzung des Volumens!

Doch um es exakt zu berechnen nehmen wir die Formel:

4/3 * π * (s/2)³ = V

Bsp:

4/3 * π * 100 ³ ≈ 4.188.790

Das fertige Ergebnis findet sich hier:

MonteCarlo (vk113.github.io)


Martin Rapps & Felix Molitor, 10c



Copyright 2011. Joomla 1.7 templates, WGW.