I am looking for a curve traced by a moving bicycle when its steering bar is fully rotated either clockwise or anti-clockwise.

How to model it mathematically?

Is the curve a circle?

My attempt is as follows:

Let $\vec{r}_1(t)$ and $\vec{r}_2(t)$ be the position vectors for the tangent points (between road and tires) on the rear and front tires, respectively. I know that $|\vec{r}_2(t)-\vec{r}_1(t)|$, $|\dot{\vec{r}}_1(t)|=|\dot{\vec{r}}_2(t)|$ and $\dot{\vec{r}}_1(t)\cdot\dot{\vec{r}}_2(t)$ are constants. $\dot{\vec{r}}_1(t)$ is in the direction of $\vec{r}_2(t)-\vec{r}_1(t)$.

Assuming the tires rolls without slipping then their linear velocity is the same.

  • $\begingroup$ The assumption that the speed of the two points is identical can only be true while the front wheel is straight. If they have identical speeds in two non-equal directions, then the distance between them will change. $\endgroup$ – Rick May 13 '15 at 17:02


As in the question we'll define our bicycle as the location in two dimensions of our contact patches $r_1$ and $r_2$ for the rear wheel and front wheel respectively. All other aspects of the bicycle will be ignored.


The first assumption corresponds to the distance between the wheels being constant:




The last assumption is that the rear wheel will always travel in the direction of the front wheel:

$$\dot r_1 \times (r_2-r_1) = 0$$

This can be manipulated into a slightly more useful form using the triple product rule:

$$(r_2-r_1) \times (\dot r_1 \times (r_2-r_1)) = 0$$

$$\dot r_1 ((r_2-r_1) \bullet (r_2-r_1)) - (r_2-r_1)((r_2-r_1) \bullet \dot r_1) = 0$$

$$\dot r_1 |r_2-r_1|^2 = (r_2-r_1)((r_2-r_1) \bullet \dot r_1)$$

$$\dot r_1 = \frac{(r_2-r_1)((r_2-r_1) \bullet \dot r_1)}{|r_2-r_1|^2}$$

Now lets see what we can do with the derivative of the first equation:

$$2(\dot r_2-\dot r_1)\bullet(r_2-r_1)=0$$

$$\dot r_1\bullet(r_2-r_1)=\dot r_2\bullet(r_2-r_1)$$

We can use this equation to substitute into our equation for $\dot r_1$ to give:

$$\dot r_1 = \frac{(r_2-r_1)((r_2-r_1) \bullet \dot r_2)}{|r_2-r_1|^2}$$

Now if we define steering angle $\theta$ as the angle between the direction of the bicycle ($r_2-r_1$) and the direction of travel of the front wheel $\dot r_2$ Then this expression can be written as:

$$\dot r_1 = \frac{(r_2-r_1)|r_2-r_1| |\dot r_2| \cos(\theta)}{|r_2-r_1|^2}$$

$$\dot r_1 = |\dot r_2| \cos(\theta)\frac{r_2-r_1}{|r_2-r_1|}$$

This equation will be useful in simulating a bicycle as it defines $r_1$ in terms of the bicycle direction, the steering angle, and the speed of the front wheel.

We can also define $\dot r_2$ using the same information:

$$\dot r_2 = |\dot r_2| \boldsymbol{R}(\theta)\frac{r_2-r_1}{|r_2-r_1|}$$

Where $\boldsymbol{R}(\theta)$ is the rotation matrix: $$\boldsymbol{R}(\theta)=\begin{bmatrix} \cos(\theta) & -\sin(\theta) \\ \sin(\theta) & \cos(\theta) \\ \end{bmatrix}$$


At this point it will be useful to define the direction:

$$d=\frac{r_2-r_1}{|r_2-r_1|}=\begin{bmatrix} \cos(\phi) \\ \sin(\phi) \\ \end{bmatrix}$$

and take its derivative

$$\dot d=\frac{\dot r_2 - \dot r_1}{|r_2-r_1|}$$

$$\dot d=\frac{|\dot r_2| \boldsymbol{R}(\theta)d - |\dot r_2| \cos(\theta)d}{|r_2-r_1|}$$

