Elastischer Stoß

Bei dem elastischen Stoß von zwei Kugeln gleicher Masse behalten beide Kugeln die Tangentialkomponente ihres Geschwindigkeitsvektors bei und die Zentralkomponente der Geschwindigkeitsvektoren beider Kugeln wird ausgetauscht.

Wie realisiert man diesen Sachverhalt in einem Programm?

  1. Wann treffen sich zwei Kugeln?
    Antwort:
    Wird der Abstand der Ortsvektoren Ihrer Mittelpunkte kleiner oder gleich dem doppelten Radius, so treffen sich die Kugeln.
  2. Ist ein Treffer erfolgt, so wird der Zertralvektor aus der Differenz der Ortsvektoren der Mittelpunkte der beiden Kugeln berechnet.
  3. Zu diesem Zentralvektor wird ein ein Normalenvektor berechnet.
    (Im Bild Tangentialvektor genannt)
  4. Der Normalenvektor und der Tangentialvektor wird auf die Länge 1 normiert.
  5. Die Bewegungsvektoren der roten- und der grünen Kugel werden zerlegt in Ihren zentralen- und tangentialen Anteile.
  6. Nach dem Stoß behält die rote Kugel Ihren tangentialen Anteil bei und erhält den zentralen Anteil von der grünen Kugel.
    Ihr Bewegungsvektor nach dem Stoß berechnet sich dann aus der Vektorsumme der beiden Anteile.
    Ebenso behält die grüne Kugel Ihren tangentialen Anteil bei und erhält den zentralen Anteil von der roten Kugel.
    Ihr Geschwindigkeitsvektor nach dem Stoß berechnet sich dann ebenfalls aus der Vektorsumme der beiden Anteile.

Zur Anwendung