声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 832|回复: 2

[综合讨论] 求助

[复制链接]
发表于 2009-8-18 18:17 | 显示全部楼层 |阅读模式

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

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

x
t=linspace(-2*pi,2*pi,512);  w1=100;  w2=3000;  RC=[0.01:0.04:1];
x=cos(100*t)+cos(3000*t);

for k=1:length(RC);

   H1(k)=1/(RC(k)*j*w1+1); H2(k)=1/(RC(k)*j*w2+1);
   y(k)=abs(H1(k)).*cos(w1*t+angle(H1(k)))+abs(H2(k)).*cos(w2*t+angle(H2(k)));
   figure(k);
   subplot(2,1,1); plot(t,y(k),'r'); xlabel('\omega'); ylabel('|H(j\omega)|');
   title(['\bfRC=',num2str(RC(k))],'fontsize',15);
   subplot(2,1,2); plot(t,x ,'g'); xlabel('\omega'); ylabel('x(t)');
end
这是一个简单的滤波器 x为原波形  y为经滤波器后的波    题目让找合适的RC值 使x中的高频虑掉   我找了RC从0.01开始到1之间的数  
编出后程序没有提示error  我估计是逻辑错误 可找了半天找不出来  :'(

???  In an assignment  A(I) = B, the number of elements in B and
I must be the same.


[ 本帖最后由 ChaChing 于 2009-8-18 21:51 编辑 ]
回复
分享到:

使用道具 举报

发表于 2009-8-18 18:26 | 显示全部楼层
注意matlab对向量有行列区别。标准程序一般用列,而RC=[0.01:0.04:1]是行阵
发表于 2009-8-18 21:56 | 显示全部楼层
没有提示error? 那
???  In an assignment  A(I) = B, the number of elements in B and
I must be the same.
是什麽!?

abs(H1(k)).*cos(w1*t+angle(H1(k)))+abs(H2(k)).*cos(w2*t+angle(H2(k)))是1*512矩阵, 怎能使用y(k)?

常见的程序出错问题整理 (eight) - 13F
http://forum.vibunion.com/forum/thread-46001-1-1.html

[ 本帖最后由 ChaChing 于 2009-8-18 22:12 编辑 ]
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-29 21:59 , Processed in 0.066698 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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