Dr. Scott A. Sarra , October 17, 2002
Method of Characteristics Applet
audience: Undergraduate students in a partial differential equations class, undergraduate (or graduate) students in mathematics or other sciences desiring a brief and graphical introduction to the solutions of nonlinear hyperbolic conservation laws or to the method of characteristics for first order hyperbolic partial differential equations.
abstract: This web article and accompanying applet introduces the method of characteristics for solving first order partial differential equations (PDEs). First, the method of characteristics is used to solve first order linear PDEs. Next, the method of characteristics is applied to a first order nonlinear problem, an example of a conservation law. It is discussed why the method may breakdown for nonlinear problems. Difficulties that appear in the nonlinear case, but are absent in the linear case, are examined and the mathematical resolutions of these problems are introduced. Concepts dealing with the solutions of nonlinear hyperbolic conservation laws are introduced and explored graphically. However, the detailed explanation of such concepts may take up entire text books, and the concepts are not explored in detail or with rigor in this short paper. References to more detailed material is given.
* This article and applet appear in the Journal of Online Mathematics and its Applications (JOMA), Volume 3, February 2003.
The method of characteristics is a method which can be used to solve the initial value problem (IVP) for general first order (only contain first order partial derivatives) PDEs. Consider the first order linear PDE
in two variables along with the initial condition . The goal of the method of characteristics, when applied to this equation, is to change coordinates from (x,t) to a new coordinate system in which the PDE becomes an ordinary differential equation (ODE) along certain curves in the x-t plane. Such curves, , along which the solution of the PDE reduces to an ODE, are called the characteristic curves or just the characteristics. The new variable s will vary, and the new variable will be constant along the characteristics. The variable will change along the initial curve in the x-t plane (along the line t=0). How do we find the characteristic curves? Notice that if we choose (2a) and (2b) then we have
and along the characteristic curves, the PDE becomes the ODE
Equations (2a) and (2b) will be referred to as the characteristic equations.
The general strategy for applying the method of characteristics to a PDE of the form (1) is: (step 1) Solve the two characteristic equations, (2a) and (2b). Find the constants of integration by setting (these will be points along the t=0 axis in the x-t plane) and t(0)=0. We now have the transformation from to , and . (step 2) Solve the ODE (3) with initial condition , where are the initial points on the characteristic curves along the t=0 axis in the x-t plane. (step 3) We now have a solution . Solve for s and in terms of x and t (using the results of step 1) and substitute these values in to get the solution to the original PDE as .
We will examine the method of characteristics for three different PDEs: the constant coefficient advection equation, the variable coefficient advection equation, and inviscid Burgers' equation. For all three examples, the initial conditions are specified as . The examples take a slightly simpler form than the general equation (1). All three examples have b(x,t)=1 and c(x,t)=0. In this case characteristic equation (2b) becomes . The solution is t=s + k. Using the initial condition t(0)=0, we determine that the constant is k=0, and we have that s=t. In this special case with b(x,t)=1, we only have one characteristic equation to solve. Before proceeding to the examples, let us restate the general strategy in terms of this special case that we are considering in the examples.
(step1) Solve the characteristic equation (2a), , with the initial condition . (step 2) Solve the ODE (3), which in this case simplifies to , with initial condition (step 3) We now have a solution . Solve for in terms of x and t (using the results of step 1) and substitute for in to get the solution to the original PDE as .
Our first example, the advection equation, is the PDE (4) where a is a real constant. The constant a is referred to as the wave speed or velocity of propagation. This is the rate at which the solution will propagate along the characteristics. The velocity is constant, so all points on the solution profile will move at the same speed a.
Now we apply the method of characteristics outlined in the 3 steps in the previous section. (step 1) The characteristic equation (2a) to solve is with the initial condition . The solution gives the characteristic curves, where is the point where each curve intersects the x-axis in the x-t plane. (step 2) Solve equation (3), with initial condition . The solution is . (step 3). The characteristic curves are determined by, , so , and the solution of the PDE is .
To verify that does indeed remain constant along the characteristics, we differentiate along one of these curves to find the rate of change of u along the characteristic:
So we find that the rate of change is zero, verifying that u is constant along the curve.
By writing the characteristic curves as it is easy to see that in the x-t plane, the characteristics are parallel lines with slope 1/a. The slope of the characteristics depends only on the constant a. Experiment in the applet with different values (a is changed through the dialog box which is displayed when the parameters button is pressed) of the wave speed, a. Set to observe the solution profile moving in the opposite direction and observe the negative slope of the characteristics.
The variable coefficient advection equation is (5) where for this example we have taken . The wave speed depends on the spatial coordinate, x. Thus, the speed of a point on the solution profile will depend on the horizontal coordinate, x, of the point.
(step 1) The characteristic equation (2a) to solve is with the initial condition . Solving it gives the characteristic curves . (step 2) Solve equation (3), with initial condition . The solution is . (step 3) The characteristic curves are determined by , so and the solution of the PDE in the original variables is .
View the variable coefficient advection equation simulation in the applet. Notice that the characteristics are not straight lines. Also observe that the characteristics do not intersect.
A very important class of partial differential equations is that of conservations laws. As their name indicates, they include those equations that model the conservation laws of physics: mass, momentum, energy, etc. A scalar conservation law in one space dimension takes the form
where F(u) is a flux function. In general, conservation laws are nonlinear. For a derivation of the conservation law (6), the interested reader may consult [2, p. 31] or [3 p. 75]. We will use the method of characteristics to examine a one dimensional scalar conservation law, inviscid Burgers' equation, which takes the form of a nonlinear first order PDE. Inviscid Burgers' equation will have .
The inviscid Burgers' equation is or equivalently . The wave speed depends on the solution, . Thus, the speed of a point on the solution profile will depend on the vertical coordinate, u, of the point. Inviscid Burgers' equation is not of the form of the linear first order PDE (1), as it is nonlinear, so our earlier analysis do not apply directly. However, from our experience with the constant (4) and variable coefficient (5) advection equations, we are led to set the characteristic equation to be . If x(t) is a solution of this equation, then u[x(t),t] is the restriction of u to this curve. Also, along this curve,
Thus, this solution u[x(t),t] will not change with time along the curve, so it is a characteristic curve. If we know the initial condition , we can find the characteristic curve by substituting this value into the characteristic equation . The right hand side of the equation is constant, indicating that the characteristic curves will be straight lines, as in the constant coefficient advection equation case. The characteristic curve will be . The solution of the initial value problem can be written as . The solution is given implicitly and in all but the simplest cases, it will be impossible to determine the solution explicitly. The characteristics are straight lines, but the lines do not all have the same slope. It will be possible for the characteristics to intersect. If we write the characteristics as , we see that in the x-t plane that they are lines with slope . The slope of the characteristics depends on the point and on the initial data.
Unlike the first two examples, it is possible for the characteristics to intersect. If the initial data is smooth, then the method of characteristics can be used to determine the solution for small enough t such that the characteristics do not intersect. For larger t, after characteristics have interested, the PDE will fail to have a classical solution (a classical solution is a single valued solution or a function), as the information obtained by following the characteristics will produce a multivalued solution, or possibly, no solution at all. To overcome this lack of existence of a classical solution, we must introduce a broader notion of a solution, a weak solution. Roughly speaking, a weak solution may contain discontinuities, may not be differentiable, and will require less smoothness to be considered a solution than a classical solution. Working with the weak solution of a PDE usually requires that the PDE be reformulated in an integral form. If a classical solution to the problem exists, it will also satisfy the definition of a weak solution.
If the characteristics on both sides of a discontinuity of a piecewise continuous weak solution impinge on the discontinuity curve in the direction of increasing t, the weak solution is called a shock. For inviscid Burgers' equation, the time at which the characteristics cross and a shock forms, the "breaking" time, can be determined exactly as, [1, p. 25]. The formula can be used if the equation has smooth initial data (so that it is differentiable). From the formula for , we can see that the solution will break and a shock will form if is negative at some point. The discontinuous weak solution, in this case a shock wave, will travel at a speed given by the Rankine-Hugoniot condition. (see [1, p. 31] and [2, p. 46]). For inviscid Burgers' equation the shock speed, s, is given by where is the value of u on the left side of a discontinuity and is the value of u on the right side of the discontinuity. In addition to characteristics crossing and a shock forming, another possible way the method of characteristics can break down, and a discontinuity can form, is if the characteristics on both sides of the discontinuity emanate from it, rather than go into it. Then the discontinuity is called a rarefaction wave. (see applet simulation and rarefaction example below)
By expanding our class of solutions to include weak solutions, we no longer have uniqueness of the solution of the initial value problem. Additional criteria must be used to pick out the physically correct weak solution. The selection criteria for physically meaningful discontinuous weak solutions is called an entropy condition. A different method to pick out the physically correct weak solution, but one that picks of the same physically correct weak solution as the entropy condition does, is a vanishing viscosity approach. For inviscid Burgers' equation, this would amount to finding solutions to Burgers' equation, , in the limit as . A graphical technique for constructing weak solutions for problems with shocks is the equal area rule ([4, p. 42] and [1, p. 34]). The application of the equal area rule starts with the multivalued solution constructed by using the method of characteristics and then eliminates the multivalued parts by inserting shocks in a way that eliminates the multivalued solution but keeps the area under the curve the same. The equal area rule is a result of conservation. The integral of the discontinuous weak solution must be the same as the integral of the multivalued solution.
The red area is subtracted from the multivalued solution and the blue area is added. The sum of the blue and unshaded areas then makes up the weak solution. In the applet, observe in the shock problems for inviscid Burgers' equation how the plotted weak solutions appear to be applying this equal area rule to the multivalued solutions produced by the method of characteristics.
For inviscid Burgers' equation with piecewise constant initial data, we are able to find a formula for the weak solution. For more complicated initial data this will most likely not be the case. Asymptotic formulas (accurate in the limit as , see reference ) for the weak solutions to the problems may exist, but are of little use computationally. Thus, numerical methods that are capable of producing good approximations to the exact entropy satisfying weak solution are important. In general, numerical methods for nonlinear hyperbolic conservation laws are more complicated and difficult to develop than numerical methods for elliptic and parabolic PDEs. For the inviscid Burgers' problem with the sine wave, N-wave, and single hump initial data, the applet uses a numerical method to approximate the exact entropy satisfying weak solution. The method in a second order nonoscillatory finite difference method called Roe's method which employs the used of a flux limiter (the Superbee limiter is used) to suppress numerical oscillations. When using the simulations in the applet that calculate the weak solutions by the numerical method, the ratio must be kept below a certain threshold, or the method will become unstable and the numerical approximation will blow up. The interested reader should consult references  and  for details.
The following initial conditions for inviscid Burgers' equation are coded in the applet. The first two problems are Riemann problems, i.e., they have piecewise constant initial data consisting of one discontinuity.
This problem has an initial condition . The characteristics intersect and a shock forms immediately for t>0. The exact entropy satisfy weak solution is where the shock speed is given by . The exact weak solution is plotted in the applet. This problem is discussed in detail in references [1 p. 28], and [3, p. 82].
The initial condition produces characteristics (see image below and the applet also) such that there is no characteristic information available in some regions of the x-t plane.
A entropy violating weak solution is , where s is the same as the Riemann shock problem above. This solution corresponds to filling in the missing characteristic information as shown in red below.
For this problem, it can be shown that infinitely many weak solution exists [1, p. 30].
A entropy satisfying weak solution is . This solution corresponds to filling in the missing characteristic information as shown in red in the image below.
This problem is discussed in detail in references [1 p. 28], and [3, p. 82].
The initial condition is . Notice that has a minimum value of . Thus, the breaking time will be (approximately t=0.16) . This problem is discussed in detail in reference [3, p. 77]. The weak solution is computed by using Roe's method.
The initial condition is . The solution consists of both a left and right moving shock. The weak solution is computed by using Roe's method. This problem is discussed in detail in reference [4, p. 48] and in [1, p. 32]
The initial condition is . The solutions consist of one right moving shock. The weak solution is computed by using Roe's method. This problem is discussed in detail in reference [4, p. 46]
Use of the applet require the Java 1.4 browser plug-in. If you do not have it installed on your computer, the script on the web page should direct you to the site where you can freely get the plug-in and install it. If you do not have the plug-in, and the script does not direct you to the plug-in, follow this link.
The applet provides two views. The window on the left shows the initial condition advancing in time, while the window on the right shows the data advancing along the characteristics in the x-t plane.
Select one of the three example from the equations menu: the advection equation, the variable coefficient advection equation, or inviscid Burgers' equation. The inviscid Burgers' equation option has five submenus corresponding to five different initial conditions. Press the go button to start the animation, the stop button to stop the animation, and the reset button to return to the initial conditions. For inviscid Burgers' equation, the applet can plot the weak solution (as a solid black curve) to the problem. This option may be turned on by checking it on the options menu.
Pressing the parameters button pops up a dialog which allows five parameters to be changed by the user: