reading unformatted fortran file in matlab - which precision?
        Posted  
        
            by 
                Griff
            
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by Griff
        
        
        
        Published on 2012-11-27T23:02:50Z
        Indexed on 
            2012/11/27
            23:03 UTC
        
        
        Read the original article
        Hit count: 350
        
I have just written out a file:
 real*8                         :: vol_cel
 real*8, dimension(256,256,256) :: dense
[... some operations]
open(unit=8,file=fname,form="unformatted")
write(8)dense(:,:,:)/vol_cell
close(8)
dense and vol_cell are real*8 variables. My code to read this in in Matlab:
fid = fopen(fname,'r');
mesh_raw = fread(fid,256*256*256,'double');
fclose(fid);
The min and max values clearly show that it is not reading it in correctly (Min is 0 and max is a largish positive real*8).
min =
   3.3622e+38
max =
  -3.3661e+38
What precision do I need to set in Matlab to make it read in the unformatted Fortran file?
A somewhat related question: This Matlab code I am using reads binary files OK but not unformatted files. Though I am generating this new data on my Mac OSX using gfortran. It doesn't recognize form="binary" so I can't do it that way. Do I need to add some library?
© Stack Overflow or respective owner