In the case of a linear system the two main classes are the stationary iterative methods, and the more general Krylov subspace methods.
Table of contents |
2 Krylov subspace methods 3 Convergence 4 Preconditioners 5 History 6 External links |
Stationary iterative methods solve a system with an operator approximating the original one; and based on a measurement of the error (the residual) form a correction equation for which this process is repeated. While these methods are simple to derive, implement, and analyse, convergence is only guaranteed for a limited class of matrices.
Krylov subspace methods form an orthogonal basis of the sequence of successive matrix powers times the initial residual (the Krylov sequence). The approximations to the solution are then formed by minimizing the residual over the subspace formed. The prototypical method in this class is the conjugate gradient method.
Since these methods form a basis, it is evident that the method converges in N iterations, where N is the system size. However, in the presence of rounding errors this statement does not hold; moreover, in practice N can be very large, and the iterative process reaches sufficient accuracy already far earlier. The analysis of these methods is hard, depending on a complicated function of the spectrum of the operator.
The approximating operator that appears in stationary Iterative methods can also be incorporated in Krylov subspace methods (alternatively, preconditioned Krylov methods can be considered as accelerations of stationary iterative methods), where they become transformations of the original operator to a presumably better conditioned one. The construction of preconditioners is a large research area.
The Iterative method is one of the software development processes, for example in Barry Boehm's 1980s spiral model, which influenced extreme programming practices in the 2000s. See iterative development for the detail.Stationary iterative methods
Krylov subspace methods
Convergence
Preconditioners
History
In the 1900s, Emil Post, Alonzo Church and others published the relationship of iteration to recursion. For example, the Scheme programming language expresses iteration with tail-recursion. External links