• 大小: 8KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: 其他
  • 标签: matlab  

资源简介

包含最小平方反褶积,预测反褶积,稀疏脉冲反褶积,尖脉冲反褶积

资源截图

代码片段和文件信息

function [w_min] = kolmog(wtype_of_inputL);  
%KOLMOG: Kolmogoroff spectral factorization.
%        Given a wavelet this function retrieves the minimum 
%        phase wavelet using Kolmogoroff factorization.
%        If the input is a trace the spectral factorization
%        is applied to the autocorrelation after smoothing.
%
%  [w_min] = kolmog(wtype_of_inputL)
%
%  IN   w:     a wavelet of arbitrary phase if
%              type_of_input = ‘w‘ 
%              or a seismic trace if 
%              type_of_input = ‘t‘
%       L:     lenght of wavelet if type_of_input=‘t‘
%
%  OUT  w_min: a min phase wavelet 
%
%  Reference: Claerbout 1976 Fundamentals of geophysical data processing 
%     
%  Example:
%
%    w = [1;2;-1;0;0;0;0]
%    wmin = kolmog(w‘w‘);
%    subplot(221); stem(w);
%    subplot(222); stem(wmin);
%
%  Copyright (C) 2008 Signal Analysis and Imaging Group
%  For more information: http://www-geo.phys.ualberta.ca/saig/SeismicLab
%  Author: M.D.Sacchi
%
%  This program is free software: you can redistribute it and/or modify
%  it under the terms of the GNU General Public License as published
%  by the Free Software Foundation either version 3 of the License or
%  any later version.
%
%  This program 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 General Public License for more details: http://www.gnu.org/licenses/
%



 [n1n2]=size(w);

 if n2~=1; 
  error(‘Input wavelet or trace must be a column vector‘);
 end;

if isequal(type_of_input‘w‘)

 nw = length(w); 
 nfft = 8*( 2^nextpow2(nw));
 W = log ( abs(fft(wnfft)) +0.00001);
 W = ifft(W);
 for k=nfft/2+2:nfft; 
  W(k)=0.;
 end;
 W = 2.*W;
 W(1) =W(1)/2.;
 W = exp(fft(W)) ;
 w_min = real(ifft(W));
 w_min = w_min(1:nw); 

else;

 nt = length(w);   
 nfft = 8*( 2^nextpow2(nt));
 nw = L;
 A = xcorr(wwL);
 A = A.*hamming(2*L+1);
 W = log ( sqrt(abs(fft(Anfft))) +0.00001);
 W = ifft(W);
 for k=nfft/2+2:nfft; W(k1)=0.;end;
 W = 2.*W;
 W(11) =W(11)/2.;
 W = exp(fft(W)) ;
 w_min = real(ifft(W));
 w_min = w_min(1:nw1); 
 w_min_max = max(abs(w_min));
 w_min = w_min/w_min_max;
end;

return


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2243  2018-10-22 14:54  decon\kolmog.m

     文件       2189  2018-10-22 14:54  decon\ls_inv_filter.m

     文件       1230  2018-10-22 14:54  decon\polar_plot.m

     文件       1957  2018-10-22 14:54  decon\predictive.m

     文件       2228  2018-10-22 14:54  decon\smooth_spectrum.m

     文件       2247  2018-10-22 14:54  decon\sparse_decon.m

     文件       2268  2018-10-22 14:54  decon\spiking.m

     文件        941  2018-10-22 14:54  decon\zeros_wav.m

     目录          0  2018-10-22 14:54  decon

----------- ---------  ---------- -----  ----

                15303                    9


评论

共有 条评论