File:Graphs of speed and displacement during braking with constant deceleration.svg
Original file (SVG file, nominally 251 × 415 pixels, file size: 26 KB)
Captions
Summary[edit]
DescriptionGraphs of speed and displacement during braking with constant deceleration.svg |
Deutsch: Funktionsgraphen (im kartesischen Koordinatensystem) der zeitlichen Verläufe von Geschwindigkeit (oberes Diagramm) und dabei zurückgelegter Wegstrecke (unteres Diagramm) zur Veranschaulichung des Bremswegs für die drei folgenden Fälle:
English: Graphs (in Cartesian coordinate system) of speed (upper diagram) and the distance travelled (lower diagram) as functions of time to illustrate the braking distance for the three following cases:
|
Date | |
Source | Own work |
Author | SweetWood |
SVG development InfoField | |
Source code InfoField | Asymptote code// created with Asymptote 2.67: The Vector Graphics Language
// using online-editor: http://asymptote.ualberta.ca/
import graph;
/* given */
real v0 = 10; // [m/s]; initial velocity
real v1 = 4; // [m/s]; velocity after deceleration
real a = 2; // [m/s^2]; deceleration
real t0 = 0; // [s]; time when deceleration starts
real xext = 0.1; // factor for extension of x-axis
real yext = 0.15; // factor for extension of y-axis
/* calculation */
real tB = t0 + v0 / a; // 5 s; time when deceleration to 0 ends
real t1 = t0 + (v0 - v1) / a; // 3 s; time when deceleration to v1 ends
real sB = v0^2 / (2 * a); // 25 m; braking distance for deceleration to 0
real s1 = v0 * (t1 - t0) - a / 2 * (t1 - t0)^2; // 21 m; braking distance for deceleration to v1
/* Picture 1 */
picture pic1;
unitsize(pic1, 30, 10);
// velocity at time t of constant deceleration with a from v0 to v1 starting at t0
real v(real t, real t0=0, real v0, real v1=0, real a) {
if (t < t0) {
return v0; // before deceleration
} else {
real t1 = t0 + (v0 - v1) / a; // time of end of deceleration
if (t <= t1) {
return v0 - a * (t - t0); // during deceleration
} else {
return v1; // after deceleration
}
}
}
real v_0B(real t) { return v(t, t0, v0, 0, a); } // definition of function (I): velocity for deceleration from v0 to 0
real v_01(real t) { return v(t, t0, v0, v1, a); } // definition of function (II): velocity for deceleration from v0 to v1
real v_00(real t) { return v(t, t0, v0, v0, a); } // definition of function (III): constant speed v0
draw(pic1, graph(v_0B, t0, tB+xext*(tB-t0), 11), heavycyan, "(I)"); // plot graph of function (I)
draw(pic1, graph(v_01, t0, tB+xext*(tB-t0)), blue+longdashed, "(II)"); // plot graph of function (II)
draw(pic1, graph(v_00, t0, tB+xext*(tB-t0)), deepgreen+dashed, "(III)"); // plot graph of function (III)
draw(pic1, (t0,v1)--(t1,v1), red+Dotted); // horizontal guideline at v1
draw(pic1, (t1,0)--(t1,v1), red+Dotted); // vertical guideline at t1
xaxis(pic1, "$t$", xmax=tB+xext*(tB-t0), Arrow); // draw x-axis
yaxis(pic1, "$v$", ymax=(1+yext)*v0, Arrow); // draw y-axis
//yaxis(pic1, rotate(0)*"$v(t)$", ymax=(1+yext)*v0, Arrow); // draw y-axis
labelx(pic1, "$0$", t0, SE); // label x-axis: 0
labelx(pic1, "$t_1$", t1, blue); // label x-axis: t1
labelx(pic1, "$t_\mathrm B$", tB, heavycyan); // label x-axis: tB
labely(pic1, "$v_0$", v0, W); // label y-axis: v0
labely(pic1, "$v_1$", v1, blue); // label y-axis: v1
labely(pic1, "0", 0, NW); // label y-axis: 0
//add(pic1, scale(0.6)*legend(pic1), point(pic1,N), 10SE, UnFill); // add legend
label(pic1, "(I)", (tB,v_0B(tB)), 2N, heavycyan); // label function (I)
label(pic1, "(II)", (tB,v_01(tB)), N, blue); // label function (II)
label(pic1, "(III)", (tB,v_00(tB)), S, deepgreen); // label function (III)
/* Picture 2 */
picture pic2;
unitsize(pic2, 30, 3);
// displacement at time t in case of constant deceleration with a from v0 to v1 starting at t0
real s(real t, real t0=0, real v0, real v1=0, real a) {
if (t < t0) {
return v0 * (t - t0); // before deceleration
} else {
real t1 = t0 + (v0 - v1) / a; // time of end of deceleration
if (t <= t1) {
return v0 * (t - t0) - a / 2 * (t - t0)^2; // during deceleration
} else {
real s1 = v0 * (t1 - t0) - a / 2 * (t1 - t0)^2;
return s1 + v1 * (t - t1); // after deceleration
}
}
}
real s_0B(real t) { return s(t, t0, v0, 0, a); } // definition of function (I): displacement for deceleration from v0 to 0
real s_01(real t) { return s(t, t0, v0, v1, a); } // definition of function (II): displacement for deceleration from v0 to v1
real s_00(real t) { return s(t, t0, v0, v0, a); } // definition of function (III): displacement for constant speed v0
draw(pic2, graph(s_0B, t0, tB+xext*(tB-t0)), heavycyan, "(I)"); // plot graph of function (I)
draw(pic2, graph(s_01, t0, tB+xext*(tB-t0)), blue+longdashed, "(II)"); // plot graph of function (II)
draw(pic2, graph(s_00, t0, tB+xext*(tB-t0)), deepgreen+dashed, "(III)"); // plot graph of function (III)
draw(pic2, (t0,v0*(tB-t0))--(tB,v0*(tB-t0)), red+Dotted); // horizontal guideline at v0*tB
draw(pic2, (t0,v0*(t1-t0))--(t1,v0*(t1-t0)), red+Dotted); // horizontal guideline at v0*t1
draw(pic2, (t0,sB)--(tB,sB) ,red+Dotted); // horizontal guideline at sB
draw(pic2, (t0,s1)--(t1,s1), red+Dotted); // horizontal guideline at s1
draw(pic2, (tB,0)--(tB,v0*(tB-t0)), red+Dotted); // vertical guideline at tB
draw(pic2, (t1,0)--(t1,v0*(t1-t0)), red+Dotted); // vertical guideline at t1
xaxis(pic2, "$t$", xmax=tB+xext*(tB-t0), Arrow); // draw x-axis
yaxis(pic2, "$s$", ymax=(1+yext)*v0*(tB-t0), Arrow); // draw y-axis
labelx(pic2, "$0$", t0, SE); // label x-axis: 0
labelx(pic2, "$t_1$", t1, blue); // label x-axis: t1
labelx(pic2, "$t_\mathrm B$", tB, heavycyan); // label x-axis: tB
labely(pic2, "$v_0 \cdot t_\mathrm B$", v0*(tB-t0)); // label y-axis: v0*tB
labely(pic2, "$v_0 \cdot t_1$", v0*(t1-t0)); // label y-axis: v0*t1
labely(pic2, "$s_\mathrm B$", sB, heavycyan); // label y-axis: sB
labely(pic2, "$s_1$", s1, blue); // label y-axis: s1
labely(pic2, "0", 0, NW); // label y-axis: 0
label(pic2, "(I)", (tB,s_0B(tB)), SW, heavycyan); // label function (I)
label(pic2, "(II)", (tB,s_01(tB)), NW, blue); // label function (II)
label(pic2, "(III)", (tB,s_00(tB)), NW, deepgreen); // label function (III)
/* arranging pictures */
add(pic1.fit(), (0,4), NW); // fit pic1 to NW
add(pic2.fit(), (0,-4), SW); // fit pic2 to SW
|
Licensing[edit]
This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication. | |
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.
http://creativecommons.org/publicdomain/zero/1.0/deed.enCC0Creative Commons Zero, Public Domain Dedicationfalsefalse |
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 09:33, 26 October 2020 | 251 × 415 (26 KB) | SweetWood (talk | contribs) | improved coloring | |
17:02, 25 October 2020 | 251 × 415 (26 KB) | SweetWood (talk | contribs) | slight improvements | ||
12:05, 25 October 2020 | 251 × 415 (26 KB) | SweetWood (talk | contribs) | Uploaded own work with UploadWizard |
You cannot overwrite this file.
File usage on Commons
There are no pages that use this file.
File usage on other wikis
The following other wikis use this file:
- Usage on de.wikipedia.org
Metadata
This file contains additional information such as Exif metadata which may have been added by the digital camera, scanner, or software program used to create or digitize it. If the file has been modified from its original state, some details such as the timestamp may not fully reflect those of the original file. The timestamp is only as accurate as the clock in the camera, and it may be completely wrong.
Width | 200.974pt |
---|---|
Height | 331.908pt |