
Zitat von
Luckie:
Optimiert hier der Delphi Compiler so schlecht?

Nuja, rein subjektiv war der
asm-Code merklich schneller. Also hab ich ihn gelassen (war eigentlich nur testweise)

.
\\edit: Da fällt mir auf: Der Delphi-Code ist sogar mitlerweile falsch

. TVector
war mal ein Array. Mittlerweile ists ein record mit TVector.x und TVector.y *hüstel*.

Zitat von
Luckie:
Nachtrag: Bei sehr vielen Partikeln leidet die Performance doch recht stark.

Das ist ja gerade das Problem einer solchen Simulation. Jeder Partikel wirkt auf jeden anderen, und umgekehrt. Es muss also wirklich jeder Partikel durchlaufen werden, und gegen jeden weiteren verrechnet.
Es sind immer (n^2 - n) (n = Partikelanzahl) Verrechnungsschritte nötig, die ihrerseits nochmal diverse Divisionen und weitere Rechnungen beinhalten. Da schlägt natürlich jeder Partikel mehr sehr stark zu Buche. Lässt man zusätzlich noch das Gitter anzeigen, werden weitere solche Schleifen durchlaufen, da jeder Gitterpunkt ähnlich wie die Partikel gegen jeden vorhandenen Partikel verrechnet werden muss. Ich finde dafür ist die Simulation sogar noch recht fix

.
Nachti!
dizzy
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel