Eigen Function Expansion and Applications.

[Pages:6]Eigen Function Expansion and Applications.

In this worksheet we will use the eigenfunction expansion to solve nonhomogeneous equation.

a/ The theory. b/ Example1: Solving the Euler equation in two ways. c/ Example2: non uniqueness of solution.

The idea is simple:

a/ The theory: Let L be a regular Sturm-Liouville operator on an interval (a, b) together with regular boundary conditions. That is, (note the minus sign in front of the 2nd derivative)

L( u ) = - x p( x ) x u + q( x ) u Let f be a function in L2(a, b). We consider the problem

Lu = f

We denote by n, ( n, x ) the eigenvalues and corresponding normalized eigenfunctions of L.

L( ( n, x ) ) = n ( n, x )

(1)

We know that { ( n, x ) } makes a complete orthonormal set in L2(a, b). We write f as

f( x ) = fn ( n, x )

(2)

n=1

where fn is the fourier coefficients of f with respect to the base { ( n, x ) }.

Let's assume that the solution u of the nonhomogeneous equation can be expressed as

u( x ) = un ( n, x )

(5)

n=1

We want to compare the coefficients un in (5) with those fn in (2).

Formally, we apply the operator L to the infinite sum (5) to compute L( u ).

Lu(

x

)

=

Ln

=

1

un

(

n,

x

)

=

n

=

1

un

L(

(

n,

x

)

)

=

n

=

1

un

n

(

n,

x

)

Using (1) and the equation (3) we have

Page 1

un n ( n, x ) = fn ( n, x )

n=1

n=1

We then equalize the coefficients of

( n, x ) on both sides and find

un =

fn n

.

Using

this

in

(5)

we

have

(see the note that follows)

u( x ) =

fn ( n, x )

n=1

n

(6)

Important: If n = 0 for some n, that is if 0 is an eigenvalue for L then the above makes no sense

(dividing by 0) unless fn = 0 accordingly. We can see this from the relation un n = fn . Thus, we must

have

fn

=

b

f(

x

)

(

n,

x

)

dx

=

0.

In

other

words,

a

The right hand side f must be orthogonal to all eigenfunctions which correspond to the 0

eigenvalue, in order the equation Lu = f has a solution.

Moreover, if this is the case then the corresponding un can be arbitrary constant. This also says that the problem Lu = f does not have an unique solution.

In fact, let us denote the eigenfunctions corresponding to the zero eigenvalue by ( 1, x ),..., ( m, x ) and the eigenfunctions corresponding to the nonzero eigenvalues by ( 1, x ),...,( n, x ),... Then the solution to Lu = f is not unique and given by

u(

x

)

=

i

m = 1

Ci

(

i,

x

)

+

n

=

1

fn

( n, n

x

)

where the constants { Ci } are arbitrary.

EXAMPLE 1: Consider the Euler operator with Neumann conditions [Sturm-Liouville type for p( x ) = 1 , q( x ) = 0, w( x ) = 1] over the interval I = { x | 0 < x < b }. The boundary conditions are type 2 at both end points.

Euler differential operator

Boundary conditions

2 L( y ) = x x y( x )

