Bootstrap

计算机的错误计算(一百六十九)

摘要  探讨 MATLAB 中一个不动点的计算精度问题。

       不动点是一类特殊的循环迭代。它有形式 x=f(x)\,.

例1.  已知迭代[1]

y_1=0.5\,, \\y_n=\sin(121\times\arcsin(y_{n-1}))\,.

计算 y_9\,.

       显然,每个 y_n 均为 0.5 .

       下面看看 MATLAB 的计算结果。不妨不用循环语句,直接用算术表达式表示 y_9\,. 这时计算结果在如下图片: 

这样,MATLAB 给出了错误输出。其符号也不正确。     

       注:可参看计算机的错误计算(一百一十八)

参考文献

[1] 赵世忠, 陈冬火, 刘静. 循环迭代程序的一种可信计算算法. 软件学报, 2020, 31(12): 3685-3699

;