连续与离散信号的可视化

更新时间:2023-10-24 09:40:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第7章连续与离散信号的可视化

实验目的

(1) 熟练掌握MATLAB的使用

(2) 学会用MATLAB实现离散与连续信号的可视化

实验内容

1.利用MATLAB的向量法,绘出下列连续信号的时域波形。 (1)f(t)=4sin(2πt-π/4) (3)f(t)=u(t+2)-u(t-2) (1) MATLAB代码:实验结果: p=0.001; t=-pi:p:pi f=4*sin(2*pi*t-pi/4) plot(t,f) title('f(t)=4sin(2πt-π/4)') xlabel('t') axis([-pi,pi,-5,5])

(3)MATLAB代码:实验结果: 函数 function f=Heaviside(t) f=(t>0); 代码 syms t; f=sym('Heaviside(t+2)-Heaviside(t-2)'); ezplot(f,[-4,4])

2.利用MATLAB绘出下列离散序列的时域波形图。 (1)x(n)=cos(nπ/2)u(n) (4)x(n)=(-3/4) ^nu(n)

本题用到的函数MATLAB代码:

函数1:function x=jyxl(n) x=(n>=0) 函数2: function[x,n]=cxl(x1,x2,n1,n2) n=min(min(n1),min(n2)):max(max(n1):max(n2)); s1=zeros(1,length(n)); s2=s1; s1(find((n>=min(n1))&(n<=max(n1))==1))=x1; s2(find((n>=min(n2))&(n<=max(n2))==1))=x2; x=s1.*s2; axis([(min(min(n1),min(n2))-1),(max(max(n1),max(n2))+1),(min(x)-0.75),(max(x)+0.75)]) (1)MATLAB代码:实验结果:

n1=-2;2; x1=cos(n1*pi/2); n2=-2:2; x2=jyxl(n2); [x3,n3]=cxl(x1,x2,n1,n2); subplot(2,2,4) stem(x3,n3,'filled')

(4)MATLAB代码:实验结果: n1=-4:4; x1=(-3/4).^n1; n2=-4:4; x2=jyxl(n2); [x3,n3]=cxl(x1,x2,n1,n2); subplot(2,2,3); stem(n3,x3,'filled')

3.已知连续时间信号f(t)=sinπt/t,试用MATLAB编程绘出下列信号的时域波形图。 (1)2f(t-1) (4)f(1-1/2t) (1)MATLAB代码:实验结果:

syms t; f=sym(sin(pi*t)/t); ezplot(f,[-10,10]) axis([-10,10,-1,4]) title('f(t)') f1=2*subs(f,t,t-1); ezplot(f1,[-10,10]) axis([-10,10,-2,8])

(4)MATLAB代码:实验结果: syms t; f=sym(sin(pi*t)/t); ezplot(f,[-10,10]) axis([-10,10,-1,4]) title('f(t)') f1=subs(f,t,1-t/2); ezplot(f1,[-10,10]) axis([-10,10,-1,4])

4.已知离散序列x(n)如图所示,试用MATLAB编程绘出满足下列要求的离散序列波形。 (3)x(n)-x(n-5)

本题用到函数MATLAB代码:

function[x,n]=cxl(x1,x2,n1,n2) n=min(min(n1),min(n2)):max(max(n1):max(n2)); s1=zeros(1,length(n)); s2=s1; s1(find((n>=min(n1))&(n<=max(n1))==1))=x1; s2(find((n>=min(n2))&(n<=max(n2))==1))=x2; x=s1-s2; axis([(min(min(n1),min(n2))-1),(max(max(n1),max(n2))+1),(min(x)-0.75),(max(x)+0.75)]) MATLAB代码:实验结果: x1=[0,3,3,3,3,2,1,0,0,0,0,0,0,0,0]; n1=-4:10; x2=[0,0,0,0,0,0,3,3,3,3,2,1,0,0,0]; n2=-4:10; [x3,n3]=jxl(x1,x2,n1,n2); subplot(2,2,1) stem(n3,x3,'filled')

5.试利用MATLAB生成并绘制如下信号波形。

(1)周期为2,峰值为5的周期方波信号。 (5)幅度为2,时域宽度为4的门信号。 (1)MATLAB代码:实验结果: t=0:0.001:10; f=5*square(4*pi*t); plot(t,f) axis([0,5,-8,8])

(5)MATLAB代码:实验结果:

t=-4:0.01:4; f=2*square(t); plot(t,f) axis([-2,4,-3,3])

本文来源:https://www.bwwdw.com/article/fmc2.html

Top