主题:exp: error是什么错误?
liangjj
[专家分:0] 发布于 2012-02-23 09:05:00
程序编译没有问题,但运行一会儿出错:
run-time error M0: MATH
-exp:error
但不应该是上限溢出,因为虽然在程序中用到了exp函数,但当x>1时 我都做了如下处理:exp(x)->1/exp(-x),请问有人遇到过这种错误码?
回复列表 (共5个回复)
沙发
那兰1220 [专家分:50] 发布于 2012-02-23 17:17:00
我也出现过 run-time error M0: MATH
这样的错误,是LOG 的 但是现在都没有找出自己的问题
有网友说有可能是数组设置的问题。、
你那个会不会是数据格式上的错误,例如强制转换格式一类的导致的出错??
板凳
liangjj [专家分:0] 发布于 2012-02-23 17:46:00
嗯,这个错误的一般表达式应该是:-"function",error,我的这个程序是并不是老出错,有的循环可以计算,有的循环不可以计算,所以很奇怪的错误,不知道有没有fortran书介绍过此类错误。
3 楼
yeg001 [专家分:14390] 发布于 2012-02-23 19:16:00
最好能够锁定是那个循环出错, 专门去调试那个循环. 因为这个不是fortran语言的问题应该是没有书去特意讲这个事情的.
其实exp(x), 除了可能溢出之外, 有没有可能是x变成了inf或者NaN之类的数值, 这些都需要去调试才知道的. 就这样看难以解决问题.
4 楼
liangjj [专家分:0] 发布于 2012-02-23 21:13:00
嗯,我仔细再检查一下
5 楼
liangjj [专家分:0] 发布于 2012-02-24 12:00:00
还是没搞清楚。以前理解错了
我来回复