回 帖 发 新 帖 刷新版面

主题:急 等!!!!!!Fortran计算出现NAN了,怎么让它立刻停止

Fortran计算出现NAN了,怎么让它立刻停止 
  由于我的计算用的是迭代,所以不太好准确的寻找哪最开始出现NAN,所以我想请问有没有判断的依据让程序计算一旦出现NAN就立马停止  谢谢

回复列表 (共15个回复)

11 楼

其实遇到NAN不停下来是必要的
有些问题是物理本身导致病态, 算一大组数据因为其中一个NAN导致停止就悲剧了.
我是想知道有没有不依赖编译器的判断方法呢?

12 楼

发帖动作慢, 发帖的时候还没看到f2003兄9楼的详细论述.

13 楼

[quote][quote]使用intel fortran的话,使用/fpe0选项,在debug下运行,这样一旦有NaN产生,就会报错并提示错误位置[/quote]

学习了,在IDE里面怎么设置呢?[/quote]

项目属性-Fortran-Floating Point-Floating-point exception handling

14 楼


找到,谢谢!

15 楼

[quote][quote][quote]使用intel fortran的话,使用/fpe0选项,在debug下运行,这样一旦有NaN产生,就会报错并提示错误位置[/quote]

学习了,在IDE里面怎么设置呢?[/quote]

项目属性-Fortran-Floating Point-Floating-point exception handling[/quote]


于是,楼主的愿望通过这个设置即可实现。不过在编程时,除不可预料的情形,还是要尽量避免出现NaN,inf之类的东东。

我来回复

您尚未登录,请登录后再回复。点此登录或注册