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

📄 max_corr.m

📁 基于Matlab的地震数据处理显示和测井数据显示于处理的小程序
💻 M
字号:
function [lag,cc]=max_corr(ref,b,min_shift,max_shift)
% Function finds best match between vectors "ref" and "b" within the range
% min_shift" and "max_shift"
%         [lag,cc]=max_corr(ref,b,min_shift,max_shift)
% INPUT
% ref        reference trace
% b          trace to be shifted
% min_shift  minimum shift (generally negative)
% max_shift  maximum shift (generally positive)
% OUTPUT
% lag        Lag for best correlation (0 if aligned, negative if b "comes later"
%            than ref)
% cc         correlation coefficient 

% nref=length(ref);
[nb,mb]=size(b);
lag=zeros(mb,1);
if nargout > 1
  cc=zeros(mb,1);
end

nref=norm(ref);

for ii=1:mb
  ccc=corr(ref(:),b(:,ii));
  ncc=length(ccc);
  
% 	Zero lag is at sample nb
  first=min([max([1,nb+min_shift]),ncc]);
  [dummy,lagi]=max(ccc(first:min([max([1,nb+max_shift]),ncc])));
  lag(ii)=lagi-1+first-nb;
  if nargout > 1
    cc(ii)=dummy/(nref*norm(b(:,ii))+eps);
  end
end

⌨️ 快捷键说明

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