计算化学公社

 找回密码 Forget password
 注册 Register
Views: 3123|回复 Reply: 4
打印 Print 上一主题 Last thread 下一主题 Next thread

[Fortran] fortran如何读取python生成的二进制数据

[复制链接 Copy URL]

15

帖子

0

威望

3537

eV
积分
3552

Level 5 (御坂)

我想用python产生二进制文件fort.90,然后用fortran读取,python和fortran中代码分别如下。
用fortran检测是否正确读取时,输出结果为:
32513  -208485426  4.94065645841246544E-324  1.11931200425927836E-312
我应该如何修改上面的python或者fortran代码才能实现正确读取。





1.png (17.92 KB, 下载次数 Times of downloads: 85)

1.png

2.png (35.06 KB, 下载次数 Times of downloads: 76)

2.png

1187

帖子

5

威望

2841

eV
积分
4129

Level 6 (一方通行)

2#
发表于 Post on 2019-10-16 17:19:46 | 只看该作者 Only view this author
您可以用十六进制编辑器比如HxD先看一下导出的数据究竟长什么样子~

516

帖子

1

威望

5052

eV
积分
5588

Level 6 (一方通行)

3#
发表于 Post on 2019-10-16 18:26:33 | 只看该作者 Only view this author
python部分,两个整数的格式用'i'
Fortran部分,用form='binary',gfortran可能不支持,用ifort。
另外,注意你的Fortran部分的整数是几位,要么声明的时候写integer*4,要么编译的时候写上-i4,严格与python保持一致

516

帖子

1

威望

5052

eV
积分
5588

Level 6 (一方通行)

4#
发表于 Post on 2019-10-16 18:28:51 | 只看该作者 Only view this author

15

帖子

0

威望

3537

eV
积分
3552

Level 5 (御坂)

5#
 楼主 Author| 发表于 Post on 2019-10-17 08:38:09 | 只看该作者 Only view this author
niobium 发表于 2019-10-16 18:28
https://mp.weixin.qq.com/s?__biz=MzU5NjMxNjkzMw==&mid=2247484427&idx=1&sn=555a8228c22648aa85d424efc0 ...

谢谢,已经解决

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2024-11-23 21:11 , Processed in 0.224663 second(s), 24 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list