Difference between revisions of "Traffic Waves"
(→Shocks) |
|||
(81 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | = Equations = | + | {{nonlinear waves course |
+ | | chapter title = Traffic Waves | ||
+ | | next chapter = [[Nonlinear Shallow Water Waves]] | ||
+ | | previous chapter = [[Method of Characteristics for Linear Equations]] | ||
+ | }} | ||
+ | |||
+ | {{complete pages}} | ||
+ | |||
+ | We consider here some simple equations which model traffic flow. This problem is discussed in | ||
+ | [[Billingham and King 2000]]. | ||
+ | |||
+ | |||
+ | [[Category:Reference]] | ||
+ | |||
+ | == Equations == | ||
We consider a single lane of road, and we measure distance along the road with | We consider a single lane of road, and we measure distance along the road with | ||
Line 15: | Line 29: | ||
in and out must be balanced by the change in density. This means that | in and out must be balanced by the change in density. This means that | ||
<center><math> | <center><math> | ||
− | \frac{\partial}{\partial t} \int_{x_1}^{x_2} \rho(x,t) | + | \frac{\partial}{\partial t} \int_{x_1}^{x_2} \rho(x,t) \mathrm{d}x = -q(x_2,t) + q(x_1,t) |
</math></center> | </math></center> | ||
We now consider continuous densities (which is obviously an approximation) and | We now consider continuous densities (which is obviously an approximation) and | ||
Line 26: | Line 40: | ||
\frac{\partial \rho}{\partial t} + \frac{\partial q}{\partial x} = 0 | \frac{\partial \rho}{\partial t} + \frac{\partial q}{\partial x} = 0 | ||
</math></center> | </math></center> | ||
− | Note that this equation has been derived purely from the need to conserve cars and | + | Note that this equation has been derived purely from the need to conserve cars (it is a conservation equation) and |
− | + | is not possible to solve this equation until we have derived a connection between <math>\rho</math> | |
and <math>q</math>. | and <math>q</math>. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Equation for <math>\rho</math> only == | == Equation for <math>\rho</math> only == | ||
− | If we substitute the expression for <math>q</math> into our differential equation we obtain | + | At the moment we assume that we have some expression for <math>v(\rho)</math> |
+ | If we substitute the expression for <math>q = v\rho</math> into our differential equation we obtain | ||
<center><math> | <center><math> | ||
\frac{\partial \rho}{\partial t} + \frac{\partial }{\partial x} \left(v(\rho)\rho\right) = 0 | \frac{\partial \rho}{\partial t} + \frac{\partial }{\partial x} \left(v(\rho)\rho\right) = 0 | ||
Line 64: | Line 64: | ||
the speed at which disturbances in the density travel. | the speed at which disturbances in the density travel. | ||
− | = Small Amplitude Disturbances = | + | == A simple relationship between <math>\rho</math> and <math>q</math> == |
+ | |||
+ | The relationship between <math>\rho</math> and <math>q</math> is an equation of state and | ||
+ | there is no ''exact'' equation since it depends on many unknowns. One of the | ||
+ | simplest relationship between <math>\rho</math> and <math>q</math> is derived from | ||
+ | the following assumptions | ||
+ | |||
+ | * When the density <math>\rho = 0</math> the speed is <math>v=v_0</math> | ||
+ | * When the density is <math>\rho = \rho_{\max} </math> the speed is <math>v=0</math> | ||
+ | * The speed is a linear function of <math>\rho</math> between these two values. | ||
+ | |||
+ | This also gives good fit with measured data. We will either consider the general case or use this simple | ||
+ | relationship. Using this we obtain | ||
+ | <center><math> | ||
+ | v(\rho) = v_0\frac{\rho_{\max} - \rho}{\rho_{\max}} | ||
+ | </math></center> | ||
+ | The flux of cars is given by | ||
+ | <center><math> | ||
+ | q = \rho v(\rho) = v_0\frac{\rho(\rho_{\max} - \rho)}{\rho_{\max}} | ||
+ | </math></center> | ||
+ | and the wave speed is | ||
+ | <center><math> | ||
+ | c(\rho) = \left(v^{\prime}(\rho)\rho + v(\rho)\right) = -\frac{v_0}{\rho_{\max}}\rho + v_0\frac{\rho_{\max} - \rho}{\rho_{\max}} | ||
+ | = v_0\frac{\rho_{\max} - 2\rho}{\rho_{\max}} | ||
+ | </math></center> | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! <math>v</math> | ||
+ | ! <math>q</math> | ||
+ | ! <math>c</math> | ||
+ | |- | ||
+ | | [[Image:Velocity.jpg|thumb|350px|<math>v(\rho)</math> versus <math>\rho</math>]] | ||
+ | | [[Image:Q_flux.jpg|thumb|350px|<math>q(\rho)</math> versus <math>\rho</math>]] | ||
+ | | [[Image:C_speed.jpg|thumb|350px|<math>\rho(\rho)</math> versus <math>\rho</math>]] | ||
+ | |} | ||
+ | |||
+ | == Small Amplitude Disturbances == | ||
We can linearise the model by assuming that the variation in density is small so | We can linearise the model by assuming that the variation in density is small so | ||
Line 75: | Line 112: | ||
\frac{\partial \tilde{\rho}}{\partial t} + c(\rho_0) \frac{\partial \tilde{\rho}}{\partial x} = 0 | \frac{\partial \tilde{\rho}}{\partial t} + c(\rho_0) \frac{\partial \tilde{\rho}}{\partial x} = 0 | ||
</math></center> | </math></center> | ||
− | where the main difference between this and the full equation is that | + | where the main difference between this and the full equation is that the wave speed <math>c</math> is |
− | a constant. This | + | a constant. This is the linearised equation. Note that this linearisation does not give a good model because |
+ | traffic density does not vary only a small amount about some mean (as is the case for accoustic waves where the | ||
+ | density of air is roughly constant). | ||
Under these assumptions the solution to the equation is | Under these assumptions the solution to the equation is | ||
Line 89: | Line 128: | ||
<math>\rho</math> is a constant. These are give by | <math>\rho</math> is a constant. These are give by | ||
<center><math> | <center><math> | ||
− | x = X(t) = x_0 + c(\rho_0) t. | + | x = X(t) = x_0 + c(\rho_0) t.\, |
</math></center> | </math></center> | ||
+ | which are just straight lines of constant slope. We will see shortly that the full (nonlinear) | ||
+ | equations also possess characteristics. | ||
− | = Nonlinear Initial Value Problem = | + | == Nonlinear Initial Value Problem == |
We wish to solve | We wish to solve | ||
Line 106: | Line 147: | ||
If we want <math>\rho(X(t),t)</math> to be a constant then we require | If we want <math>\rho(X(t),t)</math> to be a constant then we require | ||
<center><math> | <center><math> | ||
− | \frac{d}{ | + | \frac{\mathrm{d}}{\mathrm{d}t}\rho(X(t),t) = \frac{\mathrm{d} X}{\mathrm{d}t} \frac{\partial \rho}{\partial x} + |
\frac{\partial \rho}{\partial t} = 0. | \frac{\partial \rho}{\partial t} = 0. | ||
</math></center> | </math></center> | ||
Comparing this to the governing partial differential equation we can see that we require | Comparing this to the governing partial differential equation we can see that we require | ||
<center><math> | <center><math> | ||
− | \frac{d X}{ | + | \frac{\mathrm{d} X}{\mathrm{d}t} = c(\rho) |
</math></center> | </math></center> | ||
− | This means that the characteristics are straight lines with | + | This means that the characteristics are straight lines (since <math>\rho</math> is constant) with |
+ | slope given by <math> c(\rho_0(x_0))</math> so that the equation for the characteristics is | ||
<center><math> | <center><math> | ||
X(t) = x_0 + c(\rho_0(x_0))t \, | X(t) = x_0 + c(\rho_0(x_0))t \, | ||
Line 121: | Line 163: | ||
all we can do is write | all we can do is write | ||
<center><math> | <center><math> | ||
− | \rho(x_0 + c(\rho_0(x_0))t,t) = \ | + | \rho(x_0 + c(\rho_0(x_0))t,t) = \rho_0(x_0)\, |
</math></center> | </math></center> | ||
which allows us to calculate the solution stepping forward in time, but not to determine the solution given | which allows us to calculate the solution stepping forward in time, but not to determine the solution given | ||
− | a value of <math>(x,t)</math>. | + | a value of <math>(x,t)</math> (because we have no way of knowing what <math>c(\rho_0(x_0))</math> is. |
The characteristics are a family of straight lines which will all have different slopes. If two characteristics | The characteristics are a family of straight lines which will all have different slopes. If two characteristics | ||
meet, our solution method will break down because there will be two values of the density <math>\rho</math>. | meet, our solution method will break down because there will be two values of the density <math>\rho</math>. | ||
This gives rise to a '''shock'''. It turns | This gives rise to a '''shock'''. It turns | ||
− | out that this is a | + | out that this the formation of shocks is a product of the equations themselves and not with the solution method. |
− | methods. | + | We will see shortly that special methods are required to treat these shocks. |
− | == Case when no shocks are formed == | + | === Case when no shocks are formed === |
The characteristic curves will fill the space without meeting provided that the wave speed <math>c(\rho_0)</math> | The characteristic curves will fill the space without meeting provided that the wave speed <math>c(\rho_0)</math> | ||
Line 150: | Line 192: | ||
by expansion of the initial density. | by expansion of the initial density. | ||
− | === Riemann problem and the expansion fan === | + | ==== No shock example ==== |
+ | |||
+ | We consider the case when <math>\rho_{\max} = v_0 = 1</math> and where the initial density is given | ||
+ | by <math>\rho_0 = 1/2(1- \tanh(x))</math>. The figures below show the initial density, the initial speed, | ||
+ | the characteristics and <math>\rho(x,t)</math> for this case. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! <math>\rho</math> | ||
+ | ! <math>c</math> | ||
+ | |- | ||
+ | | [[Image:Traffic example1 rho.jpg|thumb|350px| <math>\rho_0 = 1/2(1- \tanh(x))</math> ]] | ||
+ | | [[Image:Traffic_example1_c.jpg|thumb|350px|<math>c(\rho_0)</math>]] | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! characteristics | ||
+ | ! <math>\rho(x,t)</math> | ||
+ | |- | ||
+ | | [[Image:Traffic_example1_characteristics.jpg|thumb|350px|Characterisitics for <math>\rho_0 = 1/2(1- \tanh(x))</math>]] | ||
+ | | [[Image:Traffic_example11.gif|thumb|350px|<math>\rho(x,t) </math><math> for </math><math>\rho_0 = 1/2(1- \tanh(x))</math>]] | ||
+ | |} | ||
+ | |||
+ | ==== Riemann problem and the expansion fan ==== | ||
We can consider a simple problem in which there is a jump in the initial density | We can consider a simple problem in which there is a jump in the initial density | ||
Line 166: | Line 232: | ||
question is what happens between. It is easiest to think about the following problem | question is what happens between. It is easiest to think about the following problem | ||
<center><math> | <center><math> | ||
− | + | \rho(x,0) = | |
\left\{ | \left\{ | ||
\begin{matrix} | \begin{matrix} | ||
Line 175: | Line 241: | ||
\right. | \right. | ||
</math></center> | </math></center> | ||
− | We can then see that we have lines of uniformly varying slope for <math>-\epsilon<x<\epsilon</math> | + | We can then see that we have lines of uniformly varying slope for <math>-\epsilon < x <\epsilon</math> |
with slope between <math>c(\rho_L)</math> and <math>c(\rho_R)</math>. If we then take the limit | with slope between <math>c(\rho_L)</math> and <math>c(\rho_R)</math>. If we then take the limit | ||
as <math>\epsilon \to 0</math> we obtain an expansion fan emanating from <math>x=0</math>. | as <math>\epsilon \to 0</math> we obtain an expansion fan emanating from <math>x=0</math>. | ||
+ | |||
+ | If we assume that | ||
+ | <center><math> | ||
+ | c(\rho) = v_0\frac{\rho_{\max} - 2\rho}{\rho_{\max}} | ||
+ | </math></center> | ||
+ | then we know that on the lines of the expansion fan (which all start at <math>x=0</math>) we have | ||
+ | <math>c(\rho) = x/t</math>. We can rearrange this and solve for <math>x</math> and obtain | ||
+ | <math>\rho =\frac{ 1}{2} \rho_{\max} (1-x/v_0 t)</math> | ||
The solution is then given by | The solution is then given by | ||
<center><math> | <center><math> | ||
− | \rho = | + | \rho(x,t) = |
\left\{ | \left\{ | ||
\begin{matrix} | \begin{matrix} | ||
\rho_{L},& x < c(\rho_L) t\\ | \rho_{L},& x < c(\rho_L) t\\ | ||
− | \frac{\rho_{ | + | \frac{ \rho_{\max}}{2} (1-x/v_0 t),& c(\rho_L) t \leq x \leq c(\rho_R) t\\ |
\rho_{R},& x > c(\rho_R) t | \rho_{R},& x > c(\rho_R) t | ||
\end{matrix} | \end{matrix} | ||
\right. | \right. | ||
</math></center> | </math></center> | ||
− | This solution is known as an '''expansion fan'''. | + | This solution is known as an '''expansion fan'''. |
+ | |||
+ | |||
+ | We consider the case when <math>\rho_{\max} = v_0 = 1</math> and where the initial density is given | ||
+ | by | ||
+ | <center><math> | ||
+ | \rho(x,0) = | ||
+ | \left\{ | ||
+ | \begin{matrix} | ||
+ | 0.6,& x < 0 \\ | ||
+ | 0.3,& x > 0. | ||
+ | \end{matrix} | ||
+ | \right. | ||
+ | </math></center> The figures below show the initial density, the initial speed, | ||
+ | the characteristics and <math>\rho(x,t)</math> for this case. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! <math>\rho</math> | ||
+ | ! <math>c</math> | ||
+ | |- | ||
+ | | [[Image:Expansion_fan_rho.jpg|thumb|350px| <math>\rho_0</math> ]] | ||
+ | | [[Image:Expansion_fan_c.jpg|thumb|350px|<math>c(\rho_0)</math>]] | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! characteristics | ||
+ | ! <math>\rho(x,t)</math> | ||
+ | |- | ||
+ | | [[Image:Expansion_fan_characteristics.jpg|thumb|350px|Characterisitics]] | ||
+ | | [[Image:Expansion_fan2.gif|thumb|350px|<math>\rho(x,t)</math>]] | ||
+ | |} | ||
=== Shocks === | === Shocks === | ||
So far we have only considered the case when <math>c(x_0)</math> is monotonically increasing so that | So far we have only considered the case when <math>c(x_0)</math> is monotonically increasing so that | ||
− | two characteristics never cross. We now consider the case when characteristics can meet. We can easily see that | + | two characteristics never cross. We now consider the case when characteristics can meet. |
+ | A movie of this case is shown below. | ||
+ | |||
+ | {{#ev:youtube|Suugn-p5C1M}} | ||
+ | |||
+ | We can easily see that | ||
the first characteristics to meet will be neighbouring characteristics. Consider two characteristics | the first characteristics to meet will be neighbouring characteristics. Consider two characteristics | ||
with | with | ||
Line 206: | Line 317: | ||
Then these curves will meet at time <math>T</math> where | Then these curves will meet at time <math>T</math> where | ||
<center><math> | <center><math> | ||
− | x_0 + c(x_0)T = \delta x + c(x_0+\delta x)T\, | + | x_0 + c(x_0)T = x_0 + \delta x + c(x_0+\delta x)T\, |
</math></center> | </math></center> | ||
which implies that | which implies that | ||
Line 213: | Line 324: | ||
</math></center> | </math></center> | ||
Note the following | Note the following | ||
− | * If <math>c^{\prime}(x) | + | * If <math>c^{\prime}(x) > 0 </math> then no shock will form. |
− | * The shock first forms at <math> | + | * The shock first forms at the minimum positive value of |
+ | <math> - \frac{1}{c^{\prime}(x)} </math> for <math> -\infty < x <\infty </math>. | ||
− | === Shock Fitting === | + | ==== Shock Fitting ==== |
If we calculate the solution using our formula | If we calculate the solution using our formula | ||
Line 223: | Line 335: | ||
</math></center> | </math></center> | ||
then we find that the solution becomes multivalued in the case when a shock forms. | then we find that the solution becomes multivalued in the case when a shock forms. | ||
− | We then have to fit a shock | + | We then have to fit a shock. One way to do this is by imposing the condition that equal |
− | areas are removed and added | + | areas are removed and added when we chose the position of the shock. |
+ | This corresponds to the condition that | ||
the number of cars must be conserved | the number of cars must be conserved | ||
− | === Speed of the shock === | + | ==== Speed of the shock ==== |
If we consider the case when there is a shock at <math>s(t)</math> with | If we consider the case when there is a shock at <math>s(t)</math> with | ||
− | <math>\rho = \rho^{-}</math> at <math> | + | <math>\rho = \rho^{-}</math> at <math>x=s^{-}</math> |
− | <math>\rho = \rho^{+}</math> at <math>s | + | and |
+ | <math>\rho = \rho^{+}</math> at <math>x=s^{+}</math> | ||
+ | (where <math>s^{-}</math> | ||
+ | is just less than s(t) and <math>s^{+}</math> | ||
+ | is just greater than s(t) ). If we substitute | ||
this into the governing integral equation we obtain | this into the governing integral equation we obtain | ||
<center><math> | <center><math> | ||
− | \frac{\partial}{\partial t} \left( \int_{x_1}^{s(t)} + \int_{s(t)}^{x_2} | + | \frac{\partial}{\partial t} \left( \int_{x_1}^{s(t)} \rho(x,t)\mathrm{d}x + \int_{s(t)}^{x_2} |
− | \rho(x,t) | + | \rho(x,t)\mathrm{d}x \right) = q(x_1,t) - q(x_2,t) |
</math></center> | </math></center> | ||
and hence | and hence | ||
<center><math> | <center><math> | ||
\int_{x_1}^{x_2} | \int_{x_1}^{x_2} | ||
− | \frac{\partial \rho(x,t)}{\partial t} | + | \frac{\partial \rho(x,t)}{\partial t} \mathrm{d}x + \frac{\mathrm{d}s}{\mathrm{d}t}\rho^{-} |
− | - \frac{ | + | - \frac{\mathrm{d}s}{\mathrm{d}t}\rho^{+} = q(x_1,t) - q(x_2,t) |
+ | </math></center> | ||
+ | If we now take the limit as <math>x_1\to x_2</math> we obtain | ||
+ | <center><math> | ||
+ | \frac{\mathrm{d}s}{\mathrm{d}t}\rho^{-} | ||
+ | - \frac{\mathrm{d}s}{\mathrm{d}t}\rho^{+} = q(\rho^{-}) - q(\rho^{+}) | ||
+ | </math></center> | ||
+ | so that | ||
+ | <center><math> | ||
+ | \frac{\mathrm{d}s}{\mathrm{d}t} = \frac{q(\rho^{-}) - q(\rho^{+})} | ||
+ | {\rho^{-} - \rho^{+}} | ||
+ | </math></center> | ||
+ | |||
+ | ==== Shock example ==== | ||
+ | |||
+ | We consider the case when <math>\rho_{\max} = v_0 = 1</math> and where the initial density is given | ||
+ | by <math>\rho_0 = 1/2(1 + \tanh(x))</math>. The figures below show the initial density, the initial speed, | ||
+ | the characteristics and <math>\rho(x,t)</math> for this case. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! <math>\rho</math> | ||
+ | ! <math>c</math> | ||
+ | |- | ||
+ | | [[Image:Traffic example2 rho.jpg|thumb|350px| <math>\rho_0 = 1/2(1+ \tanh(x))</math> ]] | ||
+ | | [[Image:Traffic_example2_c.jpg|thumb|350px|<math>c(\rho_0)</math>]] | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! characteristics | ||
+ | ! <math>\rho(x,t)</math> | ||
+ | |- | ||
+ | | [[Image:Traffic_example2_characteristics.jpg|thumb|350px|Characterisitics for <math>\rho_0 = 1/2(1+ \tanh(x))</math>]] | ||
+ | | [[Image:Traffic_example2.gif|thumb|350px|<math>\rho(x,t) </math><math> for </math><math>\rho_0 = 1/2(1+ \tanh(x))</math> Dotted solution is without shock fitting.]] | ||
+ | |} | ||
+ | |||
+ | ==== Riemann problem ==== | ||
+ | |||
+ | We now consider the Riemann problem | ||
+ | <center><math> | ||
+ | \rho(x,0) = | ||
+ | \left\{ | ||
+ | \begin{matrix} | ||
+ | \rho_{L},& x < 0 \\ | ||
+ | \rho_{R},& x > 0 | ||
+ | \end{matrix} | ||
+ | \right. | ||
+ | </math></center> | ||
+ | where <math>\rho_{L} < \rho_{R}</math>. In this case a shock forms immediately and | ||
+ | the characteristics terminate at the shock. The shock moves with constant speed given by | ||
+ | the equation for the motion of the shock (or can be found by the equal areas rule). We obtain | ||
+ | <center><math> | ||
+ | \rho(x,t) = | ||
+ | \left\{ | ||
+ | \begin{matrix} | ||
+ | \rho_{L},& x < \frac{1}{2} \left(c(\rho_{L}) + c(\rho_{R}) \right) t \\ | ||
+ | \rho_{R},& x > \frac{1}{2} \left(c(\rho_{L}) + c(\rho_{R}) \right) t | ||
+ | \end{matrix} | ||
+ | \right. | ||
+ | </math></center> | ||
+ | We consider the case when <math>\rho_{\max} = v_0 = 1</math> and where the initial density is given | ||
+ | by | ||
+ | <center><math> | ||
+ | \rho(x,0) = | ||
+ | \left\{ | ||
+ | \begin{matrix} | ||
+ | 0.3,& x < 0 \\ | ||
+ | 0.6,& x > 0 | ||
+ | \end{matrix} | ||
+ | \right. | ||
</math></center> | </math></center> | ||
− | |||
− | [[Category: | + | The figures below show the initial density, the initial speed, |
+ | the characteristics, and <math>\rho(x,t)</math> for this case. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! <math>\rho</math> | ||
+ | ! <math>c</math> | ||
+ | |- | ||
+ | | [[Image:Shock_rho.jpg|thumb|350px| <math>\rho_0</math> ]] | ||
+ | | [[Image:Shock_c.jpg|thumb|350px|<math>c(\rho_0)</math>]] | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! characteristics | ||
+ | ! <math>\rho(x,t)</math> | ||
+ | |- | ||
+ | | [[Image:Shock_characteristics.jpg|thumb|350px|Characterisitics with shock shown in green.]] | ||
+ | | [[Image:Shock3.gif|thumb|350px|<math>\rho(x,t)</math> with the red dotted line showing the solution without shock fitting]] | ||
+ | |} | ||
+ | |||
+ | == Lecture Videos == | ||
+ | |||
+ | === Part 1 === | ||
+ | |||
+ | {{#ev:youtube|SWIXL97H0fw}} | ||
+ | |||
+ | === Part 2 === | ||
+ | |||
+ | {{#ev:youtube|j652tvrgm4c}} | ||
+ | |||
+ | === Part 3 === | ||
+ | |||
+ | {{#ev:youtube|QVtYsUGtb7I}} | ||
+ | |||
+ | === Part 4 === | ||
+ | |||
+ | {{#ev:youtube|Ik2Q7H_aIV8}} | ||
+ | |||
+ | === Part 5 === | ||
+ | |||
+ | {{#ev:youtube|lNeFNHAqgEA}} | ||
+ | |||
+ | === Part 6 === | ||
+ | |||
+ | {{#ev:youtube|Yo0sW3Nh2FI}} | ||
+ | |||
+ | === Part 7 === | ||
+ | |||
+ | {{#ev:youtube|gOEMfOQZAAM}} | ||
+ | |||
+ | === Part 8 === | ||
+ | |||
+ | {{#ev:youtube|ZwvTZcWLZKM}} | ||
+ | |||
+ | [[Category:Simple Nonlinear Waves]] |
Latest revision as of 05:04, 27 July 2023
Nonlinear PDE's Course | |
---|---|
Current Topic | Traffic Waves |
Next Topic | Nonlinear Shallow Water Waves |
Previous Topic | Method of Characteristics for Linear Equations |
We consider here some simple equations which model traffic flow. This problem is discussed in Billingham and King 2000.
Equations
We consider a single lane of road, and we measure distance along the road with the variable [math]\displaystyle{ x }[/math] and [math]\displaystyle{ t }[/math] is time. We define the following variables
If we consider a finite length of road [math]\displaystyle{ x_1\leq x \leq x_2 }[/math] then the net flow of cars in and out must be balanced by the change in density. This means that
We now consider continuous densities (which is obviously an approximation) and set [math]\displaystyle{ x_2 = x_1 + \Delta x }[/math] and we obtain
and if we take the limit as [math]\displaystyle{ \Delta x \to 0 }[/math] we obtain the differential equation
Note that this equation has been derived purely from the need to conserve cars (it is a conservation equation) and is not possible to solve this equation until we have derived a connection between [math]\displaystyle{ \rho }[/math] and [math]\displaystyle{ q }[/math].
Equation for [math]\displaystyle{ \rho }[/math] only
At the moment we assume that we have some expression for [math]\displaystyle{ v(\rho) }[/math] If we substitute the expression for [math]\displaystyle{ q = v\rho }[/math] into our differential equation we obtain
which gives us
or
where [math]\displaystyle{ c(\rho) = \left(v^{\prime}(\rho)\rho + v(\rho)\right) }[/math] is the kinematic wave speed. Note that this is not the speed of the cars, but the speed at which disturbances in the density travel.
A simple relationship between [math]\displaystyle{ \rho }[/math] and [math]\displaystyle{ q }[/math]
The relationship between [math]\displaystyle{ \rho }[/math] and [math]\displaystyle{ q }[/math] is an equation of state and there is no exact equation since it depends on many unknowns. One of the simplest relationship between [math]\displaystyle{ \rho }[/math] and [math]\displaystyle{ q }[/math] is derived from the following assumptions
- When the density [math]\displaystyle{ \rho = 0 }[/math] the speed is [math]\displaystyle{ v=v_0 }[/math]
- When the density is [math]\displaystyle{ \rho = \rho_{\max} }[/math] the speed is [math]\displaystyle{ v=0 }[/math]
- The speed is a linear function of [math]\displaystyle{ \rho }[/math] between these two values.
This also gives good fit with measured data. We will either consider the general case or use this simple relationship. Using this we obtain
The flux of cars is given by
and the wave speed is
[math]\displaystyle{ v }[/math] | [math]\displaystyle{ q }[/math] | [math]\displaystyle{ c }[/math] |
---|---|---|
Small Amplitude Disturbances
We can linearise the model by assuming that the variation in density is small so that we can write
where we assume that [math]\displaystyle{ \tilde{\rho} }[/math] is small. This allows us to write the equations as
where the main difference between this and the full equation is that the wave speed [math]\displaystyle{ c }[/math] is a constant. This is the linearised equation. Note that this linearisation does not give a good model because traffic density does not vary only a small amount about some mean (as is the case for accoustic waves where the density of air is roughly constant).
Under these assumptions the solution to the equation is
where [math]\displaystyle{ f }[/math] is determined by the initial condition. This represents disturbances which travel with speed [math]\displaystyle{ c(\rho_0) }[/math] in the positive [math]\displaystyle{ x }[/math] direction.
We now consider the characteristic curves which are curves along which the density [math]\displaystyle{ \rho }[/math] is a constant. These are give by
which are just straight lines of constant slope. We will see shortly that the full (nonlinear) equations also possess characteristics.
Nonlinear Initial Value Problem
We wish to solve
subject to the initial conditions
It turns out that the concept of characteristic curves is very important for this problem.
If we want [math]\displaystyle{ \rho(X(t),t) }[/math] to be a constant then we require
Comparing this to the governing partial differential equation we can see that we require
This means that the characteristics are straight lines (since [math]\displaystyle{ \rho }[/math] is constant) with slope given by [math]\displaystyle{ c(\rho_0(x_0)) }[/math] so that the equation for the characteristics is
This does not allow us to write down a solution to the initial value problem, all we can do is write
which allows us to calculate the solution stepping forward in time, but not to determine the solution given a value of [math]\displaystyle{ (x,t) }[/math] (because we have no way of knowing what [math]\displaystyle{ c(\rho_0(x_0)) }[/math] is.
The characteristics are a family of straight lines which will all have different slopes. If two characteristics meet, our solution method will break down because there will be two values of the density [math]\displaystyle{ \rho }[/math]. This gives rise to a shock. It turns out that this the formation of shocks is a product of the equations themselves and not with the solution method. We will see shortly that special methods are required to treat these shocks.
Case when no shocks are formed
The characteristic curves will fill the space without meeting provided that the wave speed [math]\displaystyle{ c(\rho_0) }[/math] is a monotonically increasing function of the distance [math]\displaystyle{ x }[/math]. If we work with our previous model we have
and
so that [math]\displaystyle{ c }[/math] is a monotonically decreasing function of density [math]\displaystyle{ \rho }[/math]. This means that the wave speed [math]\displaystyle{ c(\rho_0) }[/math] will be a monotonically increasing function of the distance [math]\displaystyle{ x }[/math] if an only if the density is a monotonically decreasing function. In this case the solution can be calculated straightforwardly by expansion of the initial density.
No shock example
We consider the case when [math]\displaystyle{ \rho_{\max} = v_0 = 1 }[/math] and where the initial density is given by [math]\displaystyle{ \rho_0 = 1/2(1- \tanh(x)) }[/math]. The figures below show the initial density, the initial speed, the characteristics and [math]\displaystyle{ \rho(x,t) }[/math] for this case.
[math]\displaystyle{ \rho }[/math] | [math]\displaystyle{ c }[/math] |
---|---|
characteristics | [math]\displaystyle{ \rho(x,t) }[/math] |
---|---|
Riemann problem and the expansion fan
We can consider a simple problem in which there is a jump in the initial density
where [math]\displaystyle{ \rho_{L} \gt \rho_{R} }[/math] so that we do not form a shock. In this case the characteristics on each side of [math]\displaystyle{ x=0 }[/math] have a different slope and the question is what happens between. It is easiest to think about the following problem
We can then see that we have lines of uniformly varying slope for [math]\displaystyle{ -\epsilon \lt x \lt \epsilon }[/math] with slope between [math]\displaystyle{ c(\rho_L) }[/math] and [math]\displaystyle{ c(\rho_R) }[/math]. If we then take the limit as [math]\displaystyle{ \epsilon \to 0 }[/math] we obtain an expansion fan emanating from [math]\displaystyle{ x=0 }[/math].
If we assume that
then we know that on the lines of the expansion fan (which all start at [math]\displaystyle{ x=0 }[/math]) we have [math]\displaystyle{ c(\rho) = x/t }[/math]. We can rearrange this and solve for [math]\displaystyle{ x }[/math] and obtain [math]\displaystyle{ \rho =\frac{ 1}{2} \rho_{\max} (1-x/v_0 t) }[/math]
The solution is then given by
This solution is known as an expansion fan.
We consider the case when [math]\displaystyle{ \rho_{\max} = v_0 = 1 }[/math] and where the initial density is given
by
The figures below show the initial density, the initial speed,
the characteristics and [math]\displaystyle{ \rho(x,t) }[/math] for this case.
[math]\displaystyle{ \rho }[/math] | [math]\displaystyle{ c }[/math] |
---|---|
characteristics | [math]\displaystyle{ \rho(x,t) }[/math] |
---|---|
Shocks
So far we have only considered the case when [math]\displaystyle{ c(x_0) }[/math] is monotonically increasing so that two characteristics never cross. We now consider the case when characteristics can meet. A movie of this case is shown below.
We can easily see that the first characteristics to meet will be neighbouring characteristics. Consider two characteristics with
Then these curves will meet at time [math]\displaystyle{ T }[/math] where
which implies that
Note the following
- If [math]\displaystyle{ c^{\prime}(x) \gt 0 }[/math] then no shock will form.
- The shock first forms at the minimum positive value of
[math]\displaystyle{ - \frac{1}{c^{\prime}(x)} }[/math] for [math]\displaystyle{ -\infty \lt x \lt \infty }[/math].
Shock Fitting
If we calculate the solution using our formula
then we find that the solution becomes multivalued in the case when a shock forms. We then have to fit a shock. One way to do this is by imposing the condition that equal areas are removed and added when we chose the position of the shock. This corresponds to the condition that the number of cars must be conserved
Speed of the shock
If we consider the case when there is a shock at [math]\displaystyle{ s(t) }[/math] with [math]\displaystyle{ \rho = \rho^{-} }[/math] at [math]\displaystyle{ x=s^{-} }[/math] and [math]\displaystyle{ \rho = \rho^{+} }[/math] at [math]\displaystyle{ x=s^{+} }[/math] (where [math]\displaystyle{ s^{-} }[/math] is just less than s(t) and [math]\displaystyle{ s^{+} }[/math] is just greater than s(t) ). If we substitute this into the governing integral equation we obtain
and hence
If we now take the limit as [math]\displaystyle{ x_1\to x_2 }[/math] we obtain
so that
Shock example
We consider the case when [math]\displaystyle{ \rho_{\max} = v_0 = 1 }[/math] and where the initial density is given by [math]\displaystyle{ \rho_0 = 1/2(1 + \tanh(x)) }[/math]. The figures below show the initial density, the initial speed, the characteristics and [math]\displaystyle{ \rho(x,t) }[/math] for this case.
[math]\displaystyle{ \rho }[/math] | [math]\displaystyle{ c }[/math] |
---|---|
characteristics | [math]\displaystyle{ \rho(x,t) }[/math] |
---|---|
Riemann problem
We now consider the Riemann problem
where [math]\displaystyle{ \rho_{L} \lt \rho_{R} }[/math]. In this case a shock forms immediately and the characteristics terminate at the shock. The shock moves with constant speed given by the equation for the motion of the shock (or can be found by the equal areas rule). We obtain
We consider the case when [math]\displaystyle{ \rho_{\max} = v_0 = 1 }[/math] and where the initial density is given by
The figures below show the initial density, the initial speed, the characteristics, and [math]\displaystyle{ \rho(x,t) }[/math] for this case.
[math]\displaystyle{ \rho }[/math] | [math]\displaystyle{ c }[/math] |
---|---|
characteristics | [math]\displaystyle{ \rho(x,t) }[/math] |
---|---|