Fortran Coder

标题: 程序在计算了十几个时间步长后开始出错 [打印本页]

作者: Frank    时间: 2017-2-18 17:29
标题: 程序在计算了十几个时间步长后开始出错
有限差分程序,解二维圣维南方程。
程序在计算了大约10个时间步长后开始出现NAN的结果,程序也能够运行下去,但就是结果出现大量NAN,请问这可能是什么问题。
调整了时间步长,发现没有什么作用。

作者: li913    时间: 2017-2-18 20:17
本帖最后由 li913 于 2017-2-18 20:18 编辑

计算出错,比如除以一个接近或等于零的数,其结果就不对。项目属性里面修改编译参数,使之报错,抛出浮点异常。

QQ截图20170218201713.png (38.58 KB, 下载次数: 262)

QQ截图20170218201713.png

作者: 百事可乐    时间: 2017-2-19 15:15
除数越来越小,最终下溢 。
或者累计越来越大,最终上溢~
也可能有些数组部分没有初始化,导致数据不可预测,可能很大很大




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