非常基本的Fortran问题.以下函数返回NaN,我似乎无法弄清楚原因:
F_diameter = 1. - (2.71828**(-1.0*((-1. / 30.)**1.4)))
我已经喂了2.71而不是使用,exp()
但他们都以同样的方式失败了.我注意到当小数部分(-1/30)为负时我只得到一个NaN.积极评估好.
非常感谢
ire*_*ses 10
问题是你正在取一个负数的根,这会给你一个复杂的答案.如果你想象,这更明显
(-1) ** (3/2)
Run Code Online (Sandbox Code Playgroud)
这相当于
(1/sqrt(-1))**3
Run Code Online (Sandbox Code Playgroud)
换句话说,您的小数指数不能简单地对负数进行操作.
归档时间: |
|
查看次数: |
2661 次 |
最近记录: |