求助
t=linspace(-2*pi,2*pi,512);w1=100;w2=3000;RC=;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(['\bf当RC取=',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 assignmentA(I) = B, the number of elements in B and
I must be the same.
[ 本帖最后由 ChaChing 于 2009-8-18 21:51 编辑 ] 注意matlab对向量有行列区别。标准程序一般用列,而RC=是行阵 没有提示error? 那
???In an assignmentA(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 编辑 ]
页:
[1]