⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fx_arma.m

📁 matlab源代码
💻 M
字号:
function [Dout] = fx_arma(Din,p,flow,fhigh,dt,mu);%FX_ARMA: ARMA model based projection filter.%%  [Dout = fx_arma(Din,p,flow,fhigh,dt,mu);%%  IN   Din:   input data matrix, columns are traces%       p:     lenght of arma(p,p) model%       flow:  min  freq. in the data in Hz%       fhigh: max  freq. in the data in Hz%       dt:    sampling interval in sec%       mu:    pre-whitening in percent (if too large there%              is no noise attenuation, if too small both%              noise and clean signal are attenuated)%%  OUT  Dout:  filtered data%%  Example: %          [d] = linear_events; d = d +0.3*randn(size(d));%          [dc] = fx_arma(d,2,0.1,120.,0.004,0.1); %          wigb([d,dc,d-dc]); %%%  Author(s): M.D.Sacchi (sacchi@phys.ualberta.ca)%  Copyright 1988-2003 SeismicLab%  Revision: 1.2  Date: Dec/2002 %  %  Signal Analysis and Imaging Group (SAIG)%  Department of Physics, UofA%%[nt,nh]=size(Din);nf = 2^nextpow2(nt);Din = fft(Din,nf,1);Dout = zeros(nf,nh);i = sqrt(-1);ilow  = floor(flow*dt*nf)+1; if ilow<1; ilow=1;end;ihigh = floor(fhigh*dt*nf)+1;if ihigh>floor(nf/2)+1; ihigh=floor(nf/2)+1;endfor k=ilow:ihighy = Din(k,:)';[s,w,g] = eigen_filtering(y,p,mu);Dout(k,:) = s';end;for k=nf/2+2:nf;Dout(k,:) = conj(Dout(nf-k+2,:));endDout = real(ifft(Dout,[],1));Dout = Dout(1:nt,:); return

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -