> restart;
Asymptotic Expansion of the Roots of and the Solution to a Boundary Value Problem
Prepared by Douglas B. Meade
25 September 1998
>
Quadratic Equation
Root #1: x=O( 1 )
Iterations:
> G := x -> sort( expand( (-epsilon*x^2-1)/3 ) );
Initial approximation:
> x0 := -1/3;
Successive approximations: note that each iteration doubles the number of terms in the approximation but only one additional term converges to its final value.
> for k from 0 to 5 do
> x.(k+1) := G(x.k);
> od;
>
Root #2: x=O( 1/ )
Iterations:
> H := x -> normal( (-1/x - 3 )/epsilon );
> x.0 := -3/epsilon;
> for k from 0 to 5 do
> x.(k+1) := H(x.k);
> series( x.(k+1), epsilon, k+2 ); # these show how the iterates converge
> od;
>
Boundary Value Problem
The differential equation and boundary conditions are defined as follows:
> ODE := epsilon*diff(x(t),t$2) + 3*diff(x(t),t) + x(t) = 0;
> BC1 := x(0)=0;
> BC2 := x(1)=1;
>
Exact Solution
> SOLN := dsolve( { ODE, BC1, BC2 }, x(t) );
>
Graphical Solution
3D plot (note that Maple is able to handle epsilon=0 in a reasonable way
> plot3d( rhs(SOLN), t=0..1, epsilon=0..0.1 );
>
2D plots for selected values of epsilon. Note the rapid initial growth that occurs as -> 0; the solution is nearly linear closer to 1.
> plot( [ seq( eval( rhs(SOLN), epsilon=e ), e=[0.001,0.01,0.1,1] )], t=0..1 );
>