声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1253|回复: 3

[小波] 小波脊算法程序

[复制链接]
发表于 2007-12-23 09:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
给大家发个脊算法的程序看看
clear
clc
%%%%测试信号一%%%%%
f1=0.80;f2=0.60;f3=0.50;f4=1.55;
a1=0.50;a2=0.40;a3=0.50;a4=1.60;
zn1=-0.13;zn2=-0.14;zn3=-0.080;zn4=-0.078;
ts=1/100;
t=0:ts:10;

t1end=3;
t1=0:ts:t1end;
sc1=a1.*exp(zn1.*t1).*cos(2.*pi.*f1.*t1);
% plot(sc1)
t2end=10;
t2=t1end:ts:t2end;
xw2=acos((a1.*exp(zn1.*t1end).*cos(2.*pi.*f1.*t1end))./(a2.*exp(zn2.*t1end)))-2.*pi.*f2.*t1end;
sc2=a2.*exp(zn2.*t2).*cos(2.*pi.*f2.*t2-xw2);
% plot(sc2)
t3end=15;
t3=t2end:ts:t3end;
xw3=acos((a2.*exp(zn2.*t2end).*cos(2.*pi.*f2.*t2end-xw2))./(a3.*exp(zn3.*t2end)))-2.*pi.*f3.*t2end;
sc3=a3.*exp(zn3.*t3).*cos(2.*pi.*f3.*t3-xw3);

%t=[t1 t2];
%s1=[sc1 sc2];
%%%%%%%%%%%%%%%%%%%
%noise=0.05*randn(size(t));
%s=s1+noise;
%信噪比
%Q=10*log(std(s)/std(noise));
u=sc1;
%subplot(211)
%plot(t,u);
%subplot(212)
t=t1;

%小波脊算法
%%%初始化%%%%
aar=zeros((length(u)-1),1);
aa=350;erro=0.001;
aar(1)=aa;
w0=2*pi*centfrq('cmor2-9/pi');
k=2;
%%%%%%%%%%%%%
judge2=1;
while judge2==1
    judge1=1;nn=1;
    while judge1==1&&nn<20
        c=cwt(u,aa,'cmor2-9/pi');
        cc=angle(c);
        aa1=abs(w0/(cc(k)-cc(k-1)));
        %条件1判断
        if abs((aa1-aa)/aa)<erro
            judge1=0;
        else
            aa=aa1;
        end
        nn=nn+1;
    end
    aar(k)=aa1;
    if k<length(u)
        aa=aar(k);
        k=k+1;
    else
        judge2=0;
    end
end
plot(aar);
回复
分享到:

使用道具 举报

发表于 2007-12-23 10:13 | 显示全部楼层

回复 #1 kevin19821 的帖子

你用的是模极值算法吧?有crazy climber算法么?
发表于 2007-12-23 16:22 | 显示全部楼层

回复 #1 kevin19821 的帖子

你的算法有点问题,结果显示不出来啊???
 楼主| 发表于 2007-12-24 08:48 | 显示全部楼层
cwt中的aa定义有问题
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-14 18:57 , Processed in 0.057453 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表