sjtudaniel 发表于 2014-10-12 17:02:18

非稳态传热的时间步和迭代次数输出不对,请大家帮助

本帖最后由 sjtudaniel 于 2014-10-12 21:21 编辑

大家好,我现在做非稳态的流动传热问题,代码是用FORTRAN写的SIMPLE算法,但是运行后发现时间步长和迭代次数的输出不对,但是又找不出哪里出问题了,请大家能够帮忙。

楚香饭 发表于 2014-10-12 17:52:10

本帖最后由 楚香饭 于 2014-10-12 17:53 编辑

在我这里,你的代码执行到 Simpler.f 的 147 行
BLC=BLC+CON(I,J)+AIP(I,J)*F(I+1,J,N)+AIM(I,J)*F(I-1,J,N)
时,发生越界。
此时,N = NF = 11,而 F 定义为 F(NI,NJ,NFMAX), NFMAX=10。所以越界

另外,时间步长和迭代次数的输出不对,这是你自己才知道的说法,我不清楚什么是时间步长,什么是迭代次数。

你这代码 1000 多行,没有注释,别人很难看懂你的代码,你又不做任何介绍。

还有,什么是“输出不对”?应该是多少,实际是多少?提问时,一定要站在别人的角度想想,别人能否理解你的意思?

珊瑚虫 发表于 2014-10-14 10:37:37

如果不涉密把你的代码发上来,别人才能根据你的代码找错误,否则无能为力

fcode 发表于 2014-10-14 11:13:45

原本有代码,一大堆 common,风格很久,没有注释,实在看不出来哪里是所谓的“步长和迭代次数”,哪里又不对(因为怎么算对?只有楼主知道)。

后来楼主删了。

mangix2010 发表于 2014-10-22 04:10:48

这种老程序还是要参考用户手册来看比较好
页: [1]
查看完整版本: 非稳态传热的时间步和迭代次数输出不对,请大家帮助