# Aufprallgeschwindigkeit

Erich Neuwirth

Ein Auto fährt mit Geschwindigkeit v0 und der bemerkt ein Hindernis auf der Fahrbahn.
Er betätigt nach der Reaktionszeit r die Bremse, und ab dann verringert sich 
die Geschwindigkeit um b. 

Formel für die Strecke zum Zeitpunkt t

s(t,v0,b,r):=v0*r+(t-r)*(v0+(v0-b*(t-r)))/2;

Formel für die Geschwindigkeit zum Zeitpunkt t

v(t,v0,b,r):=v0-b*(t-r);

Wie lange braucht das Auto bis zum Stillstand?

solve(v(t,v0,b,r)=0,t);

Welche Strecke ist das Auto bis zum Stillstand gefahren?

subst(solve(v(t,v0,b,r)=0,t),s(t,v0,b,r));

Formel für Strecke bis zum Stillstand vereinfacht

expand(subst(solve(v(t,v0,b,r)=0,t),s(t,v0,b,r)));

Zu welcher Zeit ist das Auto eine Strecke d gefahren?

solve(s(t,v0,b,r)=d,t);

Nur die erste Lösung ist sinnvoll, da die zweite Lösung später liegt als der gesamte Bremsvorgang dauert

solve(s(t,v0,b,r)=d,t)[1];

Wie schnell ist das Auto nach Strecke d?

subst(solve(s(t,v0,b,r)=d,t)[1],v(t,v0,b,r));

Ausdruck für diese Geschwindigkeit vereinfacht

ratsimp(subst(solve(s(t,v0,b,r)=d,t)[1],v(t,v0,b,r)));

Welche Geschwindikeit hat Auto B bot Geschwindigkeit vB > vA an der Stelle, an der Auto A (mit Geschwindigkeit vA) stehen bleibt?

subst(subst(solve(v(t,vA,b,r)=0,t),s(t,vA,b,r)),d, ratsimp(subst(solve(s(t,vB,b,r)=d,t)[1],v(t,vB,b,r))));

Letzte Formel vereimfacht

ratsimp(subst(subst(solve(v(t,vA,b,r)=0,t),s(t,vA,b,r)),d, ratsimp(subst(solve(s(t,vB,b,r)=d,t)[1],v(t,vB,b,r)))));

Formel für Aufprallgeschwindigkeit in eine Funktion verpackt

v_Aufprall(vA,vB,b,r) :=ratsimp(subst(subst(solve(v(t,vA,b,r)=0,t),s(t,vA,b,r)),d, ratsimp(subst(solve(s(t,vB,b,r)=d,t)[1],v(t,vB,b,r)))));

Alle Geschwindigkeiten in den Formeln sind in m/s, dahër müssen wir, wenn wir Angaben in km/h haben, 
die Geschwindigkeiten vor und nach der Berechnung entsprechen umwandeln
Beispiel für vA=130 km/h, vB=140 km/h, b=10 m/s^2, r=1 s

3.6*float(v_Aufprall(130/3.6,140/3.6,10,1));