VPython Grafik-Plot

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
WaldorfGuru
User
Beiträge: 2
Registriert: Samstag 11. Mai 2013, 14:35

Hallo,

wir machen gerade einen kleinen Exkurs "Python" bzw. VPython. Meine Frage ist jetzt wie ich z.B. die Geschwindikgeit eines fallenden Objektes plotte. Ich würde gerne gleichzeitig, neben meiner Animation, den grafischen Verlauf der Geschwindigkeit sehen (Geschwindigkeit(y) gegen Zeit(x)).

Die Darstellung der Objekte mit physikalischen Eigenschaften ist weniger das problem.

"from visual.graph import..." hiernach hört mein Verständnis auf :K


hier ein einfaches Beispiel der Szene:

Code: Alles auswählen

from visual import*

sinker = sphere (radius=2)
sinker.vel = (0,0,0)
sinker.pos = (0,0,0)
g = -9.81
t = 0.0
dt = 0.1

while (1):
    rate (40)
    sinker.vel =(0.5*g)*(t**2)
    sinker.pos.y = sinker.vel
    print sinker.vel
    t = t+dt
Danke schon mal
Zuletzt geändert von Anonymous am Samstag 11. Mai 2013, 15:51, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Code-Tags gesetzt.
xeike
User
Beiträge: 83
Registriert: Donnerstag 28. Februar 2013, 09:58

Ohne jetzt das visual-Modul näher zu kennen, vermute ich, dass sinker.velocity immer ein Vektor bedeutet aus drei Komponenten, nämlich vx, vy, und vz. Gleiches gilt für sinker.pos.

Wenn du nun einem solchen Vektor eine schlichte Zahl zuweist, nimmt Python das gerne an, es ist aber etwas anderes, als du es dir denkst. Das Ding wird dann eine Zahl.

Schau doch mal unter

http://www.vpython.org/contents/bounce_example.html

Da gibt es ein Beispiel.

Xe
WaldorfGuru
User
Beiträge: 2
Registriert: Samstag 11. Mai 2013, 14:35

hm ja die Seite ist mir bekannt und hat auch eine Erklärung für "Graphs" http://www.vpython.org/contents/docs/visual/graph.html (das was mich interessiert).

Leider kann ich deren Beispeile nicht auf mein simples Programm anwenden... versteh ich halt einfach nicht :lol: hab sonst nicht viel mit Informatik zutun
xeike
User
Beiträge: 83
Registriert: Donnerstag 28. Februar 2013, 09:58

WaldorfGuru hat geschrieben: Leider kann ich deren Beispeile nicht auf mein simples Programm anwenden... versteh ich halt einfach nicht :lol: hab sonst nicht viel mit Informatik zutun
Also, allgemein ist ja die neue Y-Komponente folgendermassen zu berechnen: Y(t) ist Y_alt + irgendwas mit Geschwindigkeit + irgendwas mit Beschleunigung.

Wenn du für pos und vel drei Komponenten hast, dann kannst du dir eine davon einfach als y-Komponente definieren und die anderen in Ruhe lassen. Oder du berechnest nur die Y-Komponente, dann brauchst du die anderen erst gar nicht zu definieren.

Der Term 0,5 * g * t**2 beschreibt übrigens keine Geschwindigkeit.

Xe
Antworten