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

📄 myhilbert.m

📁 三谱混合相位子波估计!! 这是我的一篇文章所涉及到的matlab 源代码
💻 M
字号:
function data=myhilbert(data)
% Compute Hilbert transform of input data, If "data" is a matrix, "myhilbert"
% operates on each column 
% Written by: E. R.: December 13, 2003
% Last updated: January 24, 2005: Change polarity of imaginary pa
%
%         data=myhilbert(data)
% INPUT
% data    matrix; each column represents a signal
% OUTPUT
% hdata   matrix; each column represents the Hilbert transform (complex) 
%         of the corresponding column of the input matrix "data"

if ~isreal(data)
   error(' Input data must be real')
end

[data,ndim]=shiftdim(data);  % Make sure that first dimension is not singleton
nsamp=size(data,1);

if nsamp == 1  
   return
end

data=fft(data);
if mod(nsamp,2) == 0        % Nyquist frequency present
   ntr2=nsamp/2+1;
else
   ntr2=(nsamp+1)/2;
end 
%data(1,:)=-data(1,:);
data(1,:)=0;
data(2:ntr2,:)=-2*(data(2:ntr2,:));
data(ntr2+1:end,:)=0;
% hdata=-conj(ifft(data));
data=-ifft(data);
data=shiftdim(data,-ndim); % Undo dimension change, if there was one

⌨️ 快捷键说明

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