matlab eps
2015-11-16 15:00
453 查看
eps是一个函数。当没有参数时默认参数是1.返回的是该参数的精度。
也就是说单个的eps实际上是eps(1),表示的是1的精度。
这里要说一下精度的概念。浮点数所能表示的数值范围是很大的,但是浮点数不是无限
的,连续的和稠密的;而是有限的,离散的和稀疏的,而且每个数的精度都不一样。越
是靠近0,精度越高,反之则越低。eps返回的是1的精度。指的是1和离他最近的浮点数
之间的距离。
我们输入eps可以看到1的精度。
也就是说离他最近的浮点数和他相差eps(1)。我们可以计算1+eps,他就是离1最近的浮
点数。
如果我们计算出的数介于这两者之间,系统就会自动把它舍入到离他最近的数。
1+eps*3/5离1+eps近,所以1+eps*3/5≈1+eps;1+eps*2/5离1近,所以1+eps*2/5≈1,
而1+eps/2在正当中,系统自动把它舍入到1,即1+eps/2≈1
如果我们输入eps(2)可以看到2的精度,它只有1的精度的一半。即eps(2)=eps*2
因此系统会认为2+eps≈2,而2+eps*6/5≈2+eps*2=2+eps(2)
也就是说单个的eps实际上是eps(1),表示的是1的精度。
这里要说一下精度的概念。浮点数所能表示的数值范围是很大的,但是浮点数不是无限
的,连续的和稠密的;而是有限的,离散的和稀疏的,而且每个数的精度都不一样。越
是靠近0,精度越高,反之则越低。eps返回的是1的精度。指的是1和离他最近的浮点数
之间的距离。
我们输入eps可以看到1的精度。
也就是说离他最近的浮点数和他相差eps(1)。我们可以计算1+eps,他就是离1最近的浮
点数。
如果我们计算出的数介于这两者之间,系统就会自动把它舍入到离他最近的数。
1+eps*3/5离1+eps近,所以1+eps*3/5≈1+eps;1+eps*2/5离1近,所以1+eps*2/5≈1,
而1+eps/2在正当中,系统自动把它舍入到1,即1+eps/2≈1
如果我们输入eps(2)可以看到2的精度,它只有1的精度的一半。即eps(2)=eps*2
因此系统会认为2+eps≈2,而2+eps*6/5≈2+eps*2=2+eps(2)
相关文章推荐
- matlab学习笔记 bsxfun函数
- Matlab矩阵的简单操作
- matlab colormap
- MATLAB r2012 B
- MATLAB GUI设计之读取串口数据并计算绘图
- MATLAB的位运算操作
- php通过JavaBridge调用matlab
- matlab导出jar包
- matlab差分算法
- MATLAB实现cost function计算和gradience descent计算
- 机器学习中熟悉MATLAB——区分^/*与.* /^
- VC和MATLAB混合开发经验总结
- MATLAB 牛顿插值法程序
- 光照亮度调整(图像拼接之前)
- Matlab学习历程
- MATLAB中无法读取图像或无法打开文件等类似问题
- matlab和C如何混编
- matlab安装后不能使用,问题提示如下:runtime error!
- Matlab学习历程
- 来来来,有讲一个吐血的故事(matlab)之脚本运行路径是什么