Fortran Coder

查看: 24107|回复: 13
打印 上一主题 下一主题

[子程序] 请教一下Fortran程序中子程序参数为何发生变化

[复制链接]

16

帖子

3

主题

0

精华

入门

F 币
120 元
贡献
60 点
跳转到指定楼层
楼主
发表于 2018-11-20 19:52:23 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
GREASELINETHERMEHL.f90 (15.61 KB, 下载次数: 9)
这个程序同样出现nan的问题 经过我单步调试发现子程序EROEQ在结束第二轮的第一次循环后,参数B1的值正常,为1点多,为什么进入第二轮第二次循环时,B1的值自动变为了0,导致后面出现nan,刚刚接触Fortran不久,请各位大神赐教,感激不尽。
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

16

帖子

3

主题

0

精华

入门

F 币
120 元
贡献
60 点
14#
 楼主| 发表于 2018-11-27 18:18:18 | 只看该作者
vvt 发表于 2018-11-26 08:32
Projects 菜单,Build Options,Other Options

十分感谢!

954

帖子

0

主题

0

精华

大师

F 币
184 元
贡献
75 点

规矩勋章元老勋章新人勋章水王勋章热心勋章

QQ
13#
发表于 2018-11-26 08:32:28 | 只看该作者
Projects 菜单,Build Options,Other Options

16

帖子

3

主题

0

精华

入门

F 币
120 元
贡献
60 点
12#
 楼主| 发表于 2018-11-24 08:23:49 | 只看该作者
vvt 发表于 2018-11-22 12:21
你可以在每个子程序里都加上
save

好的 十分感谢! 请问编译选项这个怎么加啊 我不大明白

954

帖子

0

主题

0

精华

大师

F 币
184 元
贡献
75 点

规矩勋章元老勋章新人勋章水王勋章热心勋章

QQ
11#
发表于 2018-11-22 12:21:51 | 只看该作者
本帖最后由 vvt 于 2018-11-22 12:23 编辑

你可以在每个子程序里都加上
save

比如
subroutine sub()
  save
end subroutine sub

然后编译选项加上
-finit-local-zero
QQ微信就不用加了,你可以加本论坛QQ群:2338021

16

帖子

3

主题

0

精华

入门

F 币
120 元
贡献
60 点
10#
 楼主| 发表于 2018-11-22 10:33:47 | 只看该作者
vvt 发表于 2018-11-21 21:49
这程序你也别改了,错误太多太多了。各种变量都需要 save
比如
UCAL 函数里的 A1 A2 A3

可否跟您加一下qq或者微信之类的

16

帖子

3

主题

0

精华

入门

F 币
120 元
贡献
60 点
9#
 楼主| 发表于 2018-11-22 10:28:44 | 只看该作者
vvt 发表于 2018-11-21 21:49
这程序你也别改了,错误太多太多了。各种变量都需要 save
比如
UCAL 函数里的 A1 A2 A3

啊 这些都要save啊  可是我用的是codeblocks 没找到在哪里设置所有变量save
所以您调试以后就是这个变量save的问题吗

954

帖子

0

主题

0

精华

大师

F 币
184 元
贡献
75 点

规矩勋章元老勋章新人勋章水王勋章热心勋章

QQ
8#
发表于 2018-11-21 21:49:51 | 只看该作者
这程序你也别改了,错误太多太多了。各种变量都需要 save
比如
UCAL 函数里的 A1 A2 A3
THERM 函数里的 T
TCAL 函数里的 A1 A2 A3 A4 A5 A6
等等

如果你使用的 IVF,你可以在工程属性里这样设置:

16

帖子

3

主题

0

精华

入门

F 币
120 元
贡献
60 点
7#
 楼主| 发表于 2018-11-21 20:19:21 | 只看该作者
vvt 发表于 2018-11-21 19:53
就是你运行程序以后该输入什么?

READ(*,'(A)')S

这个不需要输入 在上一步'Show the example or not (Y or N) 这里输入y就可以了

954

帖子

0

主题

0

精华

大师

F 币
184 元
贡献
75 点

规矩勋章元老勋章新人勋章水王勋章热心勋章

QQ
6#
发表于 2018-11-21 19:53:50 | 只看该作者
就是你运行程序以后该输入什么?

READ(*,'(A)')S
READ(*,*)W,US,FF
READ(*,*)NZ,CU

这些
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-5-5 10:46

Powered by Tencent X3.4

© 2013-2024 Tencent

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