专栏
标签
为什么用 Syslab 计算出来的结果比 Matlab 计算出来的结果长度少 1 位?
技术分享
发布于 2025-08-06 16:31:59
查看 1过去300天

问题现象

运行下图所示的代码:
https://chat.tongyuan.cc/uploads/default/original/1X/7b6c60c7fdcd0c1dc9988a0808b2fac8d4de3825.png

原因分析

问题现象中的代码在 Juia 和 Matlab 里面实际计算结果一致,如下图所示:
image.png
分析原因是计算精度问题导致 Julia 算出来的长度比 MATALB 长度少 1。
例如运算结果为: 7678.99999
1、Julia 语言的逻辑是忽略后面的 0.9999

2、Matlab 语言的逻辑是把后面的 0.9999 当作 7679 处理

解决方法

1.可以先减再除,例如:
image.png
2.或者说用有理数存
image.png
注意: 用// 会自动通分,因此只建议在(:)用/例如:
image.png

所属专栏:Julia语言
产品信息:Syslab科学计算环境
科学计算

全部回答

暂无数据
暂无数据
用户
和原帖交流更多问题细节吧,去
我要发帖 我要发帖
资料中心 资料中心
查看更多>
热门帖子 热门帖子
主要贡献者 主要贡献者
过去7天