In
mathematics
Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
and
computational science
Computational science, also known as scientific computing or scientific computation (SC), is a field in mathematics that uses advanced computing capabilities to understand and solve complex problems. It is an area of science that spans many disc ...
, the Euler method (also called forward Euler method) is a first-order
numerical procedure for solving
ordinary differential equations (ODEs) with a given
initial value. It is the most basic
explicit method for
numerical integration of ordinary differential equations and is the simplest
Runge–Kutta method. The Euler method is named after
Leonhard Euler, who treated it in his book ''
Institutionum calculi integralis'' (published 1768–1870).
The Euler method is a first-order method, which means that the local error (error per step) is proportional to the square of the step size, and the global error (error at a given time) is proportional to the step size.
The Euler method often serves as the basis to construct more complex methods, e.g.,
predictor–corrector method.
Informal geometrical description
Consider the problem of calculating the shape of an unknown curve which starts at a given point and satisfies a given differential equation. Here, a differential equation can be thought of as a formula by which the
slope of the
tangent line to the curve can be computed at any point on the curve, once the position of that point has been calculated.
The idea is that while the curve is initially unknown, its starting point, which we denote by
is known (see the picture on top right). Then, from the differential equation, the slope to the curve at
can be computed, and so, the tangent line.
Take a small step along that tangent line up to a point
Along this small step, the slope does not change too much, so
will be close to the curve. If we pretend that
is still on the curve, the same reasoning as for the point
above can be used. After several steps, a
polygonal curve is computed. In general, this curve does not diverge too far from the original unknown curve, and the error between the two curves can be made small if the step size is small enough and the interval of computation is finite:
:
Choose a value
for the size of every step and set
. Now, one step of the Euler method from
to
is:
:
The value of
is an approximation of the solution to the ODE at time
:
. The Euler method is
explicit
Explicit refers to something that is specific, clear, or detailed. It can also mean:
* Explicit knowledge, knowledge that can be readily articulated, codified and transmitted to others
* Explicit (text) The explicit (from Latin ''explicitus est'', ...
, i.e. the solution
is an explicit function of
for
.
While the Euler method integrates a first-order ODE, any ODE of order
can be represented as a system of first-order ODEs:
to treat the equation
:
we introduce auxiliary variables
and obtain
the equivalent equation:
:
This is a first-order system in the variable
and can be handled by Euler's method or, in fact, by any other scheme for first-order systems.
Example
Given the initial value problem
:
we would like to use the Euler method to approximate
.
Using step size equal to 1 ()
The Euler method is
:
so first we must compute
. In this simple differential equation, the function
is defined by
. We have
:
By doing the above step, we have found the slope of the line that is tangent to the solution curve at the point
. Recall that the slope is defined as the change in
divided by the change in
, or
.
The next step is to multiply the above value by the step size
, which we take equal to one here:
:
Since the step size is the change in
, when we multiply the step size and the slope of the tangent, we get a change in
value. This value is then added to the initial
value to obtain the next value to be used for computations.
:
The above steps should be repeated to find
,
and
.
:
Due to the repetitive nature of this algorithm, it can be helpful to organize computations in a chart form, as seen below, to avoid making errors.
:
The conclusion of this computation is that
. The exact solution of the differential equation is
, so
. Although the approximation of the Euler method was not very precise in this specific case, particularly due to a large value step size
, its behaviour is qualitatively correct as the figure shows.
Using other step sizes
As suggested in the introduction, the Euler method is more accurate if the step size
is smaller. The table below shows the result with different step sizes. The top row corresponds to the example in the previous section, and the second row is illustrated in the figure.
:
The error recorded in the last column of the table is the difference between the exact solution at
and the Euler approximation. In the bottom of the table, the step size is half the step size in the previous row, and the error is also approximately half the error in the previous row. This suggests that the error is roughly proportional to the step size, at least for fairly small values of the step size. This is true in general, also for other equations; see the section
''Global truncation error'' for more details.
Other methods, such as the
midpoint method also illustrated in the figures, behave more favourably: the global error of the midpoint method is roughly proportional to the ''square'' of the step size. For this reason, the Euler method is said to be a first-order method, while the midpoint method is second order.
We can extrapolate from the above table that the step size needed to get an answer that is correct to three decimal places is approximately 0.00001, meaning that we need 400,000 steps. This large number of steps entails a high computational cost. For this reason, higher-order methods are employed such as
Runge–Kutta methods or
linear multistep methods, especially if a high accuracy is desired.
Derivation
The Euler method can be derived in a number of ways. Firstly, there is the geometrical description above.
Another possibility is to consider the
Taylor expansion of the function
around
:
:
The differential equation states that
. If this is substituted in the Taylor expansion and the quadratic and higher-order terms are ignored, the Euler method arises. The Taylor expansion is used below to analyze the error committed by the Euler method, and it can be extended to produce
Runge–Kutta methods.
A closely related derivation is to substitute the forward
finite difference formula for the derivative,
:
in the differential equation
. Again, this yields the Euler method. A similar computation leads to the
midpoint method and the
backward Euler method.
Finally, one can integrate the differential equation from
to
and apply the
fundamental theorem of calculus to get:
:
Now approximate the integral by the left-hand
rectangle method
In mathematics, a Riemann sum is a certain kind of approximation of an integral by a finite sum. It is named after nineteenth century German mathematician Bernhard Riemann. One very common application is approximating the area of functions or lin ...
(with only one rectangle):
:
Combining both equations, one finds again the Euler method. This line of thought can be continued to arrive at various
linear multistep methods.
Local truncation error
The
local truncation error of the Euler method is the error made in a single step. It is the difference between the numerical solution after one step,
, and the exact solution at time
. The numerical solution is given by
:
For the exact solution, we use the Taylor expansion mentioned in the section
''Derivation'' above:
:
The local truncation error (LTE) introduced by the Euler method is given by the difference between these equations:
:
This result is valid if
has a bounded third derivative.
This shows that for small
, the local truncation error is approximately proportional to
. This makes the Euler method less accurate (for small
) than other higher-order techniques such as
Runge-Kutta methods and
linear multistep methods, for which the local truncation error is proportional to a higher power of the step size.
A slightly different formulation for the local truncation error can be obtained by using the Lagrange form for the remainder term in
Taylor's theorem
In calculus, Taylor's theorem gives an approximation of a ''k''-times differentiable function around a given point by a polynomial of degree ''k'', called the ''k''th-order Taylor polynomial. For a smooth function, the Taylor polynomial is the t ...
. If
has a continuous second derivative, then there exists a