Fortran Coder

标题: 程序调试求助!!! [打印本页]

作者: 顺利就好    时间: 2023-9-21 17:39
标题: 程序调试求助!!!

各位大佬,本人现在正在跑一个程序,但是无论如何都跑不出想要的结果。程序是用来算出不同区域的流量和温度的,现在的情况是程序能运行,但是结果跑不出来,都是0,也看不出是什么原因。如有大佬能够提供思路,感激不尽!(我用的编译器是power station4,程序压缩包在附件)

望大佬们解惑!!!!!!

third (3).zip

468.03 KB, 下载次数: 3


作者: 顺利就好    时间: 2023-9-21 20:49

这是程序的主程序和子程序的截图,谢谢大佬们

作者: Transpose    时间: 2023-9-21 20:53
本帖最后由 Transpose 于 2023-9-21 20:57 编辑

noncover-num(4).f90 144行,time 没有初始化
另外:强烈建议不要再用powerstation了
而且程序里面有一些数组越界,需要你自己判断代码结果可不可信


作者: 顺利就好    时间: 2023-9-22 00:02
Transpose 发表于 2023-9-21 20:53
noncover-num(4).f90 144行,time 没有初始化
另外:强烈建议不要再用powerstation了
而且程序里面有一些数 ...

谢谢您大佬,按照您的建议将它初始化了,但是在这之后结果还是出不来,可能是其他原因吧。之所以用这个编译器是因为代码是传下来的,只能在这个上面运行
作者: necrohan    时间: 2023-9-26 17:30
主程序里面
common/infiltration/OF1,OF2,OF3,W,H,PATM,To
solar.for里面
common/infiltration/Cd,density,OF1,OF2,OF3,W,H,PATM,To,Ta,Hn1,Hn2,
这2个是没对上吧。而且OF1,OF2,OF3始终为0。

PI=3.1316 这个赋值是对的吗

Fai_0, Fsg_h, SF 赋值可能有问题。

H在程序里作为循环变量,还在 common/infiltration/ 中引用,可能有问题

QFREEZER=810
if(QFREEZER.GT.77.5)QFREEZER=77.5 ! 我没办法理解
作者: fcode    时间: 2023-9-27 08:41
对PI的赋值,建议写成 PI = acos(-1.0)  这样不会出错,并且编译器足够聪明,会在编译时计算acos,运行时就已经是 3.1415926... 了(不会浪费运行时间)。




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