Fortran Coder

查看: 26253|回复: 19
打印 上一主题 下一主题

[子程序] 程序运行有问题,有关子程序C06LAF

[复制链接]

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

跳转到指定楼层
楼主
发表于 2014-2-26 14:53:31 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
4F 币
我使用的是CVF编译器,程序是以前师兄编好的,其他类似的几个代码都没有问题,但是这个我调试了好久,就是运行不出理想的结果。代码较长,附件中包含所有需要的文件,以及错误结果及理想结果的截图,跪求大神帮助啊。。。


问题.png (5.49 KB, 下载次数: 1474)

这是屏幕显示的错误结果

这是屏幕显示的错误结果

正常.png (4.85 KB, 下载次数: 1424)

这是应该得到的理想结果

这是应该得到的理想结果

Qiuzhu.zip

59.09 KB, 下载次数: 9

这是所有程序文件

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

沙发
 楼主| 发表于 2014-2-26 15:45:59 | 显示全部楼层
fcode 发表于 2014-2-26 15:42
从 NAG Library 的帮助里可以看到: c06laf 是用于反拉普拉斯变换。

IFAIL = 4

对啊   c6laf用于拉普拉斯逆变换,但是我按照错误提示对相关参数修改后,问题依然存在。。。。
回复

使用道具 举报

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

板凳
 楼主| 发表于 2014-2-26 20:11:03 | 显示全部楼层
chuxf 发表于 2014-2-26 16:42
有一点可以引起你的注意:

主程序中,common 部分:

谢谢您的指导,非常感谢!不管有没有用,都谢谢您的帮助。
回复

使用道具 举报

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

地板
 楼主| 发表于 2014-2-26 20:12:16 | 显示全部楼层
fcode 发表于 2014-2-26 16:17
你手边有 C06laf 的帮助吗?
我建议你认真阅读一下,以便了解函数的局限。设定合适的算例来运算。

谢谢您的建议,非常中肯。我会虚心接受的!
回复

使用道具 举报

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

5#
 楼主| 发表于 2014-2-26 20:28:44 | 显示全部楼层
chuxf 发表于 2014-2-26 14:53
有一点可以引起你的注意:

主程序中,common 部分:

你好,再次打扰不好意思。我按照您的建议修改后,出现新的问题,截图如下:不知道神马情况啊。。。。

NQ.png (8.75 KB, 下载次数: 1321)

NQ.png
回复

使用道具 举报

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

6#
 楼主| 发表于 2014-2-27 11:50:08 | 显示全部楼层
chuxf 发表于 2014-2-26 20:39
发你修改后的程序。这个错误就比较简单一些了

您好,昨晚学校断网,没办法给您回复了。多谢帮助,附件是我修改后的文件,请您再帮我看一下吧。

xiugai.rar

52.88 KB, 下载次数: 1

回复

使用道具 举报

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

7#
 楼主| 发表于 2014-2-27 13:08:57 | 显示全部楼层
chuxf 发表于 2014-2-27 12:14
嗯,这个错误就很明了了。

Ua,Uw,Set 三个函数中,没有对  m1a,m2w,m2a 的定义,于是这三个量默认是整型的 ...

太感谢您了!就是我想要的结果。您的指导真的帮了我很大的忙。
回复

使用道具 举报

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

8#
 楼主| 发表于 2014-2-27 14:30:41 | 显示全部楼层
chuxf 发表于 2014-2-27 13:17
不客气,常来论坛看看。

我按照你的指导修改后,可以运行了。但是当我读取1D_Unsat.dat这个文件中的T(1)这个数时,当T(1)<1e7时,很正常,一旦大于就又出现以前的问题了(正常的话我需要算到T(1)=1e11)。我按照C06LAF子程序的帮助文件的错误提示进行修改,问题依然存在。 现在附件里是程序和问题截图,有时间您再帮我看下?我是小白。。。但是这个程序我需要尽快弄出来,好无力的赶脚。。。
回复

使用道具 举报

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

9#
 楼主| 发表于 2014-2-27 14:59:34 | 显示全部楼层
chuxf 发表于 2014-2-27 14:54
这个恐怕就是管理在 4 楼说的那种情况了。

T(1) 增大以后,要达到相同的精度也就越困难,你需要同步调整其 ...

恩。。。那我只有再看看吧。。。但是我觉得问题不一定就是出在提示的地方。因为我这里类似这个计算的其他几个程序我计算时即使T很大也没有出现这个问题。唉。。。
回复

使用道具 举报

19

帖子

3

主题

0

精华

入门

新手菜鸟

F 币
71 元
贡献
66 点

爱心勋章

10#
 楼主| 发表于 2014-2-27 16:23:44 | 显示全部楼层
chuxf 发表于 2014-2-27 14:54
这个恐怕就是管理在 4 楼说的那种情况了。

T(1) 增大以后,要达到相同的精度也就越困难,你需要同步调整其 ...

您好,在您方便的时候,可不可以帮我再看一下?附件里是我另外的一个程序以及C06LAF的帮助文件,那个运行没有任何问题,两个程序的代码差不多的。。。只是输入的数有个别不同。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-11 15:59

Powered by Tencent X3.4

© 2013-2024 Tencent

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