likm1110 发表于 2015-11-10 19:04:01

fortran 计算非整数幂律

fortran是不是不能计算非整数幂律?
如下:
Program main
Implicit None
Real :: a
Real :: b
Real :: x
x = 3.0
a = -1.0/74.0
b = 1.1
Write(*,*) a**b
End Program main

这个时候输出是NaN.为什么?
fortran怎么计算非整数幂律?就是我想用fortran把上面那个数算出来该怎么办?

fcode 发表于 2015-11-10 20:33:57

由于浮点数是有误差的。所以指数很难确保是奇数。负数开方,在实数域内无解。你需要用复数来解决。

参考帖子:http://bbs.fcode.cn/thread-770-1-1.html

likm1110 发表于 2015-11-11 09:26:39

fcode 发表于 2015-11-10 20:33
由于浮点数是有误差的。所以指数很难确保是奇数。负数开方,在实数域内无解。你需要用复数来解决。

参考帖 ...

多谢!昨天也发现了这个问题的原因,我看看方法
页: [1]
查看完整版本: fortran 计算非整数幂律