• 大小: 90KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-07
  • 语言: Matlab
  • 标签: EMD  matlab  

资源简介

三个信号经过叠加,经过EMD分解,得到IMF分量。

资源截图

代码片段和文件信息

function imf=emd(x)
%EMD分解或HHT变换
%返回值为cell类型,依次为一次IMF、二次IMF、...、最后残差
x=transpose(x(:));     %对x进行转置
imf=[];
while~ismonotonic(x) %当x不是单调函数时
    x1=x;
    sd=Inf;%inf是无穷大
    while (sd > 0.1) || ~isimf(x1)  % 当sd>0.1并且不满足isimf(x1)这个条件,循环
        s1 = getspline(x1);         % 极大值点样条曲线
        s2 = -getspline(-x1);       % 极小值点样条曲线
        x2 = x1-(s1+s2)/2;
       
        sd = sum((x1-x2).^2)/sum(x1.^2);
        x1 = x2;
    end
   
    imf{end+1} = x1;
    x= x-x1;
end
imf{end+1} = x;
% 是否单调
function u = ismonotonic(x)
u1 = length(findpeaks(x))*length(findpeaks(-x));
if u1 > 0
    u = 0;
else
    u = 1;
end
% 是否IMF分量
function u = isimf(x)
N  = length(x);
u1 = sum(x(1:N-1).*x(2:N) < 0);                     % 过零点的个数
u2 = length(findpeaks(x))+length(findpeaks(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-09-21 16:59  EMD程序\
     目录           0  2016-09-09 14:25  EMD程序\EMD\
     文件        1090  2016-07-29 17:05  EMD程序\emd.m
     文件       18487  2016-09-14 15:42  EMD程序\emd1.m
     目录           0  2016-09-12 11:31  EMD程序\EMD\复杂中断\
     文件       12200  2010-06-06 19:07  EMD程序\EMD\复杂中断\3435567788.fig
     文件       19815  2016-09-12 11:34  EMD程序\EMD\复杂中断\emd.m
     文件        1133  2010-04-26 23:58  EMD程序\EMD\复杂中断\emdyy.m
     文件        2850  2010-04-26 23:06  EMD程序\EMD\复杂中断\hhspectrum.m
     文件        2299  2010-06-13 00:03  EMD程序\EMD\复杂中断\IMFeg.asv
     文件        2378  2016-09-12 11:31  EMD程序\EMD\复杂中断\IMFeg.m
     文件        3003  2007-06-27 22:12  EMD程序\EMD\复杂中断\toimage.m
     目录           0  2010-06-23 12:28  EMD程序\EMD\复杂暂降(幅值)\
     文件       17417  2010-04-26 23:21  EMD程序\EMD\复杂暂降(幅值)\emd.m
     文件        1133  2010-04-26 23:58  EMD程序\EMD\复杂暂降(幅值)\emdyy.m
     文件        1915  2010-06-16 20:09  EMD程序\EMD\复杂暂降(幅值)\hhspectrum.m
     文件        2292  2010-06-12 18:13  EMD程序\EMD\复杂暂降(幅值)\IMFeg.asv
     文件        1692  2010-06-18 12:25  EMD程序\EMD\复杂暂降(幅值)\IMFeg.m
     文件        1942  2010-06-16 20:09  EMD程序\EMD\复杂暂降(幅值)\toimage.m
     目录           0  2010-06-23 12:28  EMD程序\EMD\复杂暂降(时刻)\
     文件       17417  2010-04-26 23:21  EMD程序\EMD\复杂暂降(时刻)\emd.m
     文件        1133  2010-04-26 23:58  EMD程序\EMD\复杂暂降(时刻)\emdyy.m
     文件        1915  2010-06-16 20:09  EMD程序\EMD\复杂暂降(时刻)\hhspectrum.m
     文件        2292  2010-06-12 18:13  EMD程序\EMD\复杂暂降(时刻)\IMFeg.asv
     文件        1632  2010-06-17 21:09  EMD程序\EMD\复杂暂降(时刻)\IMFeg.m
     文件        1942  2010-06-16 20:09  EMD程序\EMD\复杂暂降(时刻)\toimage.m
     目录           0  2016-09-19 11:27  EMD程序\EMD\复杂谐波\
     文件       17417  2010-04-26 23:21  EMD程序\EMD\复杂谐波\emd.m
     文件        1133  2010-04-26 23:58  EMD程序\EMD\复杂谐波\emdyy.m
     文件        1916  2010-06-16 20:10  EMD程序\EMD\复杂谐波\hhspectrum.m
     文件        1626  2010-06-16 20:10  EMD程序\EMD\复杂谐波\IMFeg.m
............此处省略22个文件信息

评论

共有 条评论