Fortran Coder

楼主: kellsi
打印 上一主题 下一主题

[求助] 在Fortran模型中加入一个自己写的子程序出现读入问题

[复制链接]

98

帖子

0

主题

0

精华

大师

F 币
658 元
贡献
293 点

规矩勋章元老勋章新人勋章

11#
发表于 2021-3-12 08:43:01 | 只看该作者
你给出的部分代码看不出任何问题。

搜索你的代码,是否存在 fopeng 这样的函数?或者类似
ERROR in FOPENG: Unit number is < 10 or > 99
这样的字符串?

截图时,请让我们看到你的开发环境,确定是CVF?
天之道,损有余而补不足

18

帖子

2

主题

0

精华

入门

F 币
80 元
贡献
50 点
12#
 楼主| 发表于 2021-3-12 08:59:09 | 只看该作者
胡文刚 发表于 2021-3-12 08:43
你给出的部分代码看不出任何问题。

搜索你的代码,是否存在 fopeng 这样的函数?或者类似


这个通道的问题出现在从soil文件中读入数据那里,请教如何更改unit的值
您说的FOPENG在TTUTIL.LIB中封装了,无法更改这个逻辑设置

18

帖子

2

主题

0

精华

入门

F 币
80 元
贡献
50 点
13#
 楼主| 发表于 2021-3-12 09:01:37 | 只看该作者
胡文刚 发表于 2021-3-12 08:43
你给出的部分代码看不出任何问题。

搜索你的代码,是否存在 fopeng 这样的函数?或者类似


98

帖子

0

主题

0

精华

大师

F 币
658 元
贡献
293 点

规矩勋章元老勋章新人勋章

14#
发表于 2021-3-12 11:07:12 | 只看该作者
我没法准确的从一堆残缺的代码片段中判断你的代码逻辑。

而且这个 unit 在 [10,99] 区间的逻辑,是封在lib库里的,也没法改。

你可以尝试把 IUNITD 改成 10 到 99 之间的数字,目前是1。可能有效。
天之道,损有余而补不足

18

帖子

2

主题

0

精华

入门

F 币
80 元
贡献
50 点
15#
 楼主| 发表于 2021-3-12 15:16:14 | 只看该作者
胡文刚 发表于 2021-3-12 11:07
我没法准确的从一堆残缺的代码片段中判断你的代码逻辑。

而且这个 unit 在 [10,99] 区间的逻辑,是封在lib ...

好的,我试一下,谢谢您!

213

帖子

2

主题

0

精华

宗师

F 币
2126 元
贡献
875 点

规矩勋章

16#
发表于 2021-3-13 00:49:51 | 只看该作者
kellsi 发表于 2021-3-11 22:27
!  soiltemperature.f90
!
!  FUNCTIONS:

如果没猜错的话,变量IUNITD应该是通道号,但没有被赋值。在call RDINIT前给IUNITD赋值10~99间的任意数值应能解决问题。
CALL RDINIT(IUNITD,IUNITL,FILEI2)
.
.
CLOSE (IUNITD)

81

帖子

0

主题

0

精华

专家

F 币
471 元
贡献
232 点

规矩勋章新人勋章元老勋章

QQ
17#
发表于 2021-3-13 09:31:50 | 只看该作者
如果没猜错的话,变量IUNITD应该是通道号,在 RDINIT (盲猜 含义是 ReadInit )中被幅值或从外部控制文件中获取的。
CALL RDINIT(IUNITD,IUNITL,FILEI2)

它的问题是通道号是1(并不是没有值),而库里的函数只允许 10-99
彼岸,有永恒的守候...

18

帖子

2

主题

0

精华

入门

F 币
80 元
贡献
50 点
18#
 楼主| 发表于 2021-3-15 07:53:35 | 只看该作者
风平老涡 发表于 2021-3-13 00:49
如果没猜错的话,变量IUNITD应该是通道号,但没有被赋值。在call RDINIT前给IUNITD赋值10~99间的任意数值 ...

我试试您这个思路,谢谢!

18

帖子

2

主题

0

精华

入门

F 币
80 元
贡献
50 点
19#
 楼主| 发表于 2021-3-15 07:54:37 | 只看该作者
青衣巷 发表于 2021-3-13 09:31
如果没猜错的话,变量IUNITD应该是通道号,在 RDINIT (盲猜 含义是 ReadInit )中被幅值或从外部控制文件中 ...

对,这个IUNITD确实是通道号,提前赋值是否影响其他子程序中的使用呢

81

帖子

0

主题

0

精华

专家

F 币
471 元
贡献
232 点

规矩勋章新人勋章元老勋章

QQ
20#
发表于 2021-3-15 08:20:31 | 只看该作者
kellsi 发表于 2021-3-15 07:54
对,这个IUNITD确实是通道号,提前赋值是否影响其他子程序中的使用呢

这一系列问题,都要取决于代码逻辑。
(即可以设计得有影响,也可以设计得没有影响)

需要全面审视全部代码逻辑后,才能判断。
彼岸,有永恒的守候...
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-4-24 15:20

Powered by Tencent X3.4

© 2013-2024 Tencent

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