ho scritto una matrice in Fortran come segue:come leggere una matrice binaria NxNxN FORTRAN emesso in Python
real(kind=kind(0.0d0)), dimension(256,256,256) :: dense
[...CALCULATION...]
inquire(iolength=reclen)dense
open(unit=8,file=fname,&
form='unformatted',access='direct',recl=reclen)
write(unit=8,rec=1)dense(:,:,:)
close(unit=8)
voglio leggere questo nuovo in Python. Tutto ciò che ho visto è per gli array 2D NxN e non per gli array 3D. In Matlab posso leggere come:
fid = fopen(nfilename,'rb');
mesh_raw = fread(fid,ndim*ndim*ndim,'double');
fclose(fid);
mesh_reshape = reshape(mesh_raw,[ndim ndim ndim]);
Ho solo bisogno l'equivalente in Python - presumibilmente c'è un carico simile/rimodellare strumento a disposizione. Se c'è un modo più amichevole e compatto di scrivere per Python per capire, sono aperto a suggerimenti. Presumibilmente sembrerà qualcosa di this:. Non ho familiarità con la sintassi equivalente per il mio caso. Un buon riferimento sarebbe sufficiente. Grazie.
struct.unpack sembra la strada da percorrere ma non sono sicuro di cosa fare per il mio caso. – Griff
È utile uno di [questi metodi che utilizzano scipy/numpy] (http://www.scipy.org/Cookbook/InputOutput#head-b0de67a6dbb3b1ba2584c65263552dc519225cb1)? –
La soluzione è disponibile qui: http://stackoverflow.com/questions/10475839/reading-a-direct-access-fortran-unformatted-file-in-python – milancurcic