In
numerical analysis
Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of numerical methods th ...
, predictor–corrector methods belong to a class of
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s designed to integrate ordinary differential equationsto find an unknown function that satisfies a given differential equation. All such algorithms proceed in two steps:
# The initial, "prediction" step, starts from a function fitted to the function-values and derivative-values at a preceding set of points to extrapolate ("anticipate") this function's value at a subsequent, new point.
# The next, "corrector" step refines the initial approximation by using the ''predicted'' value of the function and ''another method'' to interpolate that unknown function's value at the same subsequent point.
Predictor–corrector methods for solving ODEs
When considering the
numerical solution of ordinary differential equations (ODEs), a predictor–corrector method typically uses an
explicit method for the predictor step and an implicit method for the corrector step.
Example: Euler method with the trapezoidal rule
A simple predictor–corrector method (known as
Heun's method In mathematics and computational science, Heun's method may refer to the improved or modified Euler's method (that is, the explicit trapezoidal rule), or a similar two-stage Runge–Kutta method. It is named after Karl Heun and is a numerical pr ...
) can be constructed from the
Euler method
In mathematics and computational science, 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 m ...
(an explicit method) and the
trapezoidal rule
In calculus, the trapezoidal rule (also known as the trapezoid rule or trapezium rule; see Trapezoid for more information on terminology) is a technique for approximating the definite integral.
\int_a^b f(x) \, dx.
The trapezoidal rule works b ...
(an implicit method).
Consider the differential equation
:
and denote the step size by
.
First, the predictor step: starting from the current value
, calculate an initial guess value
via the Euler method,
:
Next, the corrector step: improve the initial guess using trapezoidal rule,
:
That value is used as the next step.
PEC mode and PECE mode
There are different variants of a predictor–corrector method, depending on how often the corrector method is applied. The Predict–Evaluate–Correct–Evaluate (PECE) mode refers to the variant in the above example:
:
It is also possible to evaluate the function ''f'' only once per step by using the method in Predict–Evaluate–Correct (PEC) mode:
:
Additionally, the corrector step can be repeated in the hope that this achieves an even better approximation to the true solution. If the corrector method is run twice, this yields the PECECE mode:
:
The PECEC mode has one fewer function evaluation than PECECE mode.
More generally, if the corrector is run ''k'' times, the method is in P(EC)
''k''
or P(EC)
''k''E mode. If the corrector method is iterated until it converges, this could be called PE(CE)
∞.
See also
*
Backward differentiation formula The backward differentiation formula (BDF) is a family of implicit methods for the numerical integration of ordinary differential equations. They are linear multistep methods that, for a given function and time, approximate the derivative of that f ...
*
Beeman's algorithm
*
Heun's method In mathematics and computational science, Heun's method may refer to the improved or modified Euler's method (that is, the explicit trapezoidal rule), or a similar two-stage Runge–Kutta method. It is named after Karl Heun and is a numerical pr ...
*
Mehrotra predictor–corrector method
*
Numerical continuation
Numerical continuation is a method of computing approximate solutions of a system of parameterized nonlinear equations,
:F(\mathbf u,\lambda) = 0.
The ''parameter'' \lambda is usually a real scalar, and the ''solution'' \mathbf u an ''n''-vector. ...
Notes
References
* .
*
External links
*
Predictor–corrector methodsfor differential equations
{{DEFAULTSORT:Predictor-corrector method
Algorithms
Numerical analysis