📄 flat.m,v
字号:
head 3.0;access;symbols;locks; strict;comment @// @;3.0date 2000.06.13.19.20.16; author gilles; state Exp;branches;next 2.0;2.0date 99.05.21.18.45.35; author mah; state Exp;branches;next 1.1;1.1date 99.01.06.19.09.03; author kay; state Exp;branches;next ;desc@@3.0log@Release 3@text@function [dataout]=flat(datain,flt_time,headw1)%%function [dataout]=flat(datain,flt_time,headw1)%%The funcion flat an the times stored in a header number to a desired time%%The flat function a seismic matrix with the flattened data%Input arguments are:%datain= input data in official DSI format%flt_time= time at which to flat data in seconds%headw1= header word containing the picked times of the horizon%%DSI customized VSP processing software%written by G. Perron%$Id: flat.m,v 2.0 1999/05/21 18:45:35 mah Exp gilles $%$Log: flat.m,v $%Revision 2.0 1999/05/21 18:45:35 mah%Release 2%%Revision 1.1 1999/01/06 19:09:03 kay%Initial revision%%%Copyright (C) 1998 Seismology and Electromagnetic Section/%Continental Geosciences Division/Geological Survey of Canada%%This library is free software; you can redistribute it and/or%modify it under the terms of the GNU Library General Public%License as published by the Free Software Foundation; either%version 2 of the License, or (at your option) any later version.%%This library is distributed in the hope that it will be useful,%but WITHOUT ANY WARRANTY; without even the implied warranty of%MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU%Library General Public License for more details.%%You should have received a copy of the GNU Library General Public%License along with this library; if not, write to the%Free Software Foundation, Inc., 59 Temple Place - Suite 330,%Boston, MA 02111-1307, USA.%%DSI Consortium%Continental Geosciences Division%Geological Survey of Canada%615 Booth St.%Ottawa, Ontario%K1A 0E9%%email: dsi@@cg.nrcan.gc.cadisp('[dataout]=flat(datain,flt_time,headw1)');n=datain.fh{7}; %number of points per tracedataout=datain;%time_num=find(datain.time==flt_time);time_num=round(flt_time./datain.fh{8});for COUNT=1:datain.fh{12} %loop over records m=datain.th{COUNT}(12,1); %number of traces in a record dataout.dat{COUNT}=zeros(n,m); trc_num=round(datain.th{COUNT}(headw1,:)/datain.fh{8})+1; diff_num=trc_num-time_num; for i=1:m if diff_num(i) > 0 dataout.dat{COUNT}(1:n-diff_num(i)+1,i)=datain.dat{COUNT}(diff_num(i):n,i); elseif diff_num(i) < 0 dataout.dat{COUNT}(diff_num(i)*(-1):n,i)=datain.dat{COUNT}(1:n-(diff_num(i)*(-1)-1),i); elseif diff_num(i) == 0 dataout.dat{COUNT}(:,i)=datain.dat{COUNT}(:,i); end endend %loop over records@2.0log@Release 2@text@d16 1a16 1%$Id: flat.m,v 1.1 1999/01/06 19:09:03 kay Exp mah $d18 3@1.1log@Initial revision@text@d16 4a19 2%$Id:$%$Log:$d21 1@
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -