声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2571|回复: 2

[综合讨论] MATLAB中rectwin函数该如何应用 在频谱中???

[复制链接]
发表于 2017-2-17 09:13 | 显示全部楼层 |阅读模式

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

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

x

频谱X已知如下

B=[1 -0.5];
A =[1 0];
[X,w]=freqz(B,A,401,'whole');

他的频率范围是0到6.2675,中间频率是3.1338(因为一共有401个点)。
以中间频率为中心加窗函数,当窗口的N=1时,只是截取的3.1338这个频率,Yn的频谱就只有这一个点;当窗口的N=3时,截取的是3.1338这个频率和他两边的两个点,Yn的频谱就有三个点。直到N=401(即N=1:2:401);每个Yn的能量记为E(求E的方法是yn=ifft(Yn),E=sum(yn.^2)),编程实现E随N变化的函数
回复
分享到:

使用道具 举报

发表于 2017-2-17 09:14 | 显示全部楼层
  1. B=[1 -0.5];
  2. A =[1 0];
  3. [X,w]=freqz(B,A,401,'whole');

  4. Y=zeros(200,401);
  5. for i=1:200
  6.     Y(i,201-i:199+i)=X(201-i:199+i);
  7. end
  8. 这段代码,给你展示了如何截取一个数组中的一部分。你用这个改成函数应该是没问题的吧?
复制代码






发表于 2017-6-11 18:56 | 显示全部楼层
学习了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-12-1 07:43 , Processed in 0.072860 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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