Heuristics for sequence convergence

75 Views Asked by At

Having a finite sequence of double precision floating point numbers (obtained using the fixed point iteration of a function), is there any algorithm which can be used to determine that this sequence is eventually convergent?

I tried to use the relative error between two consecutive elements, but this is not always working nice. For example, considering the fixed point iteration of $2*x/3$, with initial value $x_0 = 1/2$ the below sequence is produced, in which the relative error between two consecutive values is always $0.33$, although the absolute error is decreasing towards zero (but I think that the absolute error can't be used reliably with floating point numbers).

 0: 0.333333
 1: 0.222222
 2: 0.148148
 3: 0.098765
 4: 0.065843
 5: 0.043895
 6: 0.029263
 7: 0.019509
 8: 0.013006
 9: 0.008670
10: 0.005780
11: 0.003853
12: 0.002569
13: 0.001712
14: 0.001141
15: 0.000761
16: 0.000507
17: 0.000338
18: 0.000225
19: 0.000150
20: 0.000100