1.試用Matlab計(jì)算其幅頻特性和相頻特性,并繪圖。
代碼:
n = 0:10; %定義采樣點(diǎn)n
w = [0:1:500]*2*pi/500; % [0,pi]軸被分成1002個(gè)點(diǎn)
x1 = power(0.9*exp(1i*pi/3),n); %定義輸入序列
x2 = exp(-1i*n); %定義一個(gè)系統(tǒng)的沖激響應(yīng)
x = zeros(1,length(w)); %定義空數(shù)組存儲(chǔ)系統(tǒng)的頻域響應(yīng)
for i=1:length(x1)
??? x=x+(x1(i)*power(x2(i),w)); %DTFT變換
end %頻域相應(yīng)x
H=x; %頻域相應(yīng)H
magH = abs(H); angH = angle(H); %幅頻特性和相頻特性
%在上方圖窗進(jìn)行繪圖
subplot(2,1,1); plot(w/pi,magH); grid;
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('|H|');
title('Magnitude Response');
%在下方圖窗進(jìn)行繪圖
subplot(2,1,2); plot(w/pi,angH/pi);grid;
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('Phase in pi Radians');
title('Phase Response');
運(yùn)行結(jié)果:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-791864.html
代碼:
n = -10:10; %定義采樣點(diǎn)n
w = [0:1:500]*2*pi/500; % [0,pi]軸被分成1002個(gè)點(diǎn)
x1 = power(0.9,n); %定義輸入序列
x2 = exp(-1i*n); %定義一個(gè)系統(tǒng)的沖激響應(yīng)
x = zeros(1,length(w)); %定義空數(shù)組存儲(chǔ)系統(tǒng)的頻域響應(yīng)
for i=1:length(x1)
??? x=x+(x1(i)*power(x2(i),w));%DTFT變換
end %頻域相應(yīng)x
H=x; %頻域相應(yīng)H
magH = abs(H); angH = angle(H); %幅頻特性和相頻特性
%在上方圖窗進(jìn)行繪圖
subplot(2,1,1); plot(w/pi,magH); grid;
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('|H|');
title('Magnitude Response');
%在下方圖窗進(jìn)行繪圖
subplot(2,1,2); plot(w/pi,angH/pi);grid;
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('Phase in pi Radians');
title('Phase Response');
運(yùn)行結(jié)果:
代碼:
w = [0:1:500]*2*pi/500; %[0, pi]軸被分成1002個(gè)點(diǎn)
x=(0.5.*exp(-1i*w)).^(-2)+(0.5.*exp(-1i*w)).^(-1)+1;%信號(hào)的DTFT變換
magH= abs(x3); angH = angle(x3);%幅頻特性和相頻特性
%在上方圖窗繪圖
subplot(2,1,1); plot(w/pi,magH); grid;
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('|H|');
title('Magnitude Response');
%在下方圖窗繪圖
subplot(2,1,2); plot(w/pi,angH/pi); grid;
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('Phase in pi Radians');
title('Phase Response');
運(yùn)行結(jié)果:
2.根據(jù)系統(tǒng)的單位沖擊響應(yīng),用Matlab繪制系統(tǒng)的幅頻特性和相頻特性,且當(dāng)
時(shí)單位沖擊響應(yīng)和單位階躍響應(yīng)。
代碼1:
b = [1, 1, 1, 1, 1, 1]; %濾波器系數(shù)數(shù)組b
a = [5];%濾波器系數(shù)數(shù)組a
m = 0:length(b)-1; l = 0:length(a)-1; % 索引數(shù)組m和l
K = 500; k = 0:1:K; %頻率的索引數(shù)組k
w = pi*k/K; %將[0, pi]范圍分為501個(gè)點(diǎn)
num = b * exp(-j*m'*w); %頻率響應(yīng)的分子計(jì)算
den = a * exp(-j*l'*w); %頻率響應(yīng)的分母計(jì)算
H = num ./ den; %頻率響應(yīng)H
magH = abs(H); angH = angle(H); %幅頻特性和相頻特性
%在上方圖窗繪圖
subplot(2,1,1); plot(w/pi,magH); grid; axis([0,1,0,1]);
%設(shè)置橫縱坐標(biāo)以及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('|H|');title('Magnitude Response');
%在下方圖窗繪圖
subplot(2,1,2); plot(w/pi,angH/pi); grid
%設(shè)置橫縱坐標(biāo)以及標(biāo)題內(nèi)容
xlabel('frequency in pi units');ylabel('Phase in pi Radians');
title('Phase Response');
運(yùn)行結(jié)果1:
代碼2:
a = [5]; %濾波器系數(shù)數(shù)組a
b = [1, 1, 1, 1, 1, 1]; %濾波器系數(shù)數(shù)組b
n = [-5:10]; %定義n的范圍
h = impz(b,a,n); %計(jì)算單位沖擊響應(yīng)
subplot(2,1,1); stem(n,h,'k');%在上方圖窗繪圖
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
title('Impulse Response'); xlabel('n'); ylabel('h(n)')
x = stepseq(0,-5,10);%計(jì)算單位階躍響應(yīng)
s2 = filter(b,a,x);%對(duì)單位階躍響應(yīng)進(jìn)行濾波
%在下方圖窗繪圖
subplot(2,1,2); stem(n,s2,'k'); axis([-5,10,0,1.5])
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
title('Step Responsevby by filter function');xlabel('n'); ylabel('s(n)');
運(yùn)行結(jié)果2:
代碼1:
b = [1, 0, -1]; %濾波器系數(shù)數(shù)組b
a = [1, -0.95, -0.9025];%濾波器系數(shù)數(shù)組a
m = 0:length(b)-1; l = 0:length(a)-1; % 索引數(shù)組m和l
K = 500; k = 0:1:K; %頻率的索引數(shù)組k
w = pi*k/K; %將[0, pi]范圍分為501個(gè)點(diǎn)
num = b * exp(-j*m'*w); %頻率響應(yīng)的分子計(jì)算
den = a * exp(-j*l'*w); %頻率響應(yīng)的分母計(jì)算
H = num ./ den; %頻率響應(yīng)H
magH = abs(H); angH = angle(H); % 幅頻特性和相頻特性
%在上方圖窗繪圖
subplot(2,1,1); plot(w/pi,magH); grid; axis([0,1,0,1]);
%設(shè)置橫縱坐標(biāo)以及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('|H|');title('Magnitude Response');
%在下方圖窗繪圖
subplot(2,1,2); plot(w/pi,angH/pi); grid
%設(shè)置橫縱坐標(biāo)以及標(biāo)題內(nèi)容
xlabel('frequency in pi units');ylabel('Phase in pi Radians');
title('Phase Response');
運(yùn)行結(jié)果1:
代碼2:
a = [1, -0.95, -0.9025]; %濾波器系數(shù)數(shù)組a
b = [1, 0, -1]; %濾波器系數(shù)數(shù)組b
n = [-5:10]; %定義n的范圍
h = impz(b,a,n); %計(jì)算單位沖擊響應(yīng)
%在上方圖窗繪圖
subplot(2,1,1); stem(n,h,'k');axis([-5,10,0,35]);
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
title('Impulse Response'); xlabel('n'); ylabel('h(n)')
x = stepseq(0,-5,10);%計(jì)算單位階躍響應(yīng)
s2 = filter(b,a,x);%對(duì)單位階躍響應(yīng)進(jìn)行濾波
%在下方圖窗繪圖
subplot(2,1,2); stem(n,s2,'k');
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
title('Step Responsevby by filter function');xlabel('n'); ylabel('s(n)');
運(yùn)行結(jié)果2:
3.LTI的差分方程如下,用Matlab繪制系統(tǒng)的幅頻特性和相頻特性,并求解下列輸入序列的穩(wěn)態(tài)響應(yīng)。
代碼:
b = [1, 0, 1, 0, 1, 0, 1]; %濾波器系數(shù)數(shù)組b
a = [2, 0, 0.81, 0, 0.6561, 0, 0.531441];%濾波器系數(shù)數(shù)組a
m = 0:length(b)-1; l = 0:length(a)-1; % 索引數(shù)組m和l
K = 500; k = 0:1:K; %頻率的索引數(shù)組k
w = pi*k/K; %將[0, pi]范圍分為501個(gè)點(diǎn)
num = b * exp(-j*m'*w); %頻率響應(yīng)的分子計(jì)算
den = a * exp(-j*l'*w); %頻率響應(yīng)的分母計(jì)算
H = num ./ den; %頻率響應(yīng)H
magH = abs(H); angH = angle(H); % 幅頻特性和相頻特性
%在上方圖窗繪圖
subplot(2,1,1); plot(w/pi,magH); grid; axis([0,1,0,1]);
%設(shè)置橫縱坐標(biāo)以及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('|H|');title('Magnitude Response');
%在下方圖窗繪圖
subplot(2,1,2); plot(w/pi,angH/pi); grid
%設(shè)置橫縱坐標(biāo)以及標(biāo)題內(nèi)容
xlabel('frequency in pi units'); ylabel('Phase in pi Radians');
title('Phase Response');
運(yùn)行結(jié)果:
輸入序列為:
代碼:
b = [1, 0, 1, 0, 1, 0, 1]; %濾波器系數(shù)數(shù)組b
a = [2, 0, 0.81, 0, 0.6561, 0, 0.531441];%濾波器系數(shù)數(shù)組a
n = 0:50;%定義n的取值
x = 5 + 10 * power(-1, n); %定義輸入序列
y = filter(b,a,x); %計(jì)算穩(wěn)態(tài)響應(yīng)
%繪制圖形
stem(n, y, 'g' ,'filled');
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('n');ylabel('y(n)');
title('5 + 10 * (-1)^n 的穩(wěn)態(tài)響應(yīng)');
運(yùn)行結(jié)果:
代碼:
b = [1, 0, 1, 0, 1, 0, 1]; %濾波器系數(shù)數(shù)組b
a = [2, 0, 0.81, 0, 0.6561, 0, 0.531441];%濾波器系數(shù)數(shù)組a
n = 0:50;%定義n的取值
x = 1 + cos(0.5*pi*n + 1/(2*pi)); %定義輸入序列
y = filter(b,a,x); %計(jì)算穩(wěn)態(tài)響應(yīng)
%繪制圖形
stem(n, y, 'r','filled');
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('n');ylabel('y(n)');
title('1 + cos(0.5*pi*n + 1/(2*pi))的穩(wěn)態(tài)響應(yīng)');
運(yùn)行結(jié)果:
代碼:
b = [1, 0, 1, 0, 1, 0, 1]; %濾波器系數(shù)數(shù)組b
a = [2, 0, 0.81, 0, 0.6561, 0, 0.531441];%濾波器系數(shù)數(shù)組a
n = 0:50;%定義n的取值
x = 2*sin(n*pi/4) + 3*cos(3*pi*n/4); %定義輸入序列
y = filter(b,a,x); %計(jì)算穩(wěn)態(tài)響應(yīng)
%繪制圖形
stem(n, y, 'p','filled');
%設(shè)置橫縱坐標(biāo)及標(biāo)題內(nèi)容
xlabel('n');ylabel('y(n)');
title('2*sin(n*pi/4) + 3*cos(3*pi*n/4)的穩(wěn)態(tài)響應(yīng)');
運(yùn)行結(jié)果:
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-791864.html
到了這里,關(guān)于數(shù)字信號(hào)處理實(shí)驗(yàn)---LSI系統(tǒng)的分析 Matlab代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!