heaventian 发表于 2007-4-4 22:52

请教大家matlab里eps和realmin为什么差别那么大呀

我在matlab 命令窗口中输入eps命令得到的浮点运算的相对精度为2.2204e-016,而输入realmin得到的最小正浮点数为2.2251e-308
既然他们都是浮点数,请问他们两个为什么不一样,而且差别那么大呀?

xjzuo 发表于 2007-4-5 10:19

请先了解二者的意义.

heaventian 发表于 2007-4-15 10:59

谢谢,不过,REALMEAN能够达到这么大的精度,为什么不把EPS也定在这种精度呢?

ChaChing 发表于 2011-7-12 23:23

heaventian 发表于 2007-4-15 10:59 static/image/common/back.gif
谢谢,不过,REALMEAN能够达到这么大的精度,为什么不把EPS也定在这种精度呢?

LZ应该清楚了吧! 建议分享下

rocwoods 发表于 2011-7-13 09:52

本帖最后由 rocwoods 于 2011-7-13 09:53 编辑

可以参考我的书《MATLAB高效编程技巧与应用:25个案例分析》第一章相关内容。即如下:

heaventian 发表于 2011-7-13 12:08

回复 5 # rocwoods 的帖子

谢谢!我刚才又查了一下:
matlab 中对eps的解释是:Spacing of floating point numbers.
eps默认的是eps(1)即双精度的精度,因此为2e-52
而对realmax的解释是:REALMIN Smallest positive floating point number.
x = realmin is the smallest positive normalized double precision floating
    point number on this computer.
因此,realmax是2^(2^-10)=2^(-1024)=1.8E-308的量级。
一个是精度,一个是范围,两个不一样的概念。
再次感谢!
页: [1]
查看完整版本: 请教大家matlab里eps和realmin为什么差别那么大呀