%------------------------------------------------ % ReadSac % read a sac binary file % RJM 2008 function [data, delta, rayp, npts] = ReadSac(name) fid = fopen(name,'rb'); if fid == -1 error(sprintf('Could not open SAC file %s')) end % read floats float_array = fread(fid, 70, 'float'); delta = float_array(1); stla = float_array(32); stlo = float_array(33); evla = float_array(36); evlo = float_array(37); rayp = float_array(49); dist = float_array(51); az = float_array(52); baz = float_array(53); cmpaz = float_array(58); cmpinc = float_array(59); % read ints int_array = fread(fid, 41, 'int32'); nzyear = int_array(1); nzday = int_array(2); nzhour = int_array(3); nzmin = int_array(4); nzsec = int_array(5); nzmsec = int_array(6); npts = int_array(10); % read chars char_array = fread(fid, 8*24, 'char'); % fseek(3, 632, 'bof'); % read the data data = fread(fid, npts, 'float'); % end function %------------------------------------------------