yx( 0 ) = 0 and yx( b ) = 0 a/ Can we find the Green function following the formula? b/ Find the expansion of the Green function in terms of the eigenfunctions (see (7).

Page 2

c/ What is the condition should be imposed on f such that the equation L( u ) = f has a solution?

d/ Let b=1, and f( x ) = x -

1 2

sin(

x

).

Solve

Lu

=

f

using the undetermined constant

method and the series method.

Compare by graphing.

f/ let b = 1 and f be the piecewisedefined function

-1 1

1 - x 0 and x - 0

2 1

- x 0 and x - 1 0 2

Solve the problem L( u ) = f using eigenfunction series (6). Compare the results by graphing.

Solution:

a/ Green function: To compute the Green function according to the text, we have to find two

fundamental solutions u1,u2 of Lu = 0 which satisfy the BC at the ends respectively. Since the general

solution of Lu = 0 is

> restart:u:=x->C1 + C2*x;

u := x C1 + C2 x We determine u1 and u2 by finding the constants to match the BC. At x = 0, we have > subs(x=0,diff(u(x),x)=0);

So we can take u1( x ) = 1. At x = b we have > subs(x=b,diff(u(x),x)=0);

C2 = 0

C2 = 0 Again, u2 must be a constant. However, u1,u2 cannot make two linear independent solutions. Hence, the formula for the Green function cannot be applied here! b/ Eigenfunction expansion for G: We need to determine the eigenvalues and eigenfunctions of the Euler differential operator with Neumann BC. As an exercise, you should check that:

1

0 = 0 is an eigenvalue with the normalized eigenfunction ( 0, x ) =

. b

In fact, this causes the nonexistence of two linear independent solutions.

The other eigenvalues and corresponding normalized eigenfunctions are > lambda[n]:=n^2*Pi^2/b^2;

n2 2 n := b2 > phi:=(n,x)->sqrt(2/b)*cos(n*Pi*x/b);

:= ( n, x )

2

1 b

cos n

x b

Thus the partial eigen-expansion for G is given by (excluding the first eigenfunction ( 0, x ))

> G_Pseries:=(m,x,z)->sum(phi(n,x)*phi(n,z)/lambda[n],n=1..m);

m ( n, x ) ( n, z )

G_Pseries := ( m, x, z )

n=1

n

Page 3

Let's take m = 2 and plot the graph of this partial sum. > b:=1:eval(G_Pseries(2,x,z));

cos( x ) cos( z ) 1 cos( 2 x ) cos( 2 z )

2

2

+ 2

2

> plot3d(G_Pseries(20,x,z),x=0..1,z=0..1);

c/ Solvability condition: Since the 0 is an eigenvalue, in order to the problem Lu = f has a solution

1 we must have that f is orthogonal to the eigenfunction ( 0, x ) = to this eigenvalue 0. That is,

b > Int(f(x)*1/sqrt(b),x=0..b)=0;

1

f( x ) dx = 0

0

d/ Solve the equation by undetermined constant method: The right hand side f( x ) = x -

1 2

sin(

x

).

We check the solvability condition

> f:=x->(x-1/2)*sin(Pi*x); eval(int(f(x),x=0..1));

f := x

x -

1 2

sin(

x

)

0 We looking for a particular solution of the form: up( x ) = ( A x + B ) sin( x ) + ( C x + D ) cos( x ) where A, B are constants to be determined. > up:=x->(A1*x+B1)*sin(Pi*x)+(C1*x+D1)*cos(Pi*x);

Page 4

up := x ( A1 x + B1 ) sin( x ) + ( C1 x + D1 ) cos( x ) Substitute this into the equation Lu = f, we have > diff(up(x),x,x) = (x-1/2)*sin(Pi*x);

collect(%,[sin(Pi*x),cos(Pi*x)]);

2 A1 cos( x ) - ( A1 x + B1 ) sin( x ) 2 - 2 C1 sin( x ) - ( C1 x + D1 ) cos( x ) 2 =

x

-

1 2

sin(

x

)

( - ( A1 x +

B1 ) 2 -

2 C1 ) sin( x ) +

( 2 A1 -

( C1 x +

D1 ) 2 ) cos( x ) = x -

1 2

sin(

x

)

Compare the coefficients, we infer that

> A1:=-1/Pi^2; B1:=1/(2*Pi^2); C1:=0; D1:=-2/Pi^3;

1 A1 := - 2

11 B1 := 2 2

C1 := 0

1 D1 := - 2 3 > diff(up(x),x,x)=f(x); #check against the equation

- -

x 2 +

1 2

1 2

sin( x )

2

=

x

-

1 2

sin(

x

)

So, a particular solution is ( A1 x + B1 ) sin( x ) + D1 cos( x ) and the general solution is then given

by

> u:=x->C3 + C2*x + up(x);

u := x C3 + C2 x + up( x ) We need to find the constants to match the BC. > subs(x=0,diff(u(x),x))=0; subs(x=1,diff(u(x),x))=0;

sin( 0 ) 1 cos( 0 )

C2 +

2

+ 2

= 0

sin( ) 1 cos( )

C2 +

2

- 2

=0

1 Thus, the solution is (C2 = - and C1 is arbitrary).

2 > u:=x->-1/(2*Pi)*x + up(x);

1x u := x - 2 + up( x ) > F[n]:=int(f(x)*phi(n,x),x=0..1);

Page 5

1 2 ( - 4 sin( n ) n - cos( n ) + cos( n ) n2 + - n2 )

Fn := - 2

2 ( 1 + n )2 ( - 1 + n )2

> F[1]:=int(f(x)*phi(1,x),x=0..1);

12 F1 := - 4

Fn Then the "Fourier" coefficients for u is given by

n > U[n]:= -F[n]/lambda[n]; U[1]:= -F[1]/subs(n=1,lambda[n]);

1 2 ( - 4 sin( n ) n - cos( n ) + cos( n ) n2 + - n2 )

Un := 2

4 ( 1 + n )2 ( - 1 + n )2 n2

12 U1 := 4 3 Thus, the (partial) "Fourier" series for u is > uP_series:=(m,x)-> U[1]*phi(1,x) + sum(U[n]*phi(n,x),n=2..m);

uP_series := ( m, x )

U1 ( 1, x ) +

n

m =

2

Un

(

n,

x

)

> eval(uP_series(3,x));

1 cos( x ) 1 cos( 3 x )

2

3

- 36

3

Finally, we plot the result given by the integral and the partial sum above in the same graph for a comparison. It can be seen that, even with one term (m = 1), the partial sum approximates well the solution. > plot([u(x),uP_series(3,x)],x=0..1,color=[red,blue],title="Green_so

l: RED, Partial Sum: BLUE");

Page 6

One can see that the two graphs are away from each other by a constant distance. This tells us that u( x ) and the solution given by the series are different by just a constant. This is in accordance with what we know in the case the homogeneous problem has nonzero solution so that the nonhomogeneous equation exhibits nonuniqueness. f/ Define new f: > f:=x->PIECEWISE([-1, -x uP_series:=(m,x)-> sum(U[n]*phi(n,x),n=1..m);

m

uP_series := ( m, x ) Un ( n, x )

n=1

Let's compute few terms of this series

> eval(uP_series(3,x));

cos( x ) 4 cos( 3 x )

4

3

- 27

3

We plot the series with 50 (!) terms

> plot(uP_series(50,x),x=0..1);

To check against the equation we can plot the 2nd derivative of the partial series and the function f( x ). We can see that they are pretty close! > plot([diff(uP_series(50,x),x,x),f(x)],x=0..1,color=[red,blue],titl

e="2nd derivative: RED, f(x): BLUE",discont=true);

Page 8

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download