PyGravi ist ein Tool zur Simulation und Visualisierung von Objekten unter der Einwirkung von Gravitation und Kollision. Der Anstoß dazu war eine ursprünglich einfache Aufgabenstellung in der HTL, aus der sich ein interessantes und nützliches Physik Simulation Tool entwickelt hat.
PyGravi simuliert dabei die Gravitationskräfte, die auf Kugeln in einem zweidimensionalen Raum wirken, sowie die daraus resultierenden Bewegungen. Kollidieren die Kugeln, so wird die Geschwindigkeits- und Richtungsänderung als elastische Kollision mittels Impuls- und Energieerhaltungsgesetz realitätsnah berechnet.
PyGravi's Benutzeroberfläche erlaubt es, beliebig viele Kugeln zu erstellen, zu löschen, zu kopieren, usw. sowie deren Größe, Masse und weitere Eigenschaften live oder während pausierter Simulation zu bearbeiten. Auch einige sonstige Features und Standardfunktionen, die für eine professionelle Applikation nicht fehlen sollten, wurden implementiert. Die Geschwindigkeit, Genauigkeit und einige weitere Bewegungsparameter sind einstellbar. Alle Einstellungen werden in Konfigurationsdateien gespeichert und sind auch nach dem Neustart noch vorhanden.
Das gesamte Tool wurde in Python 3.10 entwickelt und verwendet das Tkinter Modul für die grafische Benutzeroberfläche. Angezeigt werden die Kugeln mit einer Tkinter Canvas, welche auch mittels Maus interaktiv bedienbar ist.
Unser Projekt ist OpenSource unter GPL v3 Lizensiert und kann auf der GitHub Projektseite heruntergeladen werden. Das Tool ist mit den verbreitetsten Betriebssystemen kompatibel und wurde auf Linux (Ubuntu, Manjaro), Windows und mac OS X getestet.
Elektron Blog
PyGravi Physik Simulation erstmals veröffentlicht
am May 13, 2022 in Programmierung