Numerical Solutions of Differential Equations Taylor Methods Euler’s Method We have previously seen Euler’s Method for estimating the solution of a differential equation. That is to say given the derivative as a function of x and y (i.e. f(x,y)) and an initial value y(x0)=y0 and a terminal value xn we can generate an estimate for the corresponding yn. They are related in the following way: xk 1 xk x ( xk 1 , yk 1 ) yk 1 yk f ( xk , yk ) x The value x = (xn-x0)/n and the accuracy increases with n. Taylor Method of Order 1 Euler’s Method is one of a family of methods for solving differential equations developed by Taylor. We would call this a Taylor Method of order 1. The 1 refers to the fact that this method used the first derivative to generate the next estimate. In terms of geometry it says you are moving along a line (i.e. the tangent line) to get from one estimate to the next. Taylor Method of Order 2 In this method instead of moving from point to point along a line we move from point to point along a parabola. Not just any parabola but the parabola that most closely approximates the function y we are interested in. In intermediate calculus we discussed Taylor’s Theorem. This explained how to get a polynomial of varying degrees that would estimate any function at a point a. In particular a second degree polynomial (i.e. it graph is a parabola). How you do this estimate is given below. y( x) y(a) y' (a)( x a) y ( x) y (a) dy dx ( x a) y ''( a ) 2 2 d y 1 2 dx2 ( x a) ( x a) 2 2 In order to be able to apply this we need to be able to resolve 2 questions: 1) How is the second or higher derivative found? 2) How is accuracy improved by increasing the number of subintervals? Computing Higher Order Derivatives The problem we are trying to solve we are given the first derivative expressed as a function of x and y. How can we get the second, third or any higher derivative from this piece of information? We use a concept from multivariable calculus and a tool called partial derivatives. The Problem: Given : dy f ( x, y ) dx dy dx 2 find d y dx 2 To the right is a tree that shows how the variables depend on each other. Remember y is a function of x (i.e. y is the dependent variable x is the independent variable). The delta symbol indicates a partial derivative which means treat the indicated variable as the variable and all other variables as a constant. x y x d 2 y d dy f f dy 2 dx dx dx x y dx Example: Find the second derivative if the first derivative is given to the right. dy x2 y dx Set f(x,y) = x2y and plug it into the formula below. d 2 y f f dy 2 dx x y dx Here we notice that: x y 2 xy x 2 2 xy x 4 y 2 f 2 xy and x f x2 y Notice you get a function of x and y again! Higher Derivatives Third, fourth, fifth, … etc derivatives can be computed with the same method. This has a recursive definition given to the right. d n1 y d n y d n y dy n 1 n n dx x dx y dx dx Subintervals If we wish to apply Taylor’s Method to the general differential equation given to the right on only one subinterval we simply plug into the formula the following values: x0 = a y0 = f(x0) x1 = x dy f ( x, y ) dx y ( x0 ) y0 y y (a) y ' (a)( x a) 12 y ' ' (a)( x a) 2 y1 y0 dy dx x x0 y y0 ( x1 x0 ) 2 1 d y 2 dx 2 x x0 y y0 y1 y0 f ( x0 , y0 )( x1 x0 ) 12 ( x1 x0 ) 2 f ( x0 , y0 ) x f ( x0y, y0 ) f ( x0 , y0 ) ( x1 x0 ) 2 Applying this to a subinterval with n parts to the partition this formula becomes: xk 1 xk x ( xk 1 , yk 1 ) 1 yk 1 yk dy x xk ( x ) 2 dx y yk Where: d2y dx 2 2 ( x ) x xk y yk x xn x0 n Example: Apply the second order Taylor Method to estimate the solution to the differential equation to the right at x = 2 using 4 partitions. dy dx x2 y y(0) 1 The recursive formula becomes: 1 x x k 2 k 1 ( xk 1 , yk 1 ) 2 4 1 1 1 2 yk 1 yk xk yk 2 2 2 xk yk xk yk 2 ( x0 , y0 ) (0,1) ( x1 , y1 ) (.5,1) ( x2 , y2 ) (1,1.25781) ( x3 , y3 ) (1.5,2.3584) ( x4 , y4 ) (2,7.38842) The estimate we have found for this value is 7.38842 Higher Order Taylor Methods Taylor’s Method can be extended to any order Taylor approximation by the following recursive definition. This is the definition of a Taylor method of order n. xk 1 xk x ( xk 1 , yk 1 ) 1 yk 1 yk dy x x x dx 2 k y yk d2y dx 2 x xk y yk x 2 n 1 d y n! dx n x xk y yk Algorithm for Taylor’s Method f(x,y) (* expression for x and y *) x0 (* initial value for x *) y0 (* initial value for y *) xn (* terminal value for x *) n (* number of partitions of the interval *) deltax = (xn-x0)/n xi = x0 xprev = xi yi = y0 for(i=1, in, i++, xi = xi + deltax yi = yi + f(xprev,yi)*deltax+…+(1/(n!))(y(n)(xprev,yi)*deltax) xprev=xi Return yi x n