哪位哥哥给解释一下这几个小脚本怎么修改!!急!急!急!
:@Q 1》》选择合适的窗函数设计一个FIR数字低通滤波器,要求:通带截至频率为w =0.2 ,R =0.25dB;阻带截至频率为w =0.3 ,A =50dB。求脉冲响应并描绘一张滤波器的频率响应图wp=0.2*pi;ws=0.3*pi; %输入设计指标
tr_width=ws-wp; %计算过渡带的宽度
M=ceil(6.6*pi/ tr_width)+1; %由海明窗的过渡带宽度选择合适的阶数
n=;
wc=(ws+wp)/2; %理想低通的截止频率(取平均值)
hd=ideal_lp(wc,M); %理想低通滤波器冲激响应
w_ham=(haming(M))’;
h=hd .* w_ham; %给理想低通加海明窗
= freqz_m(h,); %求出幅频响应
delta_w=2*pi/1000;
Rp=-(min(db(1:1:wp/delta_w+1))); %检验通带波动
As=-round(max(db(ws/delta_w+1:1:501)));%检验最小阻带衰减
% plots(绘图)
subplot﹙2,2,1﹚,stem﹙n,hd﹚; title('Ideal Impulse Response');
axis﹙0 M-1 -0.1 0.3﹚;xlabel﹙'n'﹚;ylabel('hd(n)');
subplot﹙2,2,2﹚;stem﹙n,w_ham);title('Hamming Window') ;
axis﹙﹚; xlabel﹙'n'﹚;ylabel('w(n)');
subplot﹙2,2,3﹚;stem﹙n,h﹚; title('Actual Impulse Response');
axis﹙﹚; xlabel﹙'n'﹚;ylabel('h(n)');
subplot﹙2,2,4﹚;plot(w/pi,db);title('Magnitude Response in dB');grid
axis﹙﹚; xlabel﹙'frequency in pi units'﹚;
ylabel('Decibels');
??? Undefined command/function 'ideal_lp'.
2》》用MATLAB的关系运算式来产生单位阶跃序列u﹙n﹚。
n1=-2;n2=8;n0=0;
n=n1:n2; %生成离散信号的时间序列
x=; %生成离散信号x﹙n﹚
stem﹙n,x, 'filled'﹚;
axis﹙﹚;
title﹙'单位阶跃序列'﹚;
xlabel﹙'时间﹙n﹚'﹚;ylabel﹙'幅度x﹙n﹚'﹚;
??? stem﹙n,x, 'filled'﹚;
|
Error: Missing variable or function.
3》》编写产生a=1/2和a=2实指数连续信号和离散序列的程序
n1=-10;n2=10;a1=0.5;a2=2;
na1=n1:0;x1=a1.^na1;
na2=0:n2;x2=a2.^na2;
subplot﹙2,2,1﹚,plot﹙na1,x1﹚;
title﹙'实指数原信号﹙a<1﹚'﹚;
subplot﹙2,2,3﹚,stem﹙na1,x1, 'filled'﹚;
title﹙'实指数原信号﹙a<1﹚'﹚;
subplot﹙2,2,2﹚,plot﹙na2,x2﹚;
title﹙'实指数原信号﹙a>1﹚'﹚;
subplot﹙2,2,4﹚, stem﹙na2,x2, 'filled'﹚;
title﹙'实指数原信号﹙a>1﹚'﹚;
??? na1=n1:0;x1=a1.^na1;
|
Error: Missing variable or function.
还有很多这样的例子,好久都没弄明白!不管怎么弄,就是不出图xiang!!!! 先支持一下楼主:lol
回复 楼主 mjlt11 的帖子
第一个缺少函数 ideal_lp第二个^应为英文状态下的半角符号,你写的是全角符号。包括之后的单引号 friendchj那麻烦你给把第一个改下好吗?
另外n1=30;a=-0.1;w=0.6;
n=0:n1;
x=exp( ( a+j*w )*n);
subplot(2,2,1);plot(n,real(x);
title('复指数原信号的实部');
subplot(2,2,3);stem(n,real(x), 'filled');
title('复指数原序列的实部)');
subplot(2,2,2);plot(n,imag(x));
title('复指数原信号的虚部)');
subplot(2,2,4);stem(n, imag(x) , 'filled');
title('复指数原信号的虚部');
??? x=exp( ( a+j*w )*n);
|
Error: Missing variable or function. 怎么改??
回复 地板 mjlt11 的帖子
第一个,关于函数ideal_lp,你的程序的出处应该有;第二个,把中文括号改成英文括号。 ideal_lp书上没有,不骗你!
[ 本帖最后由 ChaChing 于 2009-5-27 14:21 编辑 ] clc
clear
n1=30;a=-0.1;w=0.6;
n=0:n1;
x=exp((a+j*w)*n);
subplot(2,2,1);plot(n,real(x));
title('复指数原信号的实部');
subplot(2,2,3);stem(n,real(x), 'filled');
title('复指数原序列的实部)');
subplot(2,2,2);plot(n,imag(x));
title('复指数原信号的虚部)');
subplot(2,2,4);stem(n, imag(x) , 'filled');
title('复指数原信号的虚部'); 关于ideal_lp,网上搜了一个
%%%%%%%%%%%%%%%%%%%
function hd = ideal_lp(wc,M);
% Ideal LowPass filter computation
% --------------------------------
% = ideal_lp(wc,M)
%hd = ideal impulse response between 0 to M-1
%wc = cutoff frequency in radians
% M = length of the ideal filter
%
alpha = (M-1)/2;
n = ;
m = n - alpha + eps;
hd = sin(wc*m) ./ (pi*m); 笫2个中是'filled'的引号用了汉字的;
笫3个中是^用了汉字的;
笫1个的函数ideal_lp给你如下:
function hd=ideal_lp(wc, M);
%Ideal Lowpass filter computation
alpha=(M-1)/2;
n=;
m=n-alpha+eps;
hd=sin(wc*m)./(pi*m);
页:
[1]