wir versuchen grade, eine Kugel zu programmieren, die eine schiefe Ebene herunterrollt.
Dafür haben wir folgende Differenzialgleichung:
s(mit zwei Punkten)=-g*(sinPhi- µR*cosPhi)
Tja, irgendwie wissen wir nicht, wie man das mit Runge Kutta lösen soll. In unserem Programm haben wir einen Solver mit dem Inhalt:
float m1, m2, m3, m4, m; // Gradienten Zwischenergebnisse
float res1, res2, res3, res; // Zwischerergebnisse
m1 = gradient*Value + rest;
res1 = Value + m1*timeQuant/2;
m2 = gradient*res1 + rest;
res2 = Value + m2*timeQuant/2;
m3 = gradient*res2 + rest;
res3 = Value +m3*timeQuant;
m4 = gradient*res3 + rest;
m = (m1+2*(m2 + m3)+m4)/6;
res = Value + m*timeQuant;
return res;
Ach ja, das Ganze in Processing.
Also, weiß irgendwer, wie man bei der Gleichung, die ja die 2. Ableitung is oder die dritte, zur Ursprungsgleichung kommt?
Und steigt jemand bei dem Solver durch?
Äh. Und was ist S überhaupt?
Und dann noch eine Frage: Gibt es eigentlich offiziell einen Winkel, ab dem eine Kugel sich zu bewegen beginnt? Ob sie gleitet oder rollt, ist unerheblich, einfach der Winkel, ab dem eine Kugel losrollt. Oder ist das von der Masse der Kugel abhängig?
wir versuchen grade, eine Kugel zu programmieren, die eine
schiefe Ebene herunterrollt.
Aus der Ruhelage heraus?
Oder während des Laufens?
Dafür haben wir folgende Differenzialgleichung:
s(mit zwei Punkten)=-g*(sinPhi- µR*cosPhi)
Da fehlt m.E. das Massenträgheitsmoment der Kugel.
Äh. Und was ist S überhaupt?
S mit 2 Punkten dürfte die Beschleunigung der Kugel sein:wink:
Und dann noch eine Frage: Gibt es eigentlich offiziell einen
Winkel, ab dem eine Kugel sich zu bewegen beginnt?
Na klar. Das hängt vom Wert der Haftreibung in Ruhe ab.
Ob sie
gleitet oder rollt, ist unerheblich, einfach der Winkel, ab
dem eine Kugel losrollt. Oder ist das von der Masse der Kugel
abhängig?
Die Kugel gleitet bei bestimmten Reibwerten erst von einem bestimmten Winkel an. Vorher rollt sie.
Mein Eindruck ist:
Du arbeitest zwar mit einer DGL, die eigentlichen physikalischen Zusammenhänge bei dem Vorgang (Massenträgheitsmoment, Haftreibung, Rollreibung)liegen etwas im Nebel, da sie etwas komplizierter ist, als Du annimmst.
Erst wenn Dir das System klar ist, kannst Du die richtige Gleichung aufstellen.
Ach ja und der Roll-Reibkoeffizient beträgt (also das MyR) 0,01.
Am Anfang soll die Kugel auf dem höchsten Punkt der Ebene sein und dann losrollen. Die erste Aufgabe ist, die Kugel zu animieren, die zweite ist, den Winkel zu bestimmen, ab dem die Kugel zu rollen beginnt.
Also das Dreieck ist rechtwinklig und äh…
I\
so eben. Also oben vom I wäre die Kugel, rollt nach rechts runter, den rechten unteren Winkel sollen wir dann bestimmen, und der linke untere Winkel sind 90° logischerweise.
Kannst du mir die Gleichung nennen, mit der ich berechnen kann, ab welchem Winkel die Kugel losrollt? Das Dreieck soll höhenverstellbar sein im Programm, das I in dem Fall. Wir haben alle Streckenlängen. Bei der Winkelbestimmaufgabe wäre die Strecke I ja erst 0, das ganze würde so aussehen: - (und die Kugel eben ganz links)
und nicht mehr I\ und dann kann man I langsam erhöhen, damit steigt der Winkel…naja, es ist klar, was ich meine. Also welchen Winkel wir berechnen sollen. Nur mit welcher Formel?
Da entfällt die Zerlegung in ein System aus zwei DGL erster Ordnung.
Also, weiß irgendwer, wie man bei der Gleichung, die ja die 2.
Ableitung is oder die dritte, zur Ursprungsgleichung kommt?
Die die Beschleunigung laut Gleichung nicht vom Weg abhängt, braucht man nur zwei mal über die Zeit integrieren und erhält
s = s0+v0·t-g·[sin(φ)-µR·cos(φ)]·t²/2
Und dann noch eine Frage: Gibt es eigentlich offiziell einen
Winkel, ab dem eine Kugel sich zu bewegen beginnt?
Ja, den gibt es. Aber der Übergang von Haftreibung zu Rollreibung wird durch die Gleichung genauso wenig erfaßt, wie von Rollreibung zu Gleitreibung. Wie Manni schon schrieb, gibt die Gleichung die tatsächlichen Verhältnisse nur unvollständig wieder. Sie berücksichtigt nur Hangabtriebskraft und Rollreibung.
Ach ja und der Roll-Reibkoeffizient beträgt (also das MyR)
0,01.
Am Anfang soll die Kugel auf dem höchsten Punkt der Ebene sein
und dann losrollen.
Also aus der Ruhelage heraus, das wäre jetzt geklärt.
Die erste Aufgabe ist, die Kugel zu
animieren, die zweite ist, den Winkel zu bestimmen, ab dem die
Kugel zu rollen beginnt.
Kannst du mir die Gleichung nennen, mit der ich berechnen
kann, ab welchem Winkel die Kugel losrollt? Das Dreieck soll
höhenverstellbar sein im Programm, das I in dem Fall. Wir
haben alle Streckenlängen. Bei der Winkelbestimmaufgabe wäre
die Strecke I ja erst 0, das ganze würde so aussehen: - (und
die Kugel eben ganz links)
und nicht mehr I\ und dann kann man I langsam erhöhen, damit
steigt der Winkel…naja, es ist klar, was ich meine. Also
welchen Winkel wir berechnen sollen. Nur mit welcher Formel?
Mit einer Kugel ist das m.E. etwas kompliziert, wenn Du den Durchmesser und den Hebelarm für die Rollreibung etc. nicht kennst.
Schau Dir mal die beiden Links an, vllt. hilft es Dir weiter.
Vllt. soll auch gar nicht so genau mit Massenträgheitsmoment etc. gerechnet werden.
Versuchs doch erst mal mit einem Quader, der aus der Haftreibung heraus zu gleiten beginnt. Da kannst du den Winkel sicherlich einfacher bestimmen.