以下のFortranコードからバイナリファイル出力を読み込もうとしていますが、結果は出力ファイルと同じではありません。Python Fortranバイナリファイルを読む
Fortran 77のコード:
program test
implicit none
integer i,j,k,l
real*4 pcp(2,3,4)
open(10, file='pcp.bin', form='unformatted')
l = 0
do i=1,2
do j=1,2
do k=1,2
print*,k+l*2
pcp(i,j,k)=k+l*2
l = l + 1
enddo
enddo
enddo
do k=1,4
write(10)pcp(:,:,k)
enddo
close(10)
stop
end
私は以下のPythonコードを使用しようとしている:
from scipy.io import FortranFile
f = FortranFile('pcp.bin', 'r')
a = f.read_reals(dtype=float)
print(a)
「[Pythonで直接アクセスするFortranフォーマットされていないファイルを読む]」の複製があります(http://stackoverflow.com/questions/10475839/reading-a-direct-access-fortran-unformatted-file-in-python) –
可能[Python:numpyやscipyを使ってFortranバイナリファイルを読む]の複製(http://stackoverflow.com/questions/30307305/python-reading-fortran-binary-file-using-numpy-or-scipy) – glls
ありがとう私は両方の解決策を試みます。私のFortranコードでは、3つの変数と実際の* 4の精度があります。 – marcelorodrigues