MATLAB实习报告.docx
《MATLAB实习报告.docx》由会员分享,可在线阅读,更多相关《MATLAB实习报告.docx(25页珍藏版)》请在冰豆网上搜索。
MATLAB实习报告
西安邮电学院
信号与系统实验
报告
院系名称
:
电子工程学院院
专业班级
:
集成电路设计与集成系统0801
学生姓名
:
赵启
学号
:
04086017
时间
:
2010年6月20日
实验一、熟悉MATLAB环境
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)
t=0:
0.001:
10;
f=4+exp(-t);
plot(t,f)
p
lot(t,f)
t=0:
0.001:
10;
f=2*exp(-2*t)+3*exp(-3*t);
plot(t,f)
t=-4:
0.001:
4;
f=cos(2*pi*t+pi/3);
plot(t,f)
t=0:
0.01:
3;
f=exp(-t).*sin(2*pi*t);
plot(t,f)
t=-6:
0.01:
6;
f=heaviside(t+3)-heaviside(t-3);
plot(t,f)
t=-10:
0.001:
10;
f=et(t+3)-et(t-3);
plot(t,f)
t=-4*pi:
0.001:
4*pi;
f=sinc(t/pi);
plot(t,f)
gridon
实验二、离散时间信号的基本运算
1、
A:
单位采样序列
functiondwxulie(k1,k2,k0)
k=k1:
k2;
n=length(k);
f=zeros(1,n);
f(1,-k0-k1+1)=1;
stem(k,f,'filled')
axis([k1,k2,0,1.5])
title('单位序列d(k)')
B:
单位阶跃序列
functionjyxulie(k1,k2,k0)
k=k1:
-k0-1;
kk=-k0:
k2;
n=length(k);
nn=length(kk)
u=zeros(1,n);%k0前信号赋值为零
uu=ones(1,nn);%k0后信号赋值为一
stem(kk,uu,'filled')
holdon
stem(k,u,'filled')
holdoff
title('单位阶跃序列')
axis([k1k201.5])
C:
实指数虚列
functiondszsu(c,a,k1,k2)
k=k1:
k2;
x=c*(a.^k);
stem(k,x,'filled')
holdon
plot([k1,k2],[0,0])
holdoff
D:
复数指数虚列
functiondfzsu(n1,n2,r,w)
k=n1:
n2;
f=(r*exp(i*w)).^k;
Xr=real(f);
Xi=imag(f);
Xa=abs(f);
Xn=angle(f);
subplot(2,2,1),stem(k,Xr,'filled'),title('实部');
subplot(2,2,3),stem(k,Xi,'filled'),title('虚部');
subplot(2,2,2),stem(k,Xa,'filled'),title('模');
subplot(2,2,4),stem(k,Xn,'filled'),title('相角');
E:
正余弦序列
functionyuxuan(w,o)
n=0:
40;
f=cos(w*n+o);
stem(n,f,'filled')
F:
周期序列
functionf=zhouqi(f,T)
n=0:
40;
f=f(mod(n,T)+1);
stem(n,f);
2、实现IMPSEQ(N0,N1,N2)
functionjyxulie(k1,k2,k0)
k=k1:
-k0-1;
kk=-k0:
k2;
n=length(k);
nn=length(kk)
u=zeros(1,n);
uu=ones(1,nn);
stem(kk,uu,'filled')
holdon
stem(k,u,'filled')
holdoff
title('µ¥Î»½×Ô¾ÐòÁÐ')
axis([k1k201.5])
4、两信号相加
function[f,k]=lsxj(f1,f2,k1,k2)
k=min(min(k1),min(k2)):
max(max(k1),max(k2));
s1=zeros(1,length(k));
s2=s1;
s1(find((k>=min(k1))&(k<=max(k1))==1))=f1;
s2(find((k>=min(k2))&(k<=max(k2))==1))=f2;
f=s1+s2;
stem(k,f,'filled')
axis([(min(min(k1),min(k2))-1),(max(max(k1),max(k2))+1),(min(f)-0.5),(max(f)+0.5)]);
11、
t0=0:
0.5:
1;
f=sin(2*pi.*t);
subplot(1,3,1);
stem(t0,f);
t1=0:
0.25:
1;
f=sin(2*pi.*t1);
subplot(1,3,2);
stem(t1,f);
t2=0:
0.1:
1;
f=sin(2*pi.*t2);
subplot(1,3,3);
stem(t2,f);
实验三、系统零状态响应的时域求解
1、
a=[12100];
b=[001];
t=-10:
0.1:
10;
subplot(1,3,1);
impulse(b,a);
subplot(1,3,2);
step(b,a);
f=10*sin(2*pi.*t);
subplot(1,3,3);
lsim(b,a,f,t);
3、
a=[1-10.9-0.5];
b=[1];
subplot(1,2,1);
impz(b,a);
subplot(1,2,2);
dstep(b,a);
4、
(1)、
x=[31170-142];
h=[230-521];
conv(x,h)
(2)、
function[y,ny]conv_m(x,nx,h,nh);
y=conv(x,h);
ny0=nx
(1)+nh
(1);
ny3=length(x)+length(h)-2;
ny=ny0:
nyo+ny3;
end
实验四、周期信号频谱分析与综合
1、
function[A,B,C,fn,t,x]=CTFSfft
T=5;
if(nargin<2|isempty(M));M=8;end
ifnargin<3;Nf=input('plearInputËùÐèÕ¹¿ªµÄ×î¸ßг²¨´ÎÊý:
Nf=');end
N=2^M;f=1/T;w0=2*pi*f;
dt=T/N;
n=0:
1:
(N-1);t=n*dt;x=time_fun(t,T);X=fft(x);cn=X/N;
z_cn=find(abs(cn)<1.0e-10);
cn(z_cn)=zeros(length(z_cn),1);
cn_SH=fftshift(cn);
C=[cn_SHcn_SH
(1)];
A
(1)=C(N/2+1);
A(2:
N/2+1)=2*real(C((N/2+2):
end));
B(2:
N/2+1)=-2*imag(C((N/2+2):
end));
ifNf>N/2;error(['NfӦСÓÚ'int2str(N/2-1)]);end
A(Nf+2:
end)=[];
B(Nf+2:
end)=[];
n1=-N/2*2*pi/T:
2*pi/T:
N/2*2*pi/T;
fn=n1*f;
y=time_fun_e
subplot(2,1,2),
stem(n1,abs(C));
title('ÖÜÆÚ¾ØÐÎÂö³åƵÆ×')
axis([-150,150,0,0.12])
holdoff
%-------------------------
functionx=time_fun(t,T)
A=1;tao=1;T=5;
x=zeros(size(t));ii=find(t>=-tao/2&t<=tao/2);
x(ii)=ones(size(ii)).*A;x(t==0)=1;
%------------------------------
functiony=time_fun_e
T=5;t=-2*T:
0.01:
2*T;tao=T/5;
y=rectpuls(t,1);subplot(2,2,2)
plot(t,y)
holdon
y=rectpuls(t-5,1);plot(t,y)
holdon
y=rectpuls(t+5,1);plot(t,y)
title('ÖÜÆÚΪT=5£¬Âö¿ítao=1µÄ¾ØÐÎÂö³å')
axis([-10,10,0,1.2])
4、
function[A_sym,B_sym]=CTFShchsym
symstnkx
T=5;tao=0.2*T;a=0.5;
ifnargin<4;Nf=6;end
ifnargin<5;Nn=32;end
x=time_fun_x(t);A0=2*int(x,t,-a,T-a)/T;As=int(2*x*cos(2*pi*n*t/T)/T,t,-a,T-a);Bs=int(2*x*sin(2*pi*n*t/T)/T,t,-a,T-a);A_sym
(1)=double(vpa(A0,Nn));
fork=1:
Nf
A_sym(k+1)=double(vpa(subs(As,n,k),Nn));
B_sym(k+1)=double(vpa(subs(Bs,n,k),Nn));
end
ifnargout==0
c=A_sym;disp(c)
d=B_sym;disp(d)
t=-8*a:
0.01:
T-a;
f1=0.2/2+0.1871.*cos(2*pi*1*t/5)+0.*sin(2*pi*1*t/5);
f2=0.1514.*cos(2*pi*2*t/5)+0.*sin(2*pi*2*t/5);f3=0.1009.*cos(2*pi*3*t/5)+0.*sin(2*pi*3*t/5);f4=0.0468.*cos(2*pi*4*t/5)+0.*sin(2*pi*4*t/5);f5=-0.0312.*cos(2*pi*6*t/5)+0.*sin(2*pi*6*t/5);f6=f1+f2;f7=f6+f3;f8=f7+f4+f5;subplot(2,2,1)
plot(t,f1),holdon
y=time_fun_e%plot(t,y)
title('ÖÜÆÚ¾ØÐ⨵ÄÐγɡª»ù²¨')
subplot(2,2,2)
plot(t,f6),holdon
y=time_fun_e
plot(t,y)
title('ÖÜÆÚ¾ØÐ⨵ÄÐγɡª»ù²¨+2´Îг²¨')
subplot(2,2,3)
plot(t,f7),holdon
y=time_fun_e
plot(t,y)
title('ÖÜÆÚ¾ØÐ⨵ÄÐγɡª»ù²¨+2´Îг²¨+3´Îг²¨')
subplot(2,2,4)
plot(t,f8),holdon
y=time_fun_e
plot(t,y)
title('ÖÜÆÚ¾ØÐ⨵ÄÐγɡª»ù²¨+2´Îг²¨+3´Îг²¨+4´Îг²¨+6´Îг²¨')
end
%-------------------------------------------
functionx=time_fun_x(t)
h=1;
x1=sym('Heaviside(t+0.5)')*h;
x=x1-sym('Heaviside(t-0.5)')*h;
%-------------------------------------------
functiony=time_fun_e
a=0.5;T=5;h=1;tao=0.2*T;t=-8*a:
0.01:
T-a;
e1=1/2+1/2.*sign(t+tao/2);
e2=1/2+1/2.*sign(t-tao/2);
y=h.*(e1-e2);
实验五、零极点分析及系统的频响特性
1、
num=[3-96];
den=[132];
[z,p]=tf2zp(num,den);
subplot(1,3,1);
zplane(z,p);
c=[1];
d=[10];
[z,p]=tf2zp(c,d);
subplot(1,3,2);
zplane(z,p);
e=[11];
f=[125];
[z,p]=tf2zp(e,f);
subplot(1,3,3);
zplane(z,p);
2、
(1)
调用
functionljdt(A,B)
p=roots(A);
q=roots(B);
p=p';
q=q';
x=max(abs([pq1]));
x=x+0.1;
y=x;
clf
holdon
axis([-xx-yy])
w=0:
pi/300:
2*pi;
t=exp(i*w);
plot(t)
axis('square')
plot([-xx],[00])
plot([00],[-yy])
text(0.1,x,'jIm[z]')
text(y,1/10,'Re[z]')
plot(real(p),imag(p),'x')
plot(real(q),imag(q),'o')
title('pole-zerodiagramfordiscretesystem')
holdoff
num=[100];
denn=[110.5];
ljdt(num,denn);
(2)、
num=[10.500];
den=[1-1.250.75-0.125];
ljdt(num,den);
3、
(1)
clearall
closeall
a=[20];
b=[1sqrt
(2)1];
[z,p]=tf2zp(a,b);
w=logspace(-1,1);
m=[0];
n=[];
f1=0;
f2=10;
k=0.1;
subplot(1,3,1);
zplane(z,p);
subplot(1,3,2);
impulse(a,b);
subplot(1,3,3);
splxy(f1,f2,k,m,n);
(2)\
clearall
closeall
a=[3-92];
b=[132];
[z,p]=tf2zp(a,b);
w=logspace(-1,1);
m=a;
n=[];
f1=0;
f2=10;
k=0.1;
subplot(1,3,1);
zplane(z,p);
subplot(1,3,2);
impulse(a,b);
subplot(1,3,3);
splxy(f1,f2,k,m,n);
实验六、信号的调制与解调
1、
2、
n=0:
256;
s=sin((2*pi*n)/256);
sm=demod(s,100000,1000000,'amssb');
stem(n,sm)