信号与系统MATLAB基本实验.docx

上传人:b****6 文档编号:16616478 上传时间:2023-07-15 格式:DOCX 页数:29 大小:199.22KB
下载 相关 举报
信号与系统MATLAB基本实验.docx_第1页
第1页 / 共29页
信号与系统MATLAB基本实验.docx_第2页
第2页 / 共29页
信号与系统MATLAB基本实验.docx_第3页
第3页 / 共29页
信号与系统MATLAB基本实验.docx_第4页
第4页 / 共29页
信号与系统MATLAB基本实验.docx_第5页
第5页 / 共29页
信号与系统MATLAB基本实验.docx_第6页
第6页 / 共29页
信号与系统MATLAB基本实验.docx_第7页
第7页 / 共29页
信号与系统MATLAB基本实验.docx_第8页
第8页 / 共29页
信号与系统MATLAB基本实验.docx_第9页
第9页 / 共29页
信号与系统MATLAB基本实验.docx_第10页
第10页 / 共29页
信号与系统MATLAB基本实验.docx_第11页
第11页 / 共29页
信号与系统MATLAB基本实验.docx_第12页
第12页 / 共29页
信号与系统MATLAB基本实验.docx_第13页
第13页 / 共29页
信号与系统MATLAB基本实验.docx_第14页
第14页 / 共29页
信号与系统MATLAB基本实验.docx_第15页
第15页 / 共29页
信号与系统MATLAB基本实验.docx_第16页
第16页 / 共29页
信号与系统MATLAB基本实验.docx_第17页
第17页 / 共29页
信号与系统MATLAB基本实验.docx_第18页
第18页 / 共29页
信号与系统MATLAB基本实验.docx_第19页
第19页 / 共29页
信号与系统MATLAB基本实验.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

信号与系统MATLAB基本实验.docx

《信号与系统MATLAB基本实验.docx》由会员分享,可在线阅读,更多相关《信号与系统MATLAB基本实验.docx(29页珍藏版)》请在冰点文库上搜索。

信号与系统MATLAB基本实验.docx

信号与系统MATLAB基本实验

《信号与系统MATLAB实践》第一次上机作业

实验一、熟悉MATLAB基本操作

三、基本序列运算

1.数组的加减乘除和乘方运算

A=[123];

B=[456];

C=A+B;

D=A-B;

E=A.*B;

F=A./B;

G=A.^B;

subplot(2,4,1);stem(A)

subplot(2,4,2);stem(B)

subplot(2,4,3);stem(C)

subplot(2,4,4);stem(D)

subplot(2,4,5);stem(E)

subplot(2,4,6);stem(F)

subplot(2,4,7);stem(G)

2.绘制函数波形

(1)t=0:

:

10

x=3-exp(-t);

plot(t,x)

ylabel('f(t)');

xlabel('t');