$$\dot d=|\dot r_2|\frac{\boldsymbol{R}(\theta) - \cos(\theta)\boldsymbol{I}}{|r_2-r_1|}d$$

and we can further simplify:

$$\boldsymbol{R}(\theta) - \cos(\theta)\boldsymbol{I}= \begin{bmatrix} \cos(\theta) & -\sin(\theta) \\ \sin(\theta) & \cos(\theta) \\ \end{bmatrix} - \begin{bmatrix} \cos(\theta) & 0 \\ 0 & \cos(\theta) \\ \end{bmatrix} $$

$$\boldsymbol{R}(\theta) - \cos(\theta)\boldsymbol{I}= \begin{bmatrix} 0 & -\sin(\theta) \\ \sin(\theta) & 0 \\ \end{bmatrix}=\sin(\theta) \begin{bmatrix} 0 & -1 \\ 1 & 0 \\ \end{bmatrix}$$


$$\dot d=\sin(\theta)\frac{|\dot r_2|}{|r_2-r_1|}\begin{bmatrix} 0 & -1 \\ 1 & 0 \\ \end{bmatrix}d$$

$$\dot d=\sin(\theta)\frac{|\dot r_2|}{|r_2-r_1|}\begin{bmatrix} 0 & -1 \\ 1 & 0 \\ \end{bmatrix}\begin{bmatrix} \cos(\phi) \\ \sin(\phi) \\ \end{bmatrix}$$

$$\dot d=\sin(\theta)\frac{|\dot r_2|}{|r_2-r_1|}\begin{bmatrix} -\sin(\phi) \\ \cos(\phi) \\ \end{bmatrix}$$

Also by the definition:

$$\dot d=\begin{bmatrix} -\sin(\phi) \\ \cos(\phi) \\ \end{bmatrix}\dot \phi$$


$$\begin{bmatrix} -\sin(\phi) \\ \cos(\phi) \\ \end{bmatrix}\dot \phi = \sin(\theta)\frac{|\dot r_2|}{|r_2-r_1|}\begin{bmatrix} -\sin(\phi) \\ \cos(\phi) \\ \end{bmatrix}$$

$$\dot \phi = \sin(\theta)\frac{|\dot r_2|}{|r_2-r_1|}$$

This tells us that the rate of angle change of the direction of the bike is proportional to the sine of the steering angle, the speed of the front wheel, and the inverse of the wheelbase.

Removing time

Now so far we've taken all of our derivatives with respect to time, but what happens if we take a derivative with respect to the path length the front wheel has traveled $s$.

$$\dot s = \frac{d s}{dt} = \left|\frac{d r_2}{dt}\right|= |\dot r_2|$$

$$\dot \phi = \frac{d \phi}{dt} = \frac{d s}{dt}\frac{d \phi}{ds} = |\dot r_2|\frac{d \phi}{ds} =|\dot r_2|\phi'$$ Similarly: $$\dot r_1 = |\dot r_2|{r_1}'$$ $$\dot r_2 = |\dot r_2|{r_2}'$$ Using these new derivatives:

$$|\dot r_2|\phi' = \sin(\theta)\frac{|\dot r_2|}{|r_2-r_1|}$$ $$\phi' = \frac{\sin(\theta)}{|r_2-r_1|}$$


$${r_1}' = \cos(\theta)d$$ $${r_2}' = \boldsymbol{R}(\theta)d$$

Now the paths of $r_1$ and $r_2$ can be calculated with numerical integration given any steering angle as a function of front wheel travel.

Constant Steering Angle

If by "fully rotated either clockwise or anti-clockwise" you mean a constant, if extreme, steering angle then the results can be calculated analytically.

Through a change in units the wheelbase can be set to any arbitrary numerical value so without loss of generality we can set it one to simplify the math. Through changes in coordinate systems the initial values of $r_1$ and $r_2$ can be set to $\begin{bmatrix} 0 \\ 0 \\ \end{bmatrix}$ and $\begin{bmatrix} 1 \\ 0 \\ \end{bmatrix}$ respectively. This corresponds to an initial $\phi = 0$

