Fortran Coder

查看: 5073|回复: 4
打印 上一主题 下一主题

[其他行业算法] 非稳态传热的时间步和迭代次数输出不对,请大家帮助

[复制链接]

1

帖子

1

主题

0

精华

新人

F 币
12 元
贡献
4 点
跳转到指定楼层
楼主
发表于 2014-10-12 17:02:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 sjtudaniel 于 2014-10-12 21:21 编辑

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

739

帖子

4

主题

0

精华

大师

农村外出务工人员

F 币
711 元
贡献
365 点

新人勋章爱心勋章水王勋章元老勋章热心勋章

沙发
发表于 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 多行,没有注释,别人很难看懂你的代码,你又不做任何介绍。

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

135

帖子

15

主题

0

精华

版主

F 币
1159 元
贡献
637 点

爱心勋章管理勋章

板凳
发表于 2014-10-14 10:37:37 | 只看该作者
如果不涉密把你的代码发上来,别人才能根据你的代码找错误,否则无能为力

2033

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1641 元
贡献
709 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

地板
发表于 2014-10-14 11:13:45 | 只看该作者
原本有代码,一大堆 common,风格很久,没有注释,实在看不出来哪里是所谓的“步长和迭代次数”,哪里又不对(因为怎么算对?只有楼主知道)。

后来楼主删了。

35

帖子

2

主题

1

精华

专家

超子

F 币
565 元
贡献
196 点

规矩勋章

QQ
5#
发表于 2014-10-22 04:10:48 | 只看该作者
这种老程序还是要参考用户手册来看比较好
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-12-26 05:50

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表