Fortran Coder

查看: 501|回复: 2

[数值问题] 求助变量初始化后赋值问题

[复制链接]

1

帖子

1

主题

0

精华

新人

F 币
17 元
贡献
5 点
发表于 2016-12-12 10:23:33 | 显示全部楼层 |阅读模式
大家好,请教一个问题:
    我的程序里面,需要调用一个函数CKHRX, 他的输出是HRXI。

    在主程序里面的初始化步骤,我做了一个测试,如下:
    real HRXI1 和
    dimension HRXI2(II)

     然后分别调用CKHRX,如下:
    CALL CKHRX(I,HML,IWORK,WORK,HRXI1)
    CALL CKHRX(I,HML,IWORK,WORK,HRXI2)

    当我导出的时候,发现HRXI1 和 HRXI2(1) 的差别非常大,在几十个数量级。。。
    程序的要求,是HRXI 需为real格式。 但我不明白为什么差别会这么大。

    CKHRX的代码如下:
    1.jpg

谢谢!
回复

使用道具 举报

211

帖子

1

主题

0

精华

宗师

F 币
1234 元
贡献
849 点
发表于 2016-12-12 10:44:11 | 显示全部楼层
子程序要求 最后一个参数是双精度,而你的 主程序里面 HRXI1,HRXI2 可能是单精度的。

376

帖子

2

主题

0

精华

大宗师

F 币
2585 元
贡献
1549 点

水王勋章元老勋章热心勋章

发表于 2016-12-12 13:26:33 | 显示全部楼层
用gfortran编译的话,添加编译命令-fdefault-real-8 -fdefault-double-8看看结果差别
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|QQ群|Fcode

GMT+8, 2017-12-18 14:47

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

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