解方程——不动点迭代
定义:如果g(r)=r,那么实数r是函数g的一个不动点。
如果我们有方程f(x)=0,表示为不动点问题时,有:g(x)=x (注:f(x)=g(x)-x)
不动点r是方程f(x)=0的一个根,几何表示为y=g(x)与y=x的交点就是不动点r
算法分析:x0 = 初始设定值
x1 = g(x0)
x2 = g(x1)
x3 = g(x2)
... ...
x(k+1) = g(x(k))
直到收敛至g(r) = g(lim x(i)) = lim x(i+1) = r
matlab代码实现:
%使用本函数需要一个事先建立的内联函数g function xc = fpi (g,x0,k) x(1) = x0; for i = 1:k x(i+1) = g(x(i)); end x' %x用列显示 xc = x(k+1);