Autor Nachricht
D2
BeitragVerfasst am: 10. Mai 2013 11:51    Titel:

Vielleicht soll nur dann genau gerechnet werden, wenn es sich lohnt?
Ich habe keine Ahnung warum deine Kugel ihre Geschwindigkeiten oder Beschleunigungen ändern befor eine Kollision stattgefunden hat, welche Kräfte, Energien und wie du dabei Erhaltungssätze berücksichtigst .
Aber angenommen du kennst die Bahnen beiden Kugeln.
Stell dir vor du hast zwei Glasplatten die über einander platziert sind, an jeder bewegt sich eine Kugel und du dich fragst wann die Summe geworfenen Schatten von diesen Kugeln kleiner wird.
Zuerst suchst du alle Schittpunkten beider Graphen ohne dabei den Faktor Zeit in Betracht zu ziehen raus. Dann vergleichst du die Zeitfenster die beide Kugeln an diesen Schnitpunkten verweilt haben. Dafür wird Radius der Kugel 1 durch ihre momentane Geschwindigkeit v1 dividiert, und zum Zeitpunkt t am Schnittpunkt dazu addiert bzw. abgezogen. Mit der 2. Kugel gleiches Spiel.
Überlappen sich die Zeitfenster, fand die erste Schattenkollision statt.
TomS
BeitragVerfasst am: 10. Mai 2013 08:12    Titel:

Zunächst mal solltest du für die Bewegung zweier Kugeln den Abstand einführen, d.h.



wobei x,v,a für Vektoren stehen.

Für dieses Gleichungssysteme gilt es dann, numerisch eine Lösung zu finden. Dazu gibt es sicher Standardverfahren; ich würde mal googeln "numerische lösung nichtlinearer gleichungssysteme"
Mahrgell
BeitragVerfasst am: 10. Mai 2013 03:39    Titel: Wann treffen sich 2 beschleunigte Kugeln?

Meine Frage:
Moin,
ich programmiere gerade ein wenig herum und habe hier nun 2 Kugeln, die sich in der Ebene bewegen. (also alle Berechnung erfolgt in 2D)
Jede dieser Kugeln hat einen Geschwindigkeitsvektor und einen Beschleunigungsvektor (dessen Richtung vom Geschwindigkeitsvektor unabh. ist!)
Die Frage ist nun, wie man hier am effizientesten berechnen kann, ob/wann sich diese 2 Kugeln das erste mal treffen.
Ich hab zwar eine theoretische Idee, wie man es ausrechnen kann, allerdings ist das so viel Rechenaufwand... dass ich liebe vorher wissen will, ob man das nicht deutlich besser implementieren kann bzw, ob das überhaupt richtig ist.

Meine Ideen:
Meine Gedanken dazu:
Generell kann das entstehende System 0-4 Lösungen haben.
Im folgenden seien: (keine Ahnung warum Latex bei mir rechtsbündig schreibt, sorry dafür unglücklich)


Ich nutze als Bezugssystem die 2. Kugel, d.h.

Im folgenden verwende ich einfach immer nur k bzw v bzw a für die Werte der ersten Kugel, da Kugel2 unverändert im Ursprung ruht.
Nun kann man die Position der Kugel1 zum Zeitpunkt t ausrechnen.

Nun rechnet man den Betrag aus, setzt ihn gleich r und muss nur noch nach t umstellen. Ja, total einfach! Oder auch nicht... Weil wenn man das mal ausprobiert mit

Kommt man auf:

Somit

So und nun dieses Monster in das Lösungssystem (nach Ferrari) einsetzen, da kommen richtig tolle Terme raus. Dann die reellen Lösungen rauspicken, dann die kleinste positive Lösung ist das Ergebnis, gibt es keine, treffen sich die Kugeln nicht.
Wieviele Fehler sind in der überlegung? Big Laugh Und vor allem... gehts auch einfacher? ^^

Powered by phpBB © 2001, 2005 phpBB Group