Integrating $\phi'$ yields

$$\phi = \sin(\theta)s$$

Substituting into ${r_1}'$ and ${r_2}'$:

$${r_1}' = \cos(\theta)\begin{bmatrix} \cos(\sin(\theta)s) \\ \sin(\sin(\theta)s) \\ \end{bmatrix}$$ $${r_2}' = \boldsymbol{R}(\theta)\begin{bmatrix} \cos(\sin(\theta)s) \\ \sin(\sin(\theta)s) \\ \end{bmatrix}$$


$$r_1 = \cot(\theta)\begin{bmatrix} \sin(\sin(\theta)s) \\ -\cos(\sin(\theta)s) \\ \end{bmatrix}+\begin{bmatrix} 0 \\ \cot(\theta) \\ \end{bmatrix}$$ $$r_2 = \csc(\theta)\boldsymbol{R}(\theta)\begin{bmatrix} \sin(\sin(\theta)s) \\ -\cos(\sin(\theta)s) \\ \end{bmatrix}+\begin{bmatrix} c_x \\ c_y \\ \end{bmatrix}$$

These equations trace out circles with radii $\cot(\theta)$ for the rear wheel and $\csc(\theta)$ for the front wheel. Sharing the same center point $\begin{bmatrix} 0 \\ \cot(\theta) \\ \end{bmatrix}$.

Note that for steering angles more then ninety degrees in either direction the rear radius goes negative. This corresponds to the rear wheel moving backwards while tracing out its circle. For steering angles of 0 and 180 the radii are infinite as the bicycle will travel in a straight line.

Here is a plot of a bicycle with a constant steering angle of 80 degrees:

Bicycle path constant 80 degrees

Here is one with 90 degrees. Note the rear wheel is stationary.

Bicycle path constant 90 degrees

Here is one with 100 degrees. Note the rear wheel is going backwards now, both still going around counter-clockwise.

Bicycle path constant 100 degrees

Linear steering angle change

If by "fully rotated either clockwise or anti-clockwise" you mean the steering column is rotated one (or more) full revolutions as is possible with some BMX bikes, then the solution is no longer solvable analytically; we must resort to numerical integration.

Here's a plot of the bicycle where the steering angle is increased at a constant rate of 30 degrees each time the front wheel travels one wheelbase.

Bicycle path 30 degrees

Here's 180 degrees:

Bicycle path 180 degrees

Here's 5 degrees:

Bicycle path 5 degrees


If by "fully rotated" you mean that the front wheel is turned 90 degrees, then there is no solution in which the wheels roll without slipping. The only time the no-slip condition is satisfied while the wheels are orthogonal is when the bike is stationary.

  • $\begingroup$ The front wheel could be moving. $\endgroup$ – Rick May 13 '15 at 16:41
  • $\begingroup$ Yes, in which case the rear would be forced to slip over the ground, unless you treat the contact patch as an ideal point contact. $\endgroup$ – Colin K May 13 '15 at 16:50
  • 1
    $\begingroup$ Well, without treating the contact patch as an ideal point contact, it will always slip when the bicycle changes direction, just the rate of slip to linear travel is no longer infinite, allowing the tire to deform temporarily rather than "slipping", but I think that's way more detail than the question is looking for. Especially given the faulty premise. $\endgroup$ – Rick May 13 '15 at 17:01

Let's simplify the situation. Let's assume ideal wheels and ground, that contact only at a point. Let's assume the front steering axis is perfectly vertical, and there is no caster - i.e. the contact point between the wheel and the ground is on the line of the steering axis. Also assume the bicycle remains perfectly upright.

If the front wheel is moving forward at a constant speed, and if the steering bar is rotated at a constant speed with respect to a grid ruled on the ground, then the front wheel traces a circle on the ground. If the steering bar is only turned a fraction of a full turn, then the wheel will only trace a fraction of a circle.

What the rear wheel does is trace a curve whose displacement from the original line of motion goes as the integral of the area traced by the front wheel.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.