20dAlem.mws

Partial Differential Equations PowerTool

by Dr. Jim Herod

Section 5.2: The Solution of d'Alembert

Maple Packages for Section 5.2

>    restart;

>    with(plots):

Warning, the name changecoords has been redefined

>    with(PDEtools):

>   

 The solution we obtained for the wave equation in the previous module is a natural extension of the development for solutions of the heat diffusion model. The mathematics is accurate, and the method is satisfactory in that the solutions obtained for the model meet with our expectations. There was no new mathematical insight, except that we can do the process again for this different equation.

Here is a different perspective.

In the 18th Century, Jean Le Rond d'Alembert had formulated a different way to come to a solution of the wave equation. Morris Kline in his book, Mathematical Thought from Ancient to Modern Times , reminds us that several mathematical concepts had to evolve with time. Kline says that d'Alembert accepted only analytic curves and solutions. He wanted functions that could be given with equations of relations, for example, between the elementary algebraic and trigonometric functions. A part of the undeveloped understanding was that an initial function need not be expressible by a single analytic expression. There was also the struggle for the concept of an infinite sum -- a series. It is easy to imagine the difficulty in

(1) having the idea of an infinite sum of functions,

(2) having a series of cosine functions to converge to, for example, the sine function, and

(3) having the series to converge to an analytic function on a finite interval, but not to the function off that interval.

     When a creative person is stuck on an idea, interesting things can happen. We present d'Alembert's solution here. If he could see what follows, d'Alembert might not admit that the presentation is the way he had thought of the solution. But, we should take advantage of the fact that we stand on the shoulders of giants!

Transforming Equations.

Suppose that u is a function which satisfies the equation

(*)           diff(u,`$`(t,2))-diff(u,`$`(x,2)) = 0 .

 Define v ( w , z ) as follows

>    v:=(w,z)->u((w-z)/2,(w+z)/2);

v := proc (w, z) options operator, arrow; u(1/2*w-1/2*z,1/2*w+1/2*z) end proc

That is, t  = ( w  - z )/2 , and x  = ( w  + z )/2, or, what is the same, w  = t  + x  and z  = x  - t .

>    solve({t=(w-z)/2,x=(z+w)/2},{w,z});

{w = t+x, z = x-t}

As we see, this v  will satisfy a different equation.

>    diff(v(w,z),w,z);

-1/4*D[1,1](u)(1/2*w-1/2*z,1/2*z+1/2*w)+1/4*D[2,2](u)(1/2*w-1/2*z,1/2*z+1/2*w)

We see that, because u satisfies (*),   v  defined as above satisfies

(**)                        diff(v,w,z) = 0 .

Conversely, suppose that v  satisfies this last equation (**) and   u  is defined by

                         u ( t  , x  )  =   v ( ( x + t )/2, ( x - t )/2 ).

>    v:='v';

v := 'v'

>    u:=(t,x)->v((x+t),(x-t));

u := proc (t, x) options operator, arrow; v(t+x,x-t) end proc

>    diff(u(t,x),x,x)-diff(u(t,x),t,t);

4*D[1,2](v)(t+x,x-t)

>   

Thus, u solves equation (*) because v satisfies (**). This observation enables us to provide a solution for the wave equation that can be made quite independent of the Fourier Idea.

     You see, Equation (**) says that the derivative with respect to z  of    diff(v,w)   is zero. We know all functions whose derivative is zero. They are constant. If taking the derivative with respect to z  gives zero, then    diff(v,w)   is constant in z . We say

             diff(v,w)   = C(w).

Now integrate this with respect to w  and you get some function of w , plus a constant -- a constant as far as w  is concerned. We write

               v ( w , z ) = psi ( w  ) + phi ( z  ).

To get this back in terms of t  and x , recall above that w  =( x  + t ) and z  = ( x  - t ). Thus,

           u ( t , x ) =   psi ( x  + t  ) + phi ( x  - t  ).

These are the solutions d'Alembert found. We pursue these ideas.

>   

Solutions for The Wave Equation.

     Take note that nothing has been said about initial conditions or boundary conditions for this wave equation. One might conceive these function as solutions of the wave equation for all t  > 0 and all x . We found that functions satisfying the wave equation had the form

            u ( t , x ) =   psi ( x  + t  ) + phi ( x  - t  ).

Furthermore, all functions defined in that form satisfy the equation.

We conceive of finding all solutions for the wave equation

                             diff(u(t,x),`$`(t,2)) = diff(u(t,x),`$`(x,2))

