声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3353|回复: 14

[综合讨论] wigner程序

[复制链接]
发表于 2008-12-18 21:03 | 显示全部楼层 |阅读模式

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

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

x
请问wigner分布函数tfrwv的源代码是不是matlab工具箱自带的?怎么才能调用?还是需要自己找源代码的m文件?望有高手指点。非常感谢!:@)
回复
分享到:

使用道具 举报

 楼主| 发表于 2008-12-19 18:59 | 显示全部楼层

wigner程序

谁能给一份tfrwv.m的源程序代码啊?还有wigner-vill的三维图函数代码。迫切需要。谢谢。
发表于 2008-12-19 20:52 | 显示全部楼层
tfrwv.m是时频分析工具箱里的,需要下载,在论坛里找找吧,应该有
至于三维图代码,这里有个简单的例子,你可以参考
  1. %本程序用来演示WVD
  2. sig=fmlin(128,0.1,0.4);%线性调频信号
  3. tfrwv(sig)%产生菜单
  4. [tfr,t,f]=tfrwv(sig);
  5. figure(1)%绘制contour图
  6. contour(t,f,abs(tfr))
  7. xlabel('time/s')
  8. ylabel('frequency/Hz')
  9. title('[WV] contour')
  10. figure(2)%绘制mesh三维图
  11. mesh(t,f,abs(tfr))
  12. xlabel('time/s')
  13. ylabel('frequency/Hz')
  14. zlabel('Ampititude')
  15. title('[WV] mesh')
复制代码

点评

赞成: 5.0
赞成: 5
  发表于 2015-1-4 09:31

评分

1

查看全部评分

发表于 2008-12-21 14:11 | 显示全部楼层

回复 沙发 若菱 的帖子

??? Undefined command/function 'fmlin'
这个是新版本的函数吗?还是自己装的呢?我的7.0找不到。
发表于 2008-12-21 15:52 | 显示全部楼层

回复 板凳 sogooda 的帖子

Matlab R2008a也找不到此函数Reference Page Not Found
 楼主| 发表于 2009-1-1 17:31 | 显示全部楼层

回复 沙发 若菱 的帖子

为什么我运行这个程序有错误无法运行呢?总是提示:
??? Error using ==> tfrview
unsupported matlab version. please send an email.

Error in ==> tfrqview at 176
   tfrview(tfr,sig,t,method,param);

Error in ==> tfrwv at 73
tfrqview(tfr,x,t,'tfrwv');

Error in ==> Untitled4 at 3
tfrwv(sig)%产生菜单
 楼主| 发表于 2009-1-1 17:36 | 显示全部楼层
我下载的tfrwv。m好像也不能用。我的程序是:
N=1024;
fs=1024;
dt=1/fs;
df=fs/N;
t=0:dt:(N-1)*dt;
x=cos(2*pi*30*t+0.5*sin(2*pi*15*t))+sin(2*pi*120*t);
figure(1)
plot(t,x)
figure(2)
[tfr,t,f]=tfrwv(x)
plot(tfr,f)
运行就出错,系统提示:
??? Error using ==> tfrwv
X must have one or two columns

Error in ==> WVDceshi at 15
[tfr,t,f]=tfrwv(x)
这是什么问题?迫切需要高人解答。
发表于 2009-1-1 23:08 | 显示全部楼层
本帖最后由 牛小贱 于 2015-1-4 09:32 编辑

试试这个
  1. N=1024;
  2. fs=1024;
  3. dt=1/fs;
  4. df=fs/N;
  5. t=0:dt:(N-1)*dt;
  6. x=cos(2*pi*30*t+0.5*sin(2*pi*15*t))+sin(2*pi*120*t);
  7. x=x';
  8. figure(1)
  9. plot(t,x)
  10. figure(2)
  11. [tfr,t,f]=tfrwv(x)
  12. plot(tfr,f)
复制代码


评分

1

查看全部评分

发表于 2009-1-2 16:59 | 显示全部楼层
增加个转置 x=x'; 有什么目的呢 ?
发表于 2009-1-2 21:59 | 显示全部楼层

回复 8楼 graduate 的帖子

根据错误提示,将行矩阵转化为列矩阵

评分

1

查看全部评分

 楼主| 发表于 2009-1-3 09:10 | 显示全部楼层
谢谢你的回答。
但请问这个程序最后是不是还要加上坐标的变换才能得到正确的频率和时间坐标轴呢?
谢谢了。:@)
发表于 2009-1-3 09:29 | 显示全部楼层

回复 10楼 zhuxiaoxun 的帖子

不好意思,这个就不清楚啦!
 楼主| 发表于 2009-1-3 09:55 | 显示全部楼层
谢谢唠嗑啊。
我觉得时频工具箱里很多函数都经过归一化处理,所以有些函数出来的结果不对。在其他方法中也出现了这种现象。比如hilbert变换等,这些好像最后都用到了这样一段程序:
[E,t1]=toimage(A,f,t,length(t));
for k=1:size(E,1)
    bjp(k)=sum(E(k,:))*1/fs;  
end
plot(f,bjp);
不知道是不是这个意思。等待大家指教啊。

评分

1

查看全部评分

发表于 2015-1-2 16:53 | 显示全部楼层
这个工具箱需要下载吗
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-5-19 00:36 , Processed in 0.068027 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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