atan2(0,0) is not undefined (NaN)

39次浏览(最近30天)
我在Windows®机器上使用MATLAB R2020a家庭版。我需要计算atan2(0,0),如果我是正确的,结果应该是NaN(未定义)。我得到的答案是零。这不是计算atan2()的下划线算法中的错误吗?
先谢谢你。

接受的答案

明星黾
明星黾 8月11日
它定义在 IEEE合规 部分的 量化 文档。
结果也没有完全标准化。参见维基百科的文章 量化 用通用计算机语言实现该功能
2的评论
明星黾
明星黾 8月11日
一如既往,我的荣幸!
MATLAB最初是FORTRAN实现,后来转向C语言。

登录评论。

更多的答案(2)

詹姆斯Tursa
詹姆斯Tursa 8月11日
这是一个有文档记录的约定。
1评论
作祈祷·古登
作祈祷·古登 8月11日
詹姆斯,谢谢你的回复。现在我在帮助文档中看到了“IEEE遵从性”一节。这是需要记住的好信息!

登录评论。


侯赛因爪哇人
侯赛因爪哇人 8月11日
这不是一个bug。虽然在解析数学中它是没有定义的,但三角函数通常是通过在数值软件上进行泰勒级数展开来计算的。毫无疑问,结果是零。然而,当您尝试非常小的值时,它仍然是正确的:
量化(1 e - 301, 1 e - 301) * 180 /π
ans =
45
2的评论
侯赛因爪哇人
侯赛因爪哇人 8月11日
别客气。

登录评论。

下载188bet金宝搏


释放

R2020a

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!