as the problem for finding the nullspace of a wave operator :

                            diff(u(t,x),`$`(t,2))-diff(u(t,x),`$`(x,2)) = 0 .

We define a wave operator in Maple. We test that functions of the special form satisfy the wave equation -- they are in the null space of the wave operator.

>   

>    u:=(t,x)->sin(exp(cos(x-t)));

u := proc (t, x) options operator, arrow; sin(exp(cos(x-t))) end proc

>    diff(u(t,x),t,t)-diff(u(t,x),x,x);

0

>   

     We have seen that if f  is any function depending on the combination x  + t  or x  - t , then  f  will lie in the nullspace of the wave operator.

>    f:=(t,x)->psi(x+t);
diff(f(t,x),t,t)-diff(f(t,x),x,x);
f:=(t,x)->phi(x-t);
diff(f(t,x),t,t)-diff(f(t,x),x,x);

f := proc (t, x) options operator, arrow; psi(t+x) end proc

0

f := proc (t, x) options operator, arrow; phi(x-t) end proc

0

>   

     Since the wave equation is linear, it is not a surprise that given any two twice differentiable functions of a single variable, the function

                        psi(x+t)+phi(x-t)

is also a solution. D'Alembert had the insight that not only is this combination a solution, it is the general solution. To understand this we need to think about how phi  and psi  could be determine for a specific case.

     This is the next subject for discussion.

Initial conditions for the wave equation.

     Suppose that we have an infinitely long string, with initial conditions of the usual form:

                              u(0,x) = f(x) ,    u[t](0,x) = g(x) .

Here, - infinity  < x  < infinity , so that we have no boundary conditions to impose. The question is: How do we find a solution of the form

                              u ( t , x )= psi(x+c*t)+phi(x-c*t)

which solves this problem?  The initial conditions are that

           f ( x ) = u (0, x ) = psi ( x ) + phi ( x )

and

           g ( x ) = u[t] (0, x ) = c   psi  '( x ) - c   phi  '( x ).

In the second equation, get an antiderivative:

          G( x ) + C  =   psi ( x ) - phi ( x ),  where C is the constant of integration and

         G( x ) = 1/C*int(g(y),y = 0 .. x)  .

Putting this value for psi ( x ) - phi ( x ) with the value for psi ( x ) + phi ( x ) , we have

      psi ( x ) = (f(x)+G(x)+C)/2    and phi ( x ) =   (f(x)-G(x)-C)/2   .

     

For example, if f  is a function with one bump near x  = 0 and there is no initial velocity, we can anticipate how this initial condition will evolve with increasing time: we should see the bump break into the superposition of two bumps of half the height, one moving to the right and one to the left.

     Take, for example, f(x) = exp(-x^2)  as the initial function. We construct a solution to the wave equation with this initial value and watch it evolve with time.

>    f:=x->exp(-x^2);
plot(f(x),x=-4..4);

f := proc (x) options operator, arrow; exp(-x^2) end proc

[Maple Plot]

>    animate((f(x+t)+f(x-t))/2,x=-4..4,t=0..10);

[Maple Plot]

     Sometimes it is instructive to view u  as a graph in t  and x , but not as an animation.

>    plot3d((f(x+t)+f(x-t))/2,x=-10..10,t=0..6,axes=NORMAL,
         orientation=[-120,65]);

[Maple Plot]

>   

     We now investigate a second example -- that f ( x ) = 0 and g(x) <> 0 ..  

We have seen that the solution for the wave equation with these initial conditions is

                                        u(t,x) = int(g(s),s = x-c*t .. x+c*t)/(2*c) .

     Here is an example. We take f(x) = 0  and g(x) = x/(1+x+x^2) . We make G.

>    g:=x->x/(1+x+x^2);

g := proc (x) options operator, arrow; x/(1+x+x^2) end proc

Now, we can define u .

>    u:=(t,x)->int(g(s),s=x-t..x+t);

u := proc (t, x) options operator, arrow; int(g(s),s = x-t .. t+x) end proc

Here is Maple's integration of this function.

>    u(t,x);

1/2*ln(1+t+x+t^2+2*t*x+x^2)-1/3*3^(1/2)*arctan(1/3*(1+2*t+2*x)*3^(1/2))-1/2*ln(1+x-t+x^2-2*t*x+t^2)-1/3*3^(1/2)*arctan(1/3*(-1-2*x+2*t)*3^(1/2))

The following animation will illustrate how the wave propagates with this initial velocity.

>    animate(u(t,x),x=-10..10,t=0..6);

[Maple Plot]

     Sometimes it is instructive to view u  as a graph in t  and x , but not as an animation.

