Fortran Coder

查看: 3436|回复: 1
打印 上一主题 下一主题

[数值问题] 程序运行中数值精度下降

[复制链接]

35

帖子

11

主题

0

精华

熟手

F 币
241 元
贡献
140 点
跳转到指定楼层
楼主
发表于 2022-2-15 16:34:47 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
如题,求助论坛的各位大大。程序片段以及断点位置如图:


    iof%rie(1) = Velc + gam2m * iof%ac_c
    iof%rie(2) = iof%Vel8 - gam2m * 1.0

    iof%Ubar = ( iof%rie(1) + iof%rie(2) ) / 2.0


这里在调试下可知 iof%rie(1) = 5.00000,iof%rie(2) = -5.00000,都是单精度浮点数,但是二者求和除以2.0(或者2.d0)后等-2.3841858E-07??


请问各位大大,造成这种现象的可能原因能有哪些呢?另外我还单独试了试,其他程序上单精度的(5.00000-5.00000)/2.0 就是等于0.0。


分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-5-15 21:51

Powered by Tencent X3.4

© 2013-2024 Tencent

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