Fortran Coder

标题: fortran 计算非整数幂律 [打印本页]

作者: likm1110    时间: 2015-11-10 19:04
标题: fortran 计算非整数幂律
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
由于浮点数是有误差的。所以指数很难确保是奇数。负数开方,在实数域内无解。你需要用复数来解决。

参考帖子:http://bbs.fcode.cn/thread-770-1-1.html
作者: likm1110    时间: 2015-11-11 09:26
fcode 发表于 2015-11-10 20:33
由于浮点数是有误差的。所以指数很难确保是奇数。负数开方,在实数域内无解。你需要用复数来解决。

参考帖 ...

多谢!昨天也发现了这个问题的原因,我看看方法




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2