Wie berechnet man die Verzögerung, die benötigt wird, um eine bestimmte Geschwindigkeit über eine bestimmte Distanz zu erreichen?

Ich habe die typischen physikalischen Gleichungen dafür ausprobiert, aber keine von ihnen funktioniert wirklich, weil die Gleichungen mit konstanter Beschleunigung umgehen und meine sich ändern müssen, um richtig zu funktionieren. Grundsätzlich habe ich ein Auto, das in einem großen Geschwindigkeitsbereich fahren kann und langsamer werden und über eine bestimmte Distanz und Zeit anhalten muss, wenn es das Ende seines Weges erreicht.

Also habe ich:
V0oder die aktuelle Geschwindigkeit
Vfoder die Geschwindigkeit, die ich erreichen möchte (normalerweise 0)
toder die Zeit, die ich brauche, um das Ende meines Weges zu erreichen
d, oder die Entfernung, die ich zurücklegen möchte, wenn ich von V0 nach Vf wechsle

Ich will rechnen
aoder die Beschleunigung, die benötigt wird, um von V0 nach Vf zu gelangen

Der Grund, warum dies eine programmierspezifische Frage wird, liegt darin, dassa muss bei jedem einzelnen Zeitschritt neu berechnet werden, wenn das Auto anhält. So,V0 ständig wird geändert zu werdenV0 vom letzten Zeitschrittplus dasa Das wurde im letzten Zeitschritt berechnet. Im Grunde genommen wird es langsam anhalten und dann plötzlich anhalten, ähnlich wie ein Auto im wirklichen Leben.

EDITS:
Okay, danke für die tollen Antworten. Vieles, was ich brauchte, war nur ein bisschen Nachdenken. Lassen Sie mich jetzt genauer darauf eingehen, da ich noch einige Ideen von Ihnen allen habe:

ich habe ein Autoc das ist64 pixels von seinem Bestimmungsort, sod=64. Es fährt an2 pixels per timestep, wo eintimestep is 1/60 of a second. Ich möchte die Beschleunigung findena das bringt es auf eine Geschwindigkeit von0.2 pixels per timestep Bis es gereist istd.
d = 64 //distance
V0 = 2 //initial velocity (in ppt)
Vf = 0.2 //final velocity (in ppt)

Auch weil dies in einer Spieleschleife passiert, eine Variabledelta wird an jede Aktion durchgereicht, die diemultiple of 1/60s that the last timestep took. Mit anderen Worten, wenn es 1 / 60s dauerte, danndelta ist 1.0, wenn es 1 / 30s gedauert hatdelta ist 0,5. Bevor die Beschleunigung tatsächlich angewendet wird, wird sie mit diesem Deltawert multipliziert. In ähnlicher Weise wird, bevor sich das Auto wieder bewegt, seine Geschwindigkeit mit dem Delta-Wert multipliziert. Das ist ziemlich normal, aber es könnte Probleme mit meinen Berechnungen verursachen.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage