浮点数比较失败,为什么?
技术分享
发布于 2025-08-06 16:31:47
查看 1过去300天
问题现象
浮点精度存在随机的精度误差,比较简单的浮点数运算因为精度误差导致开发人员无法通过减法直观判断两数是否相等。

解决方法
原因分析: julia 语言在赋值浮点型数据类型时可能会有 1e-16 次方的精度随机误差。
解决方案: 可以通过 isapprox(a.b.atol=1e-12,rtol=1e-12) 的方式进行比较,其中"atol"限定 a 和 b 的绝对误差,"rtol"限定a和b的相对误差。

所属专栏:Syslab基础平台
产品信息:Syslab科学计算环境