title('

(1)');

(2)t=0:

:

10

x=5*exp(-t)+3*exp(-2*t);

plot(t,x)

ylabel('f(t)');

xlabel('t');

title('

(2)');

(3)t=0:

:

3

x=exp(-t).*sin(2*pi*t);

plot(t,x)

ylabel('f(t)');

xlabel('t');

title('(3)');

(4)t=0:

:

3

x=sin(3*t)./(3*t);

plot(t,x)

ylabel('f(t)');

xlabel('t');

title('(4)');

(5)k=1:

1:

6

x=(-2).^(-k);

stem(k)

xlabel('k');

ylabel('f(k)');

title('(5)');

(6)k=0:

1:

4

x=exp(k);

stem(k)

xlabel('k');

ylabel('f(k)');

title('(6)');

(7)k=1:

1:

99

x=k;

stem(k)

xlabel('k');

ylabel('f(k)');

title('(7)');

四、利用MATLAB求解线性方程组。

1.a=[231;111;3-1-1];

b=[116-2]';

x=inv(a)*b

x=

2.a=[111;1-21;123];

b=[2-1-1]';

x=inv(a)*b

x=

3.a=[110;011;101];

b=[273330]';

x=inv(a)*b

x=

12

15

18

实验二、信号的运算

二、编写实现下列离散信号运算函数的程序,并画出波形。

1.k=0:

100

x=sin(k);

stem(x)

xlabel('k');

ylabel('f(k)');

title('2');

2.k=0:

100

x=sin(k)+sin(pi*k);

stem(x)

xlabel('k');

ylabel('f(k)');

title('2');

3.k=3:

103

x=k.*sin(k);

stem(x)

xlabel('k');

ylabel('f(k)');

title('3');

4.functionf=fun(k)

fori=1:

100

k(i)=i-50;

ifk(i)<0

f(i)=(-1).^k(i);

elsef(i)=(-1).^k(i)+.^k(i);

end

end

stem(k,f)

xlabel('k');

ylabel('f(k)');

title('4');

七、编写一个计算两个离散序列的卷积和的程序,并用其计算下列卷积的和。

1.f1=[1111];

f2=[1];

conv(f1,f2)

ans=

2.f1=[1111];

f2=[321];

conv(f1,f2)

ans=

356631

 

实验三、信号的谱分析

二、1.clc;

clearall;

x=[1,2,3,4,5,6,6,5,4,3,2,1];

dtft=zeros(70);

fori=1:

70

w(i)=(i-35)/10;

fork=1:

12

dtft(i)=dtft(i)+x(k)*exp(-j*(k-1)*w(i));

end

end

subplot(1,2,1);

plot(w,abs(dtft));xlabel('w');ylabel('DTFT');title('幅频特性');

subplot(1,2,2);

plot(w,angle(dtft));xlabel('w');ylabel('DTFT');title('相频特性');

2.clc;

clearall;

fori=1:

120

ifi==10

x(i)=1;

elseifi==20

x(i)=2;

elseifi==30

x(i)=3;

elseifi==40

x(i)=4;

elseifi==50

x(i)=5;

elseifi==60

x(i)=6;

elseifi==70

x(i)=6;

elseifi==80

x(i)=5;

elseifi==90

x(i)=4;

elseifi==100

x(i)=3;

elseifi==110

x(i)=2;

elseifi==120

x(i)=1;

elsex(i)=0;

end

end

%x=[1,2,3,4,5,6,6,5,4,3,2,1];

%dtft=zeros(150);

fori=1:

120

w(i)=(i-40)/10;

end

G=fft(x);

subplot(1,2,1);

plot(w(1:

80),abs(G(1:

80)));xlabel('w');ylabel('DFT');title('幅频特性');

subplot(1,2,2);

plot(w(1:

80),angle(G(1:

80)));xlabel('w');ylabel('DFT');title('相频特性');

3.%DTFT

clc;

clearall;

x=[1,2,3,4,5,6,6,5,4,3,2,1];

dtft=zeros(70);

fori=1:

70

w(i)=(i-35)/10;

fork=1:

12

dtft(i)=dtft(i)+x(k)*exp(-j*(k-1)*w(i));

end

end

figure;plot(w,abs(dtft),'b');xlabel('w');ylabel('DTFTorDFT');title('幅频特性');

holdon

%DFT

clc;

clearall;

fori=1:

120

ifi==10

x(i)=1;

elseifi==20

x(i)=2;

elseifi==30

x(i)=3;

elseifi==40

x(i)=4;

elseifi==50

x(i)=5;

elseifi==60

x(i)=6;

elseifi==70

x(i)=6;

elseifi==80

x(i)=5;

elseifi==90

x(i)=4;

elseifi==100

x(i)=3;

elseifi==110

x(i)=2;

elseifi==120

x(i)=1;

elsex(i)=0;

end

end

fori=1:

120

w(i)=(i-40)/10;

end

G=fft(x);

holdon;

plot(w(1:

80),abs(G(1:

80)),'r');xlabel('w');ylabel('DTFTorDFT');title('幅频特性');

 

三、分别用数值计算法和DFT法,计算下列信号的频谱,并画出其幅度频谱和相位频谱。

1.数值计算

%

functiony=fun111(t)

[M,N]=size(t);

fori=1:

N

if((t(i)>-pi)&&(t(i)<0))

y(i)=pi+t(i);

elseif((t(i)>0)&&(t(i)

y(i)=pi-t(i);

else

y(i)=0

end

end

%

clearall

clc

fori=1:

1000

w(i)=(i-1)/25;

F=@(t)fun111(t).*exp(-j*w(i).*t);

G(i)=quad(F,0,1);

end

subplot(1,2,1);

plot(w,abs(G));xlabel('w');ylabel('G');title('数值计算幅度频谱');

subplot(1,2,2);

plot(w,angle(G));xlabel('w');ylabel('Fi');title('数值计算相位频谱');

DFT法

%

functiony=fun1(x)

if((-pi

y=pi+x;

elseif((0

y=pi-x;

else

y=0

end

%

clearall

clc

fori=1:

1000

g(i)=fun1(2/1000*i-1);

w(i)=(i-1)**pi;

end

fori=1001:

10000

g(i)=0;

w(i)=(i-1)**pi;

end

G=fft(g)/1000;

subplot(1,2,1);

plot(w(1:

50),abs(G(1:

50)));

xlabel('w');ylabel('G');title('DFT幅度频谱');

subplot(1,2,2);

plot(w(1:

50),angle(G(1:

50)))

xlabel('w');ylabel('Fi');title('DFT相位频谱');

2.数值计算

%

functiony=fun222(t)

[M,N]=size(t);

fori=1:

N

if(t(i)<1)&&(t(i)>-1)

y(i)=cos(pi*(t(i))/2);

else

y(i)=0;

end

end

%

clearall

clc

fori=1:

1000

w(i)=(i-1)/25;

F=@(t)fun222(t).*exp(-j*w(i).*t);

G(i)=quad(F,0,1);

end

subplot(1,2,1);

plot(w,abs(G));xlabel('w');ylabel('G');title('数值计算幅度频谱');

subplot(1,2,2);

plot(w,angle(G));xlabel('w');ylabel('Fi');title('数值计算相位频谱');

DFT法

%

functiony=fun2(x)

ifx<1&&x>-1

y=cos(pi*x/2);

else

y=0;

end

%

fori=1:

1000

g(i)=fun2(2/1000*i-1);

w(i)=(i-1)**pi;

end

fori=1001:

10000

g(i)=0;

w(i)=(i-1)**pi;

end

G=fft(g)/1000;

subplot(1,2,1);

plot(w(1:

50),abs(G(1:

50)));

xlabel('w');ylabel('G');title('幅度频谱');

subplot(1,2,2);

plot(w(1:

50),angle(G(1:

50)))

xlabel('w');ylabel('Fi');title('相位频谱');

3.数值计算

%

functiony=fun333(t)

[M,N]=size(t);

fori=1:

N

if(t(i)<0)&&(t(i)>-1)

y(i)=1;

elseift(i)>0&&t(i)<1

y(i)=-1;

else

y(i)=0;

end

end

end

%

clearall

clc

fori=1:

1000

w(i)=(i-1)/25;

F=@(t)fun333(t).*exp(-j*w(i).*t);

G(i)=quad(F,0,5);

end

subplot(1,2,1);

plot(w,abs(G));xlabel('w');ylabel('G');title('数值计算幅度频谱');

subplot(1,2,2);

plot(w,angle(G));xlabel('w');ylabel('Fi');title('数值计算相位频谱');

DFT法

%

functiony=fun3(x)

ifx<0&&x>-1

y=1;

elseifx>0&&x<1

y=-1;

else

y=0

end

%

fori=1:

1000

g(i)=fun3(2/1000*i-1);

w(i)=(i-1)**pi;

end

fori=1001:

10000

g(i)=0;

w(i)=(i-1)**pi;

end

G=fft(g)/1000;

subplot(1,2,1);

plot(w(1:

50),abs(G(1:

50)));

xlabel('w');ylabel('G');title('DFT幅度频谱');

subplot(1,2,2);

plot(w(1:

50),angle(G(1:

50)))

xlabel('w');ylabel('Fi');title('DFT相位频谱');

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 外语学习 > 日语学习

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2