>    plot3d(u(t,x),x=-10..10,t=0..6,axes=NORMAL,
         orientation=[-120,65], grid=[50,50],lightmodel=light1,style=patchnogrid);

[Maple Plot]

>   

Propagation of corners

One of the features of the heat equation, you will recall, is that the solution was infinitely differentiable for t > 0. This is not true for solutions of the wave equation. Consider the following. We take the initial velocity to be zero, so that g  = 0. We take the initial distribution of u  to have three sharp corners: at -1, 0, and 1. Watch how these corners distribute. First, the initial distribution is defined and graphed.

>    f:=x->(signum(x-1)-signum(x+1))/2*(abs(x)-1);

f := proc (x) options operator, arrow; 1/2*(signum(x-1)-signum(x+1))*(abs(x)-1) end proc

>    plot(f(x),x=-3..3);

[Maple Plot]

Now, we make the u , which by d'Alembert's method is a solution for the wave equation.

>    u:=(t,x)->f(t+x)+f(t-x);

u := proc (t, x) options operator, arrow; f(t+x)+f(t-x) end proc

We first see an animation and then the graph of u .

>    animate((f(x+t)+f(x-t))/2,x=-4..4,t=0..10);

[Maple Plot]

>    plot3d(u(t,x),x=-5..5,t=0..2,axes=NORMAL,numpoints=100^2,                orientation=[-20,35],color=yellow);

[Maple Plot]

>   

>   

>   

In this Section, we have set up what is the form for d'Alembert's solution for the one dimensional wave equation. The solution that we considered is for all number x  and for t  > 0. What needs to be considered next is how is this form modified if the domain of the initial functions is not the real line, but a half infinite interval, or a finite interval. In the next Section, we examine solutions of the wave equation on a half infinite line and on an interval of finite length.

Unassisted Maple

There are two items here. First, Maple could have done that change of variable to get the form for d'Alembert's solution with out any assistance. Watch. First define the PDE.

>    PDE:=diff(u(t,x),t,t)-diff(u(t,x),x,x)=0;

PDE := 2*(-signum(1,-x+t+1)+signum(1,-x+t-1))*abs(1,-x+t)+(-signum(-x+t+1)+signum(-x+t-1))*signum(1,-x+t) = 0

The list what transformation to make.

>    tr:={t=(w-z)/2, x=(w+z)/2};

tr := {t = 1/2*w-1/2*z, x = 1/2*z+1/2*w}

Now, let Maple make the transformation change.

>    dchange(tr,PDE);

2*(-signum(1,-z+1)+signum(1,-z-1))*abs(1,-z)+(signum(z-1)-signum(z+1))*signum(1,-z) = 0

This is precisely the change we got above. Now, we would be in a position to solve the PDE using only information about ordinary differential equations.

Here is the second item to note here. Above, we illustrated that an initial displacement f might occur over an interval of finite length. So might the function g  have a non-zero value on an interval of finite length. One inexperienced with Maple might think that the integral used to define u  might need to be defined piecewise. This is not the case. Maple can handle such integrals unassisted. Consider the following example.

>   

>   

>    g:=x->signum(x-1)-signum(x+1);

g := proc (x) options operator, arrow; signum(x-1)-signum(x+1) end proc

>    plot(g(x),x=-3..3);

[Maple Plot]

Now, we define u.

>    u:=(t,x)->int(g(s),s=x-t..x+t);

u := proc (t, x) options operator, arrow; int(g(s),s = x-t .. t+x) end proc

Here is Maple's integration of this function. Is it clear how to read this answer? We illustrate with a few values before drawing the graph.

>    u(t,x);

PIECEWISE([2, t+x <= -1],[-2*t-2*x, t+x < 1],[-2, 1 <= t+x])+PIECEWISE([-2, x-t <= -1],[2*x-2*t, x-t < 1],[2, 1 <= x-t])

>    u(1,2); u(2,2); u(2,3);

0

-2

0

The following animation will illustrate how the wave propagates with this initial velocity.

>    animate(u(t,x),x=-20..20,t=0..15);

[Maple Plot]

     Sometimes it is instructive to view u  as a graph in t  and x , but not as an animation.

>    plot3d(u(t,x),x=-10..10,t=0..6,axes=NORMAL,
         orientation=[-120,65]);

[Maple Plot]

>   

>   

>   

EMAIL: herod@math.gatech.edu   or   jherod@tds.net

URL: http://www.math.gatech.edu/~herod

Copyright ©  2003  by James V. Herod

All rights reserved