一、连续时间信号的表示:
1、向量表示法:
在MATLAB中,是用连续信号在等时间间隔点的样值来近似表示连续信号,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。
对于连续时间信号f(t),一般是用两个行向量f和t来表示。t=t1:p:t2 ,t1 表示的是信号的起始时间,t2为终止时间,p为时间的间隔。而f为连续时间f(t)在向量t所定义的时间范围内对应的样值。
2、符号运算表示法:
使用sym定义变量,然后进行表示。
Eg:分别采用上述两种方法画出抽样信号:
clear all; t=-10:1.5:10;%取点数比较少,图形会比较失真 f=sin(t)./t; subplot(2,2,1),plot(t,f) t=-10:0.1:10;%取点数比较多,图形会比较接近 f=sin(t)./t; subplot(2,2,2),plot(t,f) f=sym('sin(t)/t');%采用符号方法 subplot(2,2,3),ezplot(f,[-10 10]) t=-3*pi:pi/100:3*pi; ft=sinc(t/pi);%直接用malab中的函数 subplot(2,2,4),plot(t,ft)
二、一些常用信号的表示:
1、单位阶跃信号:
(1)利用符号函数maple中的内核函数Heaviside
(2)利用自编函数Heaviside(t)
function f=Heaviside(t) f=(t>0);
(3)利用符号函数来生成单位阶跃函数
t=-10:0.1:10; f=sign(t)/2+0.5; plot(t,f); axis([-5,5,-1.2,1.2]);
clear all %利用maple中的heaviside函数来实现u(t+3)-2u(t) subplot(2,2,1); syms t f=heaviside(t+3)-2*heaviside(t); ezplot(f,[-3*pi,3*pi]) axis([-5,5,-1.2,1.2]); title('u(t+3)-2u(t)'); %利用自己编写的heaviside函数来实现u(t+3)-2u(t) subplot(2,2,2); t=-5:0.01:5; f=Heaviside(t+3)-2*Heaviside(t); plot(t,f); axis([-5,5,-1.2,1.2]); title('u(t+3)-2u(t)') %利用符号函数来实现单位阶跃信号 subplot(2,2,3); t=-5:0.05:5; f=sign(t); ff=1/2+1/2*f; plot(t,ff); axis([-5 5 -0.1 1.1]); title('u(t)') %利用符号函数来实现u(t+3)-2u(t) subplot(2,2,4); t=-5:0.01:5; f=(1/2+1/2*sign(t+3))-2*(1/2+1/2*sign(t)); plot(t,f),axis([-5,5,-1.2,