资源简介

LMD分解方法,采用b样条包络,其中根据原始程序进行简单改变,希望对大家有帮助

资源截图

代码片段和文件信息

function[PFASI]=lmd2(m)
%最后一个PF是残余分量
%A是瞬时赋值
%SI是纯调频函数,求它的瞬时频率就是需要的频率
c=m;
k=0;
wucha1=0.001;
n_l=nengliang(m);
temp=c;
while 1
    k=k+1;
    a=1;
%     h=c;
%     [pfasi]=zhaochun1(ahwucha1);
    [pfasi]=zhaochun1(acwucha1);    
    if length(pos(pf))>length(pos(temp))
        if k==1
            PF(k:)=temp;
        else
            PF(k:)=c;
            break;
        end

    end
    c=c-pf;
    PF(k:)=pf;
    temp=pf;
    A(k:)=a;
    SI(k:)=si;
    c_pos=pos(c);
    n_c=nengliang(c);
    n_pf=nengliang(pf);
    %停止调节
    %1.emd用的是三次样条求包络,要求至少3个极值点,所以这里c的极值点个数也应该至少为3
    %2.如果上一个PF的极值点数比下一个PF的极值点数少,说明结果也不正确(这个也可以作为停止条件考虑进去)
    %上面一句是否可以等价于当前PF的极值点个数一定要大于等于残量(c)的极值点个数(目前是用这个作为停止条件的一个参考写入程序)
    %3.当前PF分量的能量应该大于残量c的能量(这个有待商榷)
    %4.

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

     文件       1185  2012-11-12 09:17  lmd2.m

     文件         96  2010-12-15 23:40  nengliang.m

     文件        185  2010-12-15 23:44  pos.m

     文件       1216  2010-12-15 23:43  position.m

     文件        921  2012-11-12 09:18  text_lmd.m

     文件       6978  2012-11-08 16:15  zhaochun1.m

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

                10581                    6


评论

共有 条评论