摘要 探讨 MATLAB 中 的计算精度问题。当 为含有小数的大数或 ()附近数时,输出会有错误数字。
例1. 已知
计算
直接贴图吧:
另外,16位的正确值分别为 -0.7882256119904400e0、0.1702266977524110e0、-0.1256637061402844e-4 与 -0.2513274122871835e-8(ISRealsoft 提供)。
容易看出,MATLAB的输出中,与红色数字对应的有效数字是错误数字。这样,MATLAB的输出中分别有5位、11位、4位及13位错误数字;有效数字的错误率分别为 5/16 = 31.25% , 11/16 = 68.75% , 4/16 = 25% , 13/16 = 81.25% .
注:可参考计算机的错误计算(五十八)、(六十五)、(一百四十一)及(一百四十三)。