IVP Euler
IVP Euler
t [a, b],
y(a) =
(IVP)
This initial value problem is one of the fundamental problems in scientic computation. Many problems are naturally stated in this form, and many more can be transformed thus if we are willing to view y as a vector-valued function y : [a, b] Rn . We have analytic techniques for solving (IVP) in only the simplest cases (e.g. separable rst order or linear with constant coecients, etc.), so approximation techniques are tremendously important. We will look here at time-stepping methods which, by there very nature, do not even attempt to approximate a solution function y. Instead these methods attempt to compute some points lying close to the graph of y. If a functional form of y is needed, some approximation technique (e.g. Hermite spline interpolation) can be used. Let D be the vertical strip [a, b] R. If f C 0 (D) and Lipschitz continuous in y on D, then (IVP) has a unique solution which depends continuously on f and . The fundamental time-stepping method for (IVP) is Eulers method. It is based on the idea that f (t, y) gives the slope of the tangent line to y at the point (t, y). Then if we step forward along the tangent line h time units, we arrive at the point (t + h, y(t) + hf (t, y)), which should be close to the point (t + h, y(t + h)). An analytic derivation comes from substituting (IVP) into Taylors theorem: y(t + h) = y(t) + hy (t) + h2 y ()/2 = y(t) + hf (t, y) + O(h2 ) This process is repeated as t goes from a to b in steps of length h, where wj y(a + jh): w0 = ; t = a; h = (b a)/N For j = 0, 1, . . . , N 1 wj+1 = wj + hf (t, wj ) t=t+h End (For j) The truncation errors present in the above algorithm grow from the O(h2 ) Taylor approximation, but when we implement the algorithm in oating point we have rounding errors too. The following theorem incorporates both types of error. Let |j | model the rounding errors as u0 = + 0 , and uj+1 = uj + hf (a + jh, uj ) + j+1 ,
let L be the Lipschitz constant for f in y on D (| f | L on D (if it exists)), and y |y (t) M | on [a, b]. Then with tj = a + jh |y(tj ) uj | 1 L hM + 2 h eL(tj a) 1 + |0 |eL(tj a) .