Several improvements to Euler’s Method exist: the backwards Euler method and the Runge-Kutta method (for Improved Euler method see BingJing Zheng’s post Improved Euler’s Method).
Backwards Euler Method with Example
Recalling that in Euler’s method, one approximates the point from the slope of the previous point . This yields the equation , where the function f represent the slope, or y'(t), and h is the step size. This proves rather inaccurate as the slope at the new point won’t be the same slope of the previous point. In backwards Euler, one considers the same scenario, but takes into account the line connected the two points. Instead of taking the slope at the previous point , one takes the slope at the new point . This yields the equation for the backwards Euler method.
Example: Given approximate y(1)
Find y at t = 0
Given: At t = 0, y = 1
Find y at t = 0.5
At t = 0.5,
At t = 0.5,
At t = 0.5,
At t = 0.5,
At t = 0.5,
Find y at t = 1
At t = 1,
At t = 1,
At t = 1,
At t = 1,
At t = 1,
Runge-Kutta Method with Example
Much like the Improved Euler method, one tries to find a better fit for the definite integral of a curve. One uses the idea that a parabola would cover the most area under a curve (compared to a rectangle or trapezoid of other methods). From this idea, one found equations for the following points:
where
Example: Given approximate y(1)
Find y at t = 0
Given: At t = 0, y = 1
Find y at t = 0.5
Find y at t = 1
Analysis
After answering the same question using both the backwards Euler method and Runge-Kutta method, one can see the accuracy of the results.
The exact solution for y(1) is 0.6321205588.
Using the Euler method, y(1) is approximately 0.375.
Using the backwards Euler method, y(1) is approximately 0.8333333333.
Using the Runge-Kutta method, y(1) is approximately 0.6328751629.
The backwards Euler method provides a better approximation than the Euler method, with a few more steps. The Runge-Kutta method provides the best approximation, but involves more calculation.