📄 segyout.m
字号:
function segyout(fid,trc,seqno,itr,irec,dt,offset,sdepth,...
selev,relev,xs,ys,xr,yr,cdp,shot)
% segyout(fid,trc,seqno,itr,irec,dt,offset,sdepth,...
% selev,relev,xs,ys,xr,yr,cdp, shot)
%
% fid ... valid file id
% trc ... trace
% seqno ... sequential trace number in the dataset
% itr ... trace number in current gather
% irec ... current gather number in line
% dt ... trace sample rate in seconds or ms
% offset ... source to receiver offset
% sdepth ... source depth
% selev ... surface elevation at source
% relev ... surface elevation at receiver
% xs ... inline coordinate for source
% ys ... crossline coordinate for source
% xr ... inline coordinate for receiver
% yr ... crossline coordinate for receiver
% cdp ... cumulative cdp gather counter for line
% shot ... source number
%
% by G.F. Margrave
% shot parameter added by Darren Foltinek for Promax compatibility
%
% NOTE: It is illegal for you to use this software for a purpose other
% than non-profit education or research UNLESS you are employed by a CREWES
% Project sponsor. By using this software, you are agreeing to the terms
% detailed in this software's Matlab source file.
% BEGIN TERMS OF USE LICENSE
%
% This SOFTWARE is maintained by the CREWES Project at the Department
% of Geology and Geophysics of the University of Calgary, Calgary,
% Alberta, Canada. The copyright and ownership is jointly held by
% its author (identified above) and the CREWES Project. The CREWES
% project may be contacted via email at: crewesinfo@crewes.org
%
% The term 'SOFTWARE' refers to the Matlab source code, translations to
% any other computer language, or object code
%
% Terms of use of this SOFTWARE
%
% 1) Use of this SOFTWARE by any for-profit commercial organization is
% expressly forbidden unless said organization is a CREWES Project
% Sponsor.
%
% 2) A CREWES Project sponsor may use this SOFTWARE under the terms of the
% CREWES Project Sponsorship agreement.
%
% 3) A student or employee of a non-profit educational institution may
% use this SOFTWARE subject to the following terms and conditions:
% - this SOFTWARE is for teaching or research purposes only.
% - this SOFTWARE may be distributed to other students or researchers
% provided that these license terms are included.
% - reselling the SOFTWARE, or including it or any portion of it, in any
% software that will be resold is expressly forbidden.
% - transfering the SOFTWARE in any form to a commercial firm or any
% other for-profit organization is expressly forbidden.
%
% END TERMS OF USE LICENSE
if(dt < .02)
dt=1000000.*dt;
else
dt=1000.*dt;
end
%Note SEGY stores dt in microseconds
if(nargin<16)
shot=1;
end
nsamp=length(trc);
%form the trace header
skip=zeros(1,122);
code=1;
lenunit=1;
fwrite(fid,[seqno skip(1) irec itr shot],'int');
%%% fwrite(fid,skip(1:4),'char'); % Removed to add 'shot', above.
fwrite(fid,cdp,'int');
fwrite(fid,skip(1:4),'char');
fwrite(fid,code,'short');
fwrite(fid,skip(1:6),'char');
fwrite(fid,[offset relev selev sdepth],'int');
fwrite(fid,skip(1:16),'char');
fwrite(fid,ones(1,2),'short');
fwrite(fid,[xs ys xr yr],'int');
fwrite(fid,lenunit,'short');
fwrite(fid,skip(1:24),'char');
fwrite(fid,[nsamp dt],'short');
fwrite(fid,skip(1:122),'char');
%trace header complete
%write out trace
fwrite(fid,trc,'float');
if(rem(seqno,50)==0)
disp([int2str(seqno) 'traces of ' int2str(nsamp) ' samples written']);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -