当前位置:文档之家› 离散时间信号与系统实验的matlab实现

离散时间信号与系统实验的matlab实现

离散时间信号与系统实验的matlab实现
离散时间信号与系统实验的matlab实现

离散时间信号与系统

[实验目的]

1.了解信号处理的基本操作

2.熟悉一些常用的序列及其应用

[实验原理]

我们所接触的信号大多为连续信号,为使之便于处理,往往要对其进行采样,对信号抽样并保证其能完全恢复,对抽样频率有一定的限制。

基本的离散序列的定义如下:

1.单位采样序列

2.单位阶跃序列

3.实指数序列

,;a为实数

4.复数指数序列

5.正余弦序列

6.周期序列

[实验内容]

1.用MATLAB实现函数impseq(n0,n1,n2),使函数实现,。

函数定义:

function [x,n]=impseq(n0,n1,n2)

if (n1>n2||n0>n2||n0

error('parameter error');

end;

if (n1<=n2)

for n=1:n2-n1+1

if (n==n0)

x(1,n)=n1-1+n;

x(2,n)=1;

end;

x(1,n)=n1-1+n;

x(2,n)=0;

end;

x(2,n0-n1+1)=1;

end;

运行结果:

impseq(3,1,9)

ans =

6 7 8 9 10 11 12 13 14

0 0 0 0 1 0 0 0 0

注:上面一行为自变量n,下面一行为函数值,以下运行结果为两行的,都与此题同,不在表明。

2.用MATLAB实现函数stepseq(n0,n1,n2),使函数实现u(n-n0),。函数定义:

function [x,n]=stepseq(n0,n1,n2)

if (n0>n2||n0n2)

error('parameter error');

end;

for n=1:n2-n1+1

if (n+n1-1

x(1,n)=n1+n-1;

x(2,n)=0;

else

x(1,n)=n1+n-1;

x(2,n)=1;

end;

end;

运行结果:

Stepseq(4,2,10)

ans =

2 3 4 5 6 7 8 9 10

0 0 1 1 1 1 1 1 1 注:与上同,上面一行是自变量,下面一行是函数值。

3.用MATLAB实现下列序列

a.

b.

c.

d. 将c中的扩展为,周期数为4

函数定义:

%函数实现序列

function [x,n]=f1()

for n=1:9

x(1,n)=n;

x(2,n)=(0.9).^(n);

end;

%实现序列函数

function f2()

for k=1:10

x=exp((2+3*j).*k);

disp(x);

end;

%实现序列的函数

function f3()

for k=0:10

x=3*cos(0.1*pi*k+pi/3)+2*sin(0.5*pi*k);

disp(x);

end;

%实现序列d中要求的函数

function f4(n)

while (1)

n=n-11;

if (n<0)

break;

end;

end;

n=n+11;

disp(n);

for k=0:10

x(1,k+1)=3*cos(0.1*pi*k+pi/3)+2*sin(0.5*pi*k); end;

n=n+1;

disp(x(1,n));

A:产生

运行结果:f1

ans =

1.0000

2.0000

3.0000

4.0000

5.0000

6.0000

7.0000 0.9000 0.8100 0.7290 0.6561 0.5905 0.5314 0.4783

8.0000 9.0000

0.4305 0.3874

B产生

运行结果:

f2

-7.3151 + 1.0427i 52.4235 -15.2556i -3.6758e+002 +1.6626e+002i

2.5155e+003 -1.5995e+003i -1.6733e+004 +1.4324e+004i

1.0747e+005 -1.2223e+005i -6.5870e+005 +1.0062e+006i

3.7693e+006 -8.0471e+006i -1.9182e+007 +6.2796e+007i

7.4837e+007 -4.7936e+008i

C、产生x(n)=3cos(0.1πn+π/3)+2sin(0.5πn) 0<=n<=10

运行结果:

f3

1.5000

2.6237 -0.3136 -

3.2202 -2.0074 -0.5981 -2.9344

-4.9836 -2.7406 -0.2294 -1.5000

4.MATLAB中可用算术运算符“+”实现信号相加,但和的长度必须相等。如果序列长度不等,或者长度虽然相等但采样的位置不同,就不能运用“+”了。试用MATLAB写出任意序列相加的函数sigadd,其定义如下:function [y,n]=sigadd(x1,n1,x2,n2)

if(n1>=n2)

min=n2;

max=n1;

else

min=n1;

max=n2;

end;

for n=1:min

y(n)=x1(n)+x2(n);

end;

if (max-min)>1

for n=min+1:max

if n1>n2

y(n)=x1(n);

else

y(n)=x2(n);

end;

end;

end;

运行结果:

x1=[1,2,3,4,5,6,7,8];

x2=[3,4,5,6,7,7,89,9,7,5,54];%生成两个相加的数组

sigadd(x1,8,x2,11)

ans =

4 6 8 10 12 13 96 17 7

5 54

5.与sigadd相仿,建立一个信号相乘sigmul函数

其定义如下:

function [y,n]=sigmul(x1,x2)

n1=length(x1);

n2=length(x2);

if(n1>n2)

min=n2;

max=n1;

else

min=n1;

max=n2;

end;

for n=1:min

y(n)=x1(n)*x2(n);

end;

if (max-min>1)

for n=min+1:max

y(n)=0;

end;

end;

return;

x1=[1,2,3,4,5,6,7,8];

x2=[3,4,5,6,7,7,89,9,7,5,54];%生成两个相乘的数组

运行结果:

sigmul(x1,x2)

ans =

3 8 15 2

4 3

5 42 623 72 0 0 0

6.建立一个函数sigshift,实现,函数定义如下:

function [y,n]=sigshift(x,m,n0)

y=x;

y(1,:)=x(1,:)+n0;

运行结果:

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

sigshift(x,0,5)

ans =

6 7 8 9 10

3 45 56 6 74

7.建立一个函数sigfold,实现。MATLAB中,这一运算由fliplr(x)函数实现,而对采样位置则由-fliplr(n)得到。

函数定义如下:

function [y,n]=sigfold(x)

for k=1:length(x)

y(1,k)=-length(x)+k-1;

d=fliplr(x);

end;

for k=1:length(x)

y(2,k)=d(2,k);

end;

y=fliplr(y);

运行结果:

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

sigfold(x)

ans =

-5 -4 -3 -2 -1

74 6 56 45 3

8.用MATLAB产生并画出(用stem 函数)下列序列的样本:

a)

b)

c)

d)

(其中是一个在[0,1]之间均匀分布的随机序列,用rand(1,N)实现,其中N表示长度)

e) ,画出五个序列

实现a)的函数:

function figure1()

x1(1,1)=0;

for i=0:25

z=0;

for j=0:10

q=impseq2(2*j,0,100);

p=impseq2(2*j+1,0,100);

z=z+(q(2,i+1)-p(2,i+1))*(j+1);

end;

x1(i+1)=z;

end;

i=0:25;

stem(i,x1);

xlabel('自变量N');

ylabel('函数值x1');

title('实验二.8.a');

实现b)的函数:

function figure2()

n=-10:1:10;

a=stepseq2(-5,-10,100);

b=stepseq2(6,-10,100);

c=stepseq2(4,-10,100);

d=stepseq2(10,-10,100);

e=impseq2(0,-10,100);

x2=(a(2,n+11)-b(2,n+11)).*n.^2+10*e(2,n+11)+20*(c(2,11)-d(2,11))* (0.5).^n;

stem(n,x2);

xlabel('自变量N');

ylabel('函数值x2');

title('实验二.8.b');

实现C)的函数:

function figure3()

n=0:20;

x3=(cos(0.2.*pi.*n+pi/3)).*((0.9).^n);

stem(n,x3);

xlabel('自变量n');

ylabel('函数值');

title('实验二8c‘);

实现d)的函数:

function figure4()

n=0:100;

m=rand(1);

x4=10*cos(0.0008*pi*n.^2)+m; stem(n,x4);

xlabel('自变量n');

ylabel('函数值x4');

title('实验二8.d');

A:序列样本

B:样本序列

C:样本序列

D:样本序列

E:样本序列

9.令x(n)=[1,-2,4,6,-5,8,10],产生并画出下列序列的样本

a)

b)

实现a)中样本序列的函数:

function figure9a()

for n=-10:20;

x1(n+11)=func(n+2)+func(n-4)-2*func(n);

end;

n=-10:20;

stem(n,x1);axis([-10 20 -25 25])

xlabel('自变量N');

ylabel('函数值');

title('实验二9a');

实现 b)中样本序列的函数:

function figure9b()

x=[0,];

for n=-1:20;

z=0;

for k=1:5

z=z+n*func(n-k);

end;

x(n+2)=z;

end;

n=-1:20;

stem(n,x);

xlabel('自变量n');

ylabel('函数值');

title('实验二9b');

A:

B:

10.将题9中的序列分解为偶和奇分量。用stem画出这些分量其中偶部:

奇部:

创建函数evenodd,实现奇偶分量

函数evenodd的定义

function evenodd1(X)

y1=sigfold(X);

Xe=0.5*(y1(2,:)+X(2,:))

Xo=0.5*(y1(2,:)-X(2,:))

u=[Xe;Xo]';

h=stem(u);

set(h(1),'MarkerFaceColor','red')

set(h(2),'MarkerFaceColor','blue')

title('实验二.10');

xlabel('自变量N');

ylabel('函数值(red is for Xe and blue for Xo)')

注:红色圆点表示偶部;蓝色圆点表示奇部

Xe = 3 24 56 21 2 24

Xo = 0 0 0 0 0 0 ;

12.信号的扩展(或抽取,或降低采样频率)定义为:

其中x(n)的采样频率被降低了整数因子M。

a.开发一个MATLAB函数dnsample,其格式为

Function y=dnsample(x,M)

用以实现上述运算。在应用MATLAB的下标功能时要特别注意时间轴的原点n=0。

b.。频率降低因子为4,求y(n)。用subplot

函数分别画出x(n)和y(n),并对结果进行讨论。

c.用重复上题,定性地讨论降低采样频率对

信号的影响。

当角频率=0.125π时

当角频率=0.5π时

实验五 信号调制与解调

[实验目的]

1. 了解用MATLAB 实现信号调制与解调的方法。 2. 了解几种基本的调制方法。 [实验原理]

由于从消息变换过来的原始信号具有频率较低的频谱分量,这种信号在许多信道中不适宜传输。因此,在通信系统的发送端通常需要有调制过程,而在接收端则需要有反调制过程——解调过程。

所谓调制,就是按调制信号的变化规律去改变某些参数的过程。调制的载波可以分为两类:用正弦信号作载波;用脉冲串或一组数字信号作为载波。最常用和最重要的模拟调制方式是用正弦波作为载波的幅度调制和角度调制。本实验中重点讨论幅度调制。

幅度调制是正弦型载波的幅度随调制信号变化的过程。设正弦载波为

)c o s

()(o c t A t S ??+= 式中 c ?——载波角频率

o ?——载波的初相位 A ——载波的幅度

那么,幅度调制信号(已调信号)一般可表示为

)c o s

()()(o c m t t Am t S ??+= 式中,m(t)为基带调制信号。

在MATLAB 中,用函数y=modulate(x,fc,fs,’s’)来实现信号调制。其中fc 为载波频率,fs 为抽样频率,’s’省略或为’am -dsb-sc’时为抑制载波的双边带调幅,’am -dsb-tc’为不抑制载波的双边带调幅,’am -ssb’为单边带调幅,’pm’为调相,’fm’为调频。 [实验内容]

1. 有一正弦信号)256/2sin()(n n x π=, n=[0:256],分别以100000Hz 的载波和

1000000Hz 的抽样频率进行调幅、调频、调相,观察图形。

实验结果见下图:

2.对题1中各调制信号进行解调(采用demod函数),观察与原图形的区别实验结果见下图:

3. 已知线性调制信号表示式如下:

⑴ t t c ?cos cos Ω ⑵ t t c ?cos )sin 5.01(Ω+

式中Ω=6c ?,试分别画出它们的波形图和频谱图

4. 已知调制信号)4000cos()200

cos()(t t t m ππ+=,载波为cos104t ,进行单边

带调制,试确定单边带信号的表示式,并画出频谱图。

代码清单:

%用来解决问题一的函数

function experiment_1()

t=0:256;

x=sin(2*pi*t/256);

y1=modulate(x,100000,1000000,'amdsb-sc');

subplot(3,2,[1 2]);plot(t,y1);

title('调幅、双边带函数图象(suppressed carrier)'); xlabel('自变量t');

ylabel('函数值y1')

y2=modulate(x,100000,1000000,'amdsb-tc');

subplot(3,2,3);plot(t,y2);

title('调幅、双边带函数图象(transmitted carrier)'); xlabel('自变量t');

ylabel('函数值y2')

y3=modulate(x,100000,1000000,'amssb');

subplot(3,2,4);plot(t,y3);

title('调幅、双边带函数图象');

xlabel('自变量t');

ylabel('函数值y3')

t=0:256;

y4=modulate(x,100000,1000000,'fm'); subplot(3,2,5);plot(t,y4);

title('调频函数图象');

xlabel('自变量t');

ylabel('函数值y4')

t=0:256;

y5=modulate(x,100000,1000000,'pm'); subplot(3,2,6);plot(t,y5);

title('调相函数图象');

xlabel('自变量t');

ylabel('函数值y5')

%用来解决问题二的函数

function experiment_2()

t=0:256;

x=sin(2*pi*t/256);

y1=modulate(x,100000,1000000,'amdsb-sc'); y2=modulate(x,100000,1000000,'amdsb-tc'); y3=modulate(x,100000,1000000,'amssb');

y4=modulate(x,100000,1000000,'fm');

y5=modulate(x,100000,1000000,'pm');

t=0:256;

subplot(3,2,1);

plot(t,x);

title('原来的X值');

xlabel('自变量t');ylabel('函数值X');

x1=demod(y1,100000,1000000,'amdsb-sc'); subplot(3,2,2);plot(t,x1);

title('Amplitude demodulation, double sideband, suppressed carrier');

xlabel('时间变量t');ylabel('解调后的X1');

x2=demod(y2,100000,1000000,'amdsb-tc');

subplot(3,2,3);plot(t,x2);

title('Amplitude demodulation, double sideband, transmitted carrier');

xlabel('时间变量t');ylabel('解调后的X2');

x3=demod(y3,100000,1000000,'amssb');

subplot(3,2,4);plot(t,x3);

title('Amplitude demodulation, single sideband');

xlabel('时间变量t');ylabel('解调后的X3');

x4=demod(y4,100000,1000000,'fm');

subplot(3,2,5);plot(t,x4);

title('Frequency demodulation');

xlabel('时间变量t');ylabel('解调后的X4');

x5=demod(y5,100000,1000000,'pm');

subplot(3,2,6);plot(t,x5);

title('Phase demodulation');

xlabel('时间变量t');ylabel('解调后的X5');

%解决问题三的函数

function experiment_3()

% 为了得到大概草图,我们假设这里的Ω=2π;

t=0:0.000001:1;

y1=cos(2*pi*t).*cos(6*2*pi*t);

y2=(1+0.5*sin(2*pi*t)).*cos(6*2*pi*t);

subplot(2,2,1);plot(t,y1);

title('cosΩtcos(Wct)的函数图');

xlabel('时间变量t');

ylabel('函数值y1');

subplot(2,2,3);plot(t,y2);

title('1+0.5sinΩt)cosWct的函数图');

xlabel('时间变量t');

ylabel('函数值y2');

y1fr=fft(y1);

y1fr1=abs(y1fr);

f=(0:length(y1)-1)*1000000/length(y1);

信号与系统matlab实验及答案

产生离散衰减正弦序列()π0.8sin 4n x n n ?? = ??? , 010n ≤≤,并画出其波形图。 n=0:10; x=sin(pi/4*n).*0.8.^n; stem(n,x);xlabel( 'n' );ylabel( 'x(n)' ); 用MATLAB 生成信号()0sinc at t -, a 和0t 都是实数,410t -<<,画波形图。观察并分析a 和0t 的变化对波形的影响。 t=linspace(-4,7); a=1;

t0=2; y=sinc(a*t-t0); plot(t,y); t=linspace(-4,7); a=2; t0=2; y=sinc(a*t-t0); plot(t,y);

t=linspace(-4,7); a=1; t0=2; y=sinc(a*t-t0); plot(t,y);

三组对比可得a 越大最大值越小,t0越大图像对称轴越往右移 某频率为f 的正弦波可表示为()()cos 2πa x t ft =,对其进行等间隔抽样,得到的离散样值序列可表示为()()a t nT x n x t ==,其中T 称为抽样间隔,代表相邻样值间的时间间隔,1 s f T = 表示抽样频率,即单位时间内抽取样值的个数。抽样频率取40 Hz s f =,信号频率f 分别取5Hz, 10Hz, 20Hz 和30Hz 。请在同一张图中同时画出连续信号()a x t t 和序列()x n nT 的波形图,并观察和对比分析样值序列的变化。可能用到的函数为plot, stem, hold on 。 fs = 40; t = 0 : 1/fs : 1 ; % ?μ?ê·?±e?a5Hz,10Hz,20Hz,30Hz f1=5; xa = cos(2*pi*f1*t) ; subplot(1, 2, 1) ;

matlab信号与系统实验报告

实验一 基本信号的产生与运算 一、 实验目的 学习使用MATLAB 产生基本信号、绘制信号波形、实现信号的基本运算。 二、 实验原理 MATLAB 提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期方波等等。这些信号是信号处理的基础。 1、 利用MATLAB 产生下列连续信号并作图。 (1)51),1(2)(<<---=t t u t x (2)300),3 2sin()(3.0<<=-t t e t x t (3)1.01.0,3000cos 100cos )(<<-+=t t t t x (4)2000),8.0cos()1.0cos()(<<=t t t t x ππ 答:(1)、 >> t=-1:0.02:5; >> x=(t>1); >> plot(t,-2*x); >> axis([-1,5,-3,1]); >> title('杨婕婕 朱艺星'); >> xlabel('x(t)=-2u(t-1)'); (2)、 >> t=0:0.02:30; >> x=exp(-0.3*t).*sin(2/3*t); >> plot(t,x);

>> title('杨婕婕朱艺星'); >> xlabel('x(t)=exp(-0.3*t).*sin(2/3*t)'); 因为原函数在t=15后x(t)取值接近于零,所以将横坐标改成0到15,看得更清晰 axis([0,15,-0.2,0.6]); (3)>> t=-0.1:0.01:0.1;x=cos(100*t)+cos(3000*t);plot(t,x); >> title('杨婕婕朱艺星'); >>xlabel('x=cos(100*t)+cos(3000*t)'); 因为t的间隔取太大,以至于函数不够准确,缩小t的间隔: t=-0.1:0.002:0.2;x=cos(100*t)+cos(3000*t); plot(t,x);title('杨婕婕') >> t=-0.1:0.0001:0.1; x=cos(100*t)+cos(3000*t); >> plot(t,x);title('杨婕婕朱艺星'); >> xlabel('x=cos(100*t)+cos(3000*t)');

matlab实现:常见的离散时间信号

1. 单位抽样序列,或称为离散时间冲激,单位冲激: ? ??=01)(n δ 00≠=n n 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即: ???=-01)(k n δ 0≠=n k n 2.单位阶跃序列 ? ??01)(n u 00<≥n n 在MATLAB 中可以利用ones( )函数实现。 );,1(N ones x = 3.正弦序列 )(cos )(0φω+=n A n x 这里, ,,0ωA 和φ都是实数,它们分别称为本正弦信号)(n x 的振幅,角频率和初始相位。 πω200=f 为频率。 4.复正弦序列 n j e n x ω=)( 5.实指数序列 n A n x α=)( 6. 随机序列 长度为N 的随机序列 基本数学函数参考教材P69页以及随后的使用说明。 注意使用行向量,特别是冒号运算符。 举例,长度为N 的实指数序列在MATLAB 中实现: n a x N n .^1 :0=-= 1. 单位采样 长度为N 的单位采样序列u(n)可以通过下面的MATLAB 命令获得:

u=[1 )1,1(-N zeros ]; 延迟M 个采样点的长度为N 的单位采样序列ud(n)(M

信号(MATLAB)实验指导书

《信号与系统》实验指导书 张建奇骆崇编写 浙江工业大学之江学院信息工程分院 2012年2月

目录 实验一MATLAB的基本使用 (1) 一、实验目的 (1) 二、实验原理 (1) 三、实验内容与要求 (8) 四、实验报告 (9) 实验二时域波形的MATLAB实现 (10) 一、实验目的 (10) 二、预习要求 (10) 三、实验原理 (10) 四、实验内容与要求 (18) 五、实验报告 (19) 实验三用MATLAB对系统时域分析 (20) 一、实验目的 (20) 二、预习要求 (20) 三、实验原理 (20) 四、实验内容与要求 (29)

实验一MATLAB的基本使用 一、实验目的 1、了解和掌握MATLAB的基本操作 2、了解MATLAB的库函数 3、会用MATLAB进行简单的操作。 二、实验原理 1、界面操作 MATLAB是“MATrix LABoratory”的缩写(矩阵实验室),它是由美国Mathworks公司于1984年正式推出的一种科学计算软件,由于其强大的功能,在欧美的一些大学里MATLAB已经成为许多诸如数字信号处理、自动控制理论等高级教程的主要工具软件,同时也成为理工科学生,必须掌握的一项基本技能。 当需要运行程序时,只需选择桌面上(或开始)中的MATLAB6.5应用程序图标即可 通常情况下,MATLAB的工作环境主要由一下几个窗口组成: 命令窗口(Command Window)

工作区间浏览器(Workspace) 历史命令窗口(Command History) 图形窗口(Figure) 文本编辑窗口(Editor) 当前路径窗口(Current Directory) MATLAB的命令窗与命令操作 当用户使用命令窗口进行工作时,在命令窗口中可以直接输入相应的命令,系统将自动显示信息。 例如在命令输入提示符“>>”后输入指令: >>t=[1,2,3;4,5,6;7,8,9]; 按回车键(Enter)后,系统即可完成对变量t的赋值。 MATALB提供了非常方便的在线帮助命令(help),它可提供各个函数的用法指南,包括格式、参数说明、注意事项及相关函数等内容。 2、图形窗 MATLAB图形窗(Figure)主要用于显示用户所绘制的图形。 通常,只要执行了任意一种绘图命令,图形窗就会自动产生。

用MATL新编实现常用的离散时间信号及其时域运算

用M A T L新编实现常用的离散时间信号及其 时域运算 公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-

实验四用MATLAB实现常用的离散时间信号及其时域运算 —— 摘要:在MATLAB中,只能用向量来表示离散时间信号。与连续信号不同,离散时 间信号无法用符号运算来表示。用适当的MATLAB语句表示出信号后,就可以利用MATLAB的绘图命令stem来绘出直观的信号波形图,stem是专门用于绘制离散时 间信号的。在MATLAB中离散序列的时域运算和变换不能用符号运算来实现,而必 须用向量表示的方法,即在MATLAB中离散序列的相加、相乘需表示成两个向量的 相加、相乘,因而参加运算的两序列向量必须有相同的维数。 一、实验目的:(1)学习MATLAB语言及其常用指令; (2)学习和掌握用MATLAB语言产生离散时间信号的编程方法; (3)通过编程绘制出离散时间信号的波形,加深理解信号的时域运 算。 二、实验内容:(1)运用MATLAB的绘图指令绘制离散时间信号; (2)用MATLAB语言实现离散时间信号的时域运算。 三、实验原理:(1)单位阶跃序列和单位样值序列。 离散时间信号只在某些离散的瞬时给出信号的值,因此,它是时间上不连续的 序列。单位阶跃序列和单位样值序列在离散时间信号与系统的分析中是两个非 常典型的序列,分别记为u(n)和δ(n)。它们的定义分别如下: 1 n≥0 1 n≥0 u(n)= δ(n)= 0 n<0 0 n≠0

若单位阶跃序列的起始点为n0,单位样值序列出现在n0时刻,则表达式分别为: 1 n≥n0 1 n=n0 u(n-n0)= δ(n-n0)= 0 n

信号与系统MATLAB实验报告

《信号与系统》MATLAB实验报告 院系:专业: 年级:班号: 姓名:学号: 实验时间: 实验地点:

实验一 连续时间信号的表示及可视化 实验题目: )()(t t f δ=;)()(t t f ε=;at e t f =)((分别取00<>a a 及); )()(t R t f =;)()(t Sa t f ω=;)2()(ft Sin t f π=(分别画出不同周期个数 的波形)。 解题分析: 以上各类连续函数,先运用t = t1: p:t2的命令定义时间范围向量,然后调用对应的函数,建立f 与t 的关系,最后调用plot ()函数绘制图像,并用axis ()函数限制其坐标范围。 实验程序: (1) )()(t t f δ= t=-1:0.01:3 %设定时间变量t 的范围及步长 f=dirac(t) %调用冲激函数dirac () plot(t,f) %用plot 函数绘制连续函数 axis([-1,3,-0.5,1.5]) %用axis 函数规定横纵坐标的范围 (2) )()(t t f ε= t=-1:0.01:3 %设定时间变量t 的范围及步长 f=heaviside(t) %调用阶跃函数heaviside () plot(t,f) %用plot 函数绘制连续函数 title('f(t)=heaviside(t)') %用title 函数设置图形的名称 axis([-1,3,-0.5,1.5]) %用axis 函数规定横纵坐标的范围 (3) at e t f =)( a=1时: t=-5:0.01:5 %设定时间变量t 的范围及步长 f=exp(t) %调用指数函数exp ()

实验1 用MATLAB进行信号频谱分析(推荐文档)

实验1 用MATLAB 进行信号频谱分析 一、实验目的 ㈠ 初步掌握MATLAB 产生常用离散时间信号的编程方法。 ㈡ 学习编写简单的FFT 算法程序,对离散信号进行幅频谱分析。 ㈢ 观察离散时间信号频谱的特点。 二、实验原理 ㈠ 常用的离散时间信号 在 MATLAB 语言主要是研究离散信号的。常用的离散信号有: 1.单位取样序列 ???≠==000 1)(n n n δ 2.单位阶跃序列 ?? ?<≥=0 01 )(n n n u 3.实指数序列 R a n a n x n ∈?=;)( 4.复指数序列 n e n x n j ?=+)(0)(ωσ 5.正(余)弦序列 )c o s ()(0θω+=n n x n ? 6.周期序列 n N n x n x ?+=)()( ㈡ 离散信号的产生 离散信号的图形显示使用stem 指令。 在 MATLAB 中的信号处理工具箱中,主要提供的信号是离散信号。

由于MATLAB 对下标的约定为从1开始递增,例如x=[5,4,3,2,1,0],表示x(1)=5,x(2)=4,X(3)=3… 因此要表示一个下标不由1开始的数组x(n),一般应采用两个矢量,如 n=[-3,-2,-1,0,l ,2,3,4,5]; x=[1,-l ,3,2,0,4,5,2,1]; 这表示了一个含9个采样点的矢量:X(n)={x(-3),x(-2),x(-1),x(0),x(1),x(2),x(3),x(4),x(5)}。 1.单位取样序列 ?? ?≠==δ0 001)(n n n 这一函数实现的方法有二: 方法一:可利用MATLAB 的zeros 函数。 x=zeros(1,N); %建立一个一行N 列的全零数组 x(1)=1; %对X (1)赋1 方法二:可借助于关系操作符实现 n=1:N; x=[n==1]; %n 等于1时逻辑关系式结果为真,x=1;n 不等于1时为假,x=0 如要产生 ?????≤<<=≤≤=-δ2 0210 100)(10)(n n n n n n n n n n n n 则可采用MATLAB 实现: n=n1:n2; x=[(n-n0)==0];%n=n0时逻辑关系式结果为真,x=1;n ≠n0时为

(完整word版)信号与系统matlab实验

习题三 绘制典型信号及其频谱图 1.更改参数,调试程序,绘制单边指数信号的波形图和频谱图。观察参数a对信号波形 及其频谱的影响。 程序代码: close all; E=1;a=1; t=0:0.01:4; w=-30:0.01:30; f=E*exp(-a*t); F=1./(a+j*w); plot(t,f);xlabel('t');ylabel('f(t)'); figure; plot(w,abs(F));xlabel('\omega');ylabel('|F(\omega)|';

E=1,a=1,波形图频谱图更改参数E=2,a=1;

更改参数a,对信号波形及其频谱的影响。(保持E=2)上图为a=1图像 a=2时

a=4时 随着a的增大,f(t)曲线变得越来越陡,更快的逼近0,而对于频谱图,随着a增大,图像渐渐向两边张开,峰值减小,陡度减小,图像整体变得更加平缓。 2.矩形脉冲信号 程序代码: close all; E=1;tao=1; t=-4:0.1:4; w=-30:0.1:30;

f=E*(t>-tao/2&tao/2)+0*(t<=-tao/2&t>=tao/2); F=(2*E./w).*sin(w*tao/2); plot(t,f);xlabel('t');ylabel('f(t)'); figure; plot(w,abs(F));xlabel('\omega');ylabel('|F(\omega)|') ; figure; plot(w,20*log10(abs(F))); xlabel('\omega');ylabel('|F(\omega)| in dB'); figure; plot(w,angle(F));xlabel('\omega');ylabel('\phi(\omega )');

matlab信号与系统实验报告

实验一 基本信号的产生与运算 一、 实验目的 学习使用MATLAB 产生基本信号、绘制信号波形、实现信号的基本运算。 二、 实验原理 MATLAB 提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期方波等等。这些信号是信号处理的基础。 1、 利用MATLAB 产生下列连续信号并作图。 (1)51),1(2)(<<---=t t u t x (2)300),3 2 sin()(3.0<<=-t t e t x t (3)1.01.0,3000cos 100cos )(<<-+=t t t t x (4)2000),8.0cos()1.0cos()(<<=t t t t x ππ 答:(1)、 >> t=-1:0.02:5; >> x=(t>1); >> plot(t,-2*x); >> axis([-1,5,-3,1]); >> title('杨婕婕 朱艺星'); >> xlabel('x(t)=-2u(t-1)');

(2)、 >> t=0:0.02:30; >> x=exp(-0.3*t).*sin(2/3*t); >> plot(t,x); >> title('杨婕婕朱艺星'); >> xlabel('x(t)=exp(-0.3*t).*sin(2/3*t)');

因为原函数在t=15后x(t)取值接近于零,所以将横坐标改成0到15,看得更清晰 axis([0,15,-0.2,0.6]);

(3)>> t=-0.1:0.01:0.1;x=cos(100*t)+cos(3000*t);plot(t,x); >> title('杨婕婕朱艺星'); >>xlabel('x=cos(100*t)+cos(3000*t)'); 因为t的间隔取太大,以至于函数不够准确,缩小t的间隔:t=-0.1:0.002:0.2;x=cos(100*t)+cos(3000*t); plot(t,x);title('杨婕婕')

离散时间信号表与运算

离散时间信号表与运算

————————————————————————————————作者:————————————————————————————————日期:

实验一 离散时间信号的表示与运算 一 实验目的 1、熟悉MATLAB 的绘图函数; 2、掌握单位取样序列、单位阶跃序列、矩形序列和正余弦序列的产生方法; 3、掌握离散时间信号基本运算的MATLAB 实现; 4、掌握离散时间信号线性卷积和运算的MATLAB 实现。 二 实验设备 1、计算机 2、MA TLAB R2007a 仿真软件 三 实验原理 1)序列相加和相乘 设有序列)(1n x 和)(2n x ,它们相加和相乘如下: ) ()()()()()(2121n x n x n x n x n x n x ?=+= 注意,序列相加(相乘)是对应序列值之间的相加(相乘),因此参加运算的两个序列必须具有相同的长度,并且保证位置相对应。如果不相同,在运算前应采用zeros 函数将序列左右补零使其长度相等并且位置相对应。在MATLAB 中,设序列用x1和x2表示,序列相加的语句为:x=x1+x2;然而要注意,序列相乘不能直接用x=x1*x2,该式表示两个矩阵的相乘,而不是对应项的相乘。对应项之间相乘的实现形式是点乘“.*”,实现语句为:x=x1.*x2。 2)序列翻转 设有序列:)()(n x n y -=,在翻转运算中,序列的每个值以n=0为中心进行翻转,需要注意的是翻转过程中序列的样值向量翻转的同时,位置向量翻转并取反。MATLAB 中,翻转运算用fliplr 函数实现。设序列)(n x 用样值向量x 和位置向量nx 表述,翻转后的序列 )(n y 用样值向量y 和位置向量ny 描述。 3)序列的移位 移位序列)(n x 的移位序列可表示为:)()(0n n x n y -=,其中,00>n 时代表序列右移 0n 个单位;00

信号与系统MATLAB实验

2016-2017学年第一学期 信号与系统实验报告 班级: 姓名: 学号: 成绩: 指导教师:

实验一常见信号的MATLAB 表示及运算 一.实验目的 1.熟悉常见信号的意义、特性及波形 2.学会使用MATLAB 表示信号的方法并绘制信号波形 3. 掌握使用MATLAB 进行信号基本运算的指令 4. 熟悉用MATLAB 实现卷积积分的方法 二.实验原理 信号一般是随时间而变化的某些物理量。按照自变量的取值是否连续,信号分为连续时间信号和离散时间信号,一般用()f t 和()f k 来表示。若对信号进行时域分析,就需要绘制其波形,如果信号比较复杂,则手工绘制波形就变得很困难,且难以精确。MATLAB 强大的图形处理功能及符号运算功能,为实现信号的可视化及其时域分析提供了强有力的工具。 根据MATLAB 的数值计算功能和符号运算功能,在MATLAB 中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。在采用适当的MATLAB 语句表示出信号后,就可以利用MATLAB 中的绘图命令绘制出直观的信号波形了。下面分别介绍连续时间信号和离散时间信号的MATLAB 表示及其波形绘制方法。 1.连续时间信号 所谓连续时间信号,是指其自变量的取值是连续的,并且除了若干不连续的点外,对于一切自变量的取值,信号都有确定的值与之对应。从严格意义上讲,MATLAB 并不能处理连续信号。在MATLAB 中,是用连续信号在等时间间隔点上的样值来近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。在MATLAB 中连续信号可用向量或符号运算功能来表示。 ⑴ 向量表示法 对于连续时间信号()f t ,可以用两个行向量f 和t 来表示,其中向量t 是用形如12::t t p t 的命令定义的时间范围向量,其中,1t 为信号起始时间,2t 为终止时间,p 为时间间隔。向量f 为连续信号()f t 在向量t 所定义的时间点上的样值。 说明:plot 是常用的绘制连续信号波形的函数。 严格说来,MATLAB 不能表示连续信号,所以,在用plot()命令绘制波形时,要对自变量t 进行取值,MATLAB 会分别计算对应点上的函数值,然后将各个数据点通过折线连接起来绘制图形,从而形成连续的曲线。因此,绘制的只是近似波形,而且,其精度取决于t 的取样间隔。t 的取样间隔越小,即点与点之间的距离越小,则近似程度越好,曲线越光滑。例如:图1-1是在取样间隔为p=0.5时绘制的波形,而图1-2是在取样间隔p=0.1时绘制的波形,两相对照,可以看出图1-2要比图1-1光滑得多。

用MATLAB实现常用的离散时间信号及其时域运算

实验四用MATLAB实现常用的离散时间信号及其时域运算 —— 摘要:在MATLAB中,只能用向量来表示离散时间信号。与连续信号不同,离散时间信号无法用符号运算来表示。用适当的MATLAB语句表示出信号后,就可以利用MATLAB的绘图命令stem来绘出直观的信号波形图,stem是专门用于绘制离散时间信号的。在MATLAB中离散序列的时域运算和变换不能用符号运算来实现,而必须用向量表示的方法,即在MATLAB中离散序列的相加、相乘需表示成两个向量的相加、相乘,因而参加运算的两序列向量必须有相同的维数。 一、实验目的:(1)学习MATLAB语言及其常用指令; (2)学习和掌握用MATLAB语言产生离散时间信号的编程方法; (3)通过编程绘制出离散时间信号的波形,加深理解信号的时域运算。 二、实验内容:(1)运用MATLAB的绘图指令绘制离散时间信号; (2)用MATLAB语言实现离散时间信号的时域运算。 三、实验原理:(1)单位阶跃序列和单位样值序列。 离散时间信号只在某些离散的瞬时给出信号的值,因此,它是时间上不连续的序列。单位阶跃序列和单位样值序列在离散时间信号与系统的分析中是两个非常典型的序列,分别记为u(n)和δ(n)。它们的定义分别如下: 1 n≥0 1 n≥0 u(n)= δ(n)= 0 n<0 0 n≠0 若单位阶跃序列的起始点为n0,单位样值序列出现在n0时刻,则表达式分别为: 1 n≥n0 1 n=n0 u(n-n0)= δ(n-n0)= 0 n

单位样值序列与连续时间的单位冲激信号的异同。 (2)离散时间信号的时域运算。 与连续时间系统的研究类似,在离散系统分析中,经常遇到离散时间信号的运算,包括两信号的相加、相乘以及序列自身的移位、反褶、尺度等等,也需要了解在运算过程中序列的表达式以及对应的波形的变化。 序列x(n)的移位:x(n-n0) 序列x(n)的反褶:x(-n) 序列x(n)的尺度变换:x(an) 两序列x1(n)与x2(n)的相加减:x1(n) ±x2(n) 两序列与的相乘:x1(n) ·x2(n) (3)学习如何使用MATLAB语言产生离散时间信号并对离散时间信号进行时域运算。四、实验任务: (1)编制用于产生下列信号的通用程序,要求对于任意给定的参数都能实现所要求的信号。调试并运行这些通用的程序。 ①x(n)=Aδ(n-n0) 程序:function un(t1,t2,t0) t=t1:t2; n=length(t); tt=t1:t2; n1=length(tt); f=zeros(1,n); f(1,t0-t1+1)=3; stem(t,f),grid on title('μ¥??3??÷D?o?') axis([t1,t2 -0.2 4])

信号与系统MATLAB实验总汇

实验一、MATLAB 编程基础及典型实例 一、实验目的 (1)熟悉MATLAB 软件平台的使用; (2)熟悉MATLAB 编程方法及常用语句; (3)掌握MATLAB 的可视化绘图技术; (4)结合《信号与系统》的特点,编程实现常用信号及其运算。 示例一:在两个信号进行加、减、相乘运算时,参于运算的两个向量要有相同的维数,并且它们的时间变量范围要相同,即要对齐。编制一个函数型m 文件,实现这个功能。function [f1_new,f2_new,n]=duiqi(f1,n1,f2,n2) a=min(min(n1),min(n2)); b=max(max(n1),max(n2)); n=a:b; f1_new=zeros(1,length(n)); f2_new=zeros(1,length(n)); tem1=find((n>=min(n1))&(n<=max(n1))==1); f1_new(tem1)=f1; tem2=find((n>=min(n2))&(n<=max(n2))==1); f2_new(tem2)=f2; 四、实验内容与步骤 (2)绘制信号x(t)=)3 2sin(2t e t ?的曲线,t 的范围在0~30s ,取样时间间隔为0.1s 。t=0:0.1:30; y=exp(-sqrt(2)*t).*sin(2*t/3); plot(t,y);

(3)在n=[-10:10]范围产生离散序列:?? ?≤≤?=Other n n n x ,033,2)(,并绘图。n=-10:1:10; z1=((n+3)>=0); z2=((n-3)>=0); x=2*n.*(z1-z2); stem(n,x);(4)编程实现如下图所示的波形。 t=-2:0.001:3; f1=((t>=-1)&(t<=1)); f2=((t>=-1)&(t<=2)); f=f1+f2; plot(t,f); axis([-2,3,0,3]);

基带信号眼图实验——matlab仿真

基带信号眼图实验——matlab 仿真

————————————————————————————————作者:————————————————————————————————日期: ?

数字基带信号的眼图实验——matla b仿真 一、实验目的 1、掌握无码间干扰传输的基本条件和原理,掌握基带升余弦滚降系统的实现方法; 2、通过观察眼图来分析码间干扰对系统性能的影响,并观察在输入相同码率的NRZ 基带信号下,不同滤波器带宽对输出信号码间干扰大小的影响程度; 3、熟悉MATL AB 语言编程。 二、实验预习要求 1、复习《数字通信原理》第七章7.1节——奈奎斯特第一准则内容; 2、复习《数字通信原理》第七章7.2节——数字基带信号码型内容; 3、认真阅读本实验内容,熟悉实验步骤。 三、实验原理和电路说明 1、基带传输特性 基带系统的分析模型如图3-1所示,要获得良好的基带传输系统,就应该 () n s n a t nT δ-∑() H ω() n s n a h t nT -∑基带传输抽样判决 图3-1?基带系统的分析模型 抑制码间干扰。设输入的基带信号为()n s n a t nT δ-∑,s T 为基带信号的码元周期,则经过基 带传输系统后的输出码元为 ()n s n a h t nT -∑。其中 1 ()()2j t h t H e d ωωωπ +∞ -∞ = ? ?(3-1) 理论上要达到无码间干扰,依照奈奎斯特第一准则,基带传输系统在时域应满足: 10()0,s k h kT k =?=? ? , 为其他整数 ?? ?(3-2) 频域应满足:

《离散时间信号的表示及运算》

实验一 离散时间信号的表示及运算 一、实验目的 1.掌握离散时间信号的时域表示; 2.掌握离散时间信号的基本运算; 3.用MA TLAB 表示的常用离散时间信号及其运算; 4.掌握用MA TLAB 描绘二维图形的方法。 二、实验原理 离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。离散序列通常用)(n x 来表示,自变量必须是整数。离散时间信号的波形绘制在MATLAB 中一般用stem 函数。 对离散时间序列实行基本运算可得到新的序列,这些基本运算主要包括加、减、乘、除、移位、反折等。两个序列的加减乘除是对应离散样点值的加减乘除,因此,可通过MATLAB 的点乘和点除、序列移位和反折来实现。 一些常用序列 1.单位冲激序列(单位抽样))(n δ ?? ?≠==0,00,1)(n n n δ (1) 2.单位阶跃序列)(n u ???=,,01)(n u 00<≥n n (2) 3.矩形序列)(n R N ???=,,01)(n R N 其他10-≤≤N n (3) 4.正弦序列和指数序列 正弦序列 )s i n ()(0?ω+=n A n x (4) 式中:A 为幅度,0ω为数字域的频率,它反映了序列变化的速率,?为起始相位。 实指数序列 )()(n u a n x n = (5)

式中,a 为实数。当1a 时,序列是发散的。a 为负数时,序列是摆动的。 复指数序列 n j e n x )(0)(ωσ+= (6) 它具有实部和虚部,0ω是复正弦的数字域频率。 三、实验内容 1.用Matlab 编制程序分别产生单位抽样序列)(n δ、单位阶跃序列)(n u 、矩形序列)()(5n R n x =、正弦序列)8 sin(2)(n n x π=、复指数序列n j e n x )641()(π+=,并画波形图; 绘制)(n δ波形 绘制n j e n x ][)()2.01.0(π+-=的实部和虚部的波形。

离散时间信号的表示及运算

第2章 离散时间信号的表示及运算 2.1 实验目的 ● 学会运用MATLAB 表示的常用离散时间信号; ● 学会运用MATLAB 实现离散时间信号的基本运算。 2.2 实验原理及实例分析 2.2.1 离散时间信号在MATLAB 中的表示 离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。离散序列通常用)(n x 来表示,自变量必须是整数。 离散时间信号的波形绘制在MATLAB 中一般用stem 函数。stem 函数的基本用法和plot 函数一样,它绘制的波形图的每个样本点上有一个小圆圈,默认是空心的。如果要实心,需使用参数“fill ”、“filled ”,或者参数“.”。由于MATLAB 中矩阵元素的个数有限,所以MATLAB 只能表示一定时间范围内有限长度的序列;而对于无限序列,也只能在一定时间范围内表示出来。类似于连续时间信号,离散时间信号也有一些典型的离散时间信号。 1. 单位取样序列 单位取样序列)(n δ,也称为单位冲激序列,定义为 )0()0(01)(≠=???=n n n δ (12-1) 要注意,单位冲激序列不是单位冲激函数的简单离散抽样,它在n =0处是取确定的值1。在MATLAB 中,冲激序列可以通过编写以下的impDT .m 文件来实现,即 function y=impDT(n) y=(n==0); %当参数为0时冲激为1,否则为0 调用该函数时n 必须为整数或整数向量。 【实例2-1】 利用MATLAB 的impDT 函数绘出单位冲激序列的波形图。 解:MATLAB 源程序为 >>n=-3:3; >>x=impDT(n); >>stem(n,x,'fill'),xlabel('n'),grid on >>title('单位冲激序列') >>axis([-3 3 -0.1 1.1])

根据Matlab的信号与系统实验指导材料

基于Matlab 的信号与系统实验指导 实验一 连续时间信号在Matlab 中的表示 一、实验目的 1、学会运用Matlab 表示常用连续时间信号的方法 2、观察并熟悉这些信号的波形和特性 二、实验原理及实例分析 1、信号的定义与分类 2、如何表示连续信号? 连续信号的表示方法有两种;符号推理法和数值法。 从严格意义上讲,Matlab 数值计算的方法不能处理连续时间信号。然而,可利用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能被Matlab 处理,并且能较好地近似表示连续信号。 3、Matlab 提供了大量生成基本信号的函数。如: (1)指数信号:K*exp(a*t) (2)正弦信号:K*sin(w*t+phi)和K*cos(w*t+phi) (3)复指数信号:K*exp((a+i*b)*t) (4)抽样信号:sin(t*pi) 注意:在Matlab 中用与Sa(t)类似的sinc(t)函数表示,定义为:)t /()t (sin )t (sinc ππ= (5)矩形脉冲信号:rectpuls(t,width) (6)周期矩形脉冲信号:square(t,DUTY),其中DUTY 参数表示信号的占空比

DUTY%,即在一个周期脉冲宽度(正值部分)与脉冲周期的比值。占空比默认为0.5。 (7)三角波脉冲信号:tripuls(t, width, skew),其中skew 取值范围在-1~+1之间。 (8)周期三角波信号:sawtooth(t, width) (9)单位阶跃信号:y=(t>=0) 三、实验内容 1、验证实验内容 直流及上述9个信号 2、程序设计实验内容 (1)利用Matlab 命令画出下列连续信号的波形图。 (a ))4/3t (2cos π+ (b ) )t (u )e 2(t -- (c ))]2()(u )][t (cos 1[--+t u t π (2)利用Matlab 命令画出复信号) 4/t (j 2e )t (f π+=的实部、虚部、模和辐角。 四、实验报告要求 1、格式:实验名称、实验目的、实验原理、实验环境、实验内容、实验思考等 2、实验内容:程序设计实验部分源代码及运行结果图示。

实验一----信号的MATLAB表示及信号的运算

实验一----信号的MATLAB表示及信号的运算

信号的MATLAB表示及信号的运算 一、实验目的 1.掌握的MATLAB使用; 2.掌握MATLAB生成信号的波形; 3.掌握MATLAB分析常用连续信号; 4.掌握信号的运算的MATLAB实现。 二、实验工具 1.台式电脑一台; 2.MATLAB7.1软件环境; 三、实验内容 编写程序实现下列常用函数,并显示波形。 1.正弦函数 f(t)=Ksin(wt+a); 2.矩形脉冲函数f(t)=u(t)-u(t-t0); 3.抽样函数 sa(t)=sint/t; 4.单边指数函数 f(t)=Ke-t; 5.已知信号f1(t)=u(t+2)-u(t-2), f2(t)=cos(2pt),用MATLAB绘制f1t)+f2(t)和f1(t)*f2(t)的波形。

四、实验要求 预习信号的时域运算和时域变换(相加、相乘、移位、反折、尺度变化、例项)相关知识。 五、实验原理 在某一时间区间内,除若干个不连续的点外,如果任意时刻都可以给出确定的函数值,则称信号为连续时间信号,简称为连续信号。MATLAB提供了大量生成基本信号的函数,所以可利用连续信号在等时间间隔点的取值来近似表示连续信号,这些离散的数值能被MATLAB处理,并显示出来。 六、实验步骤 1.打开MATLAB7.1软件,并在老师的指导和带领下逐步熟悉此软件; 2.编写正弦函数程序: clear all; t=-8:.01:8; k=2;w=1;a=pi/4; f=k*sin(w*t+a); plot(t,f);

grid; xlabel('t'); ylabel('f(t)'); axis([-8 8 -3 3]); 3.编写矩形脉冲信号函数程序: clear all; t=-4:0.001:4; T=1; f1=rectpuls(t,4*T); f2=cos(2*pi*t); plot(t,f2+f1); axis([-4 4 -1.5 2.5]); grid on; figure plot(t,f2.*f1); axis([-4 4 -1.5 1.5]); grid on;

离散时间信号期末试题

一、单项选择题(本大题共10小题,每小题2分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 第一 2.若一线性移不变系统当输入为x(n)=δ(n)时输出为y(n)=R3(n),则当输入为u(n)-u(n-2)时输出为( c )。 A.R3(n) B.R2(n) C.R3(n)+R3(n-1) D.R2(n)+R2(n-1) 3.下列哪一个单位抽样响应所表示的系统不是因果系统?( d ) A.h(n)=δ(n) B.h(n)=u(n) C.h(n)=u(n)-u(n-1) D.h(n)=u(n)-u(n+1) 4.离散系统的差分方程为y(n)=x(n)+ay(n-1),则系统的频率响应( a )。 A.当|a|<1时,系统呈低通特性 B.当|a|>1时,系统呈低通特性 C.当0

信号与系统实验(MATLAB版) (1)

《信号与系统MATLAB实现》实验指导书 电气信息工程学院 2014年2月

长期以来,《信号与系统》课程一直采用单一理论教学方式,同学们依靠做习题来巩固和理解教学内容,虽然手工演算训练了计算能力和思维方法,但是由于本课程数学公式推导较多,概念抽象,常需画各种波形,作题时难免花费很多时间,现在,我们给同学们介绍一种国际上公认的优秀科技应用软件MA TLAB,借助它我们可以在电脑上轻松地完成许多习题的演算和波形的绘制。 MATLAB的功能非常强大,我们此处仅用到它的一部分,在后续课程中我们还会用到它,在未来地科学研究和工程设计中有可能继续用它,所以有兴趣的同学,可以对MATLAB 再多了解一些。 MATLAB究竟有那些特点呢? 1.高效的数值计算和符号计算功能,使我们从繁杂的数学运算分析中解脱出来; 2.完备的图形处理功能,实现计算结果和编程的可视化; 3.友好的用户界面及接近数学表达式的自然化语言,易于学习和掌握; 4.功能丰富的应用工具箱,为我们提供了大量方便实用的处理工具; MATLAB的这些特点,深受大家欢迎,由于个人电脑地普及,目前许多学校已将它做为本科生必须掌握的一种软件。正是基于这些背景,我们编写了这本《信号与系统及MATLAB实现》指导书,内容包括信号的MA TLAB表示、基本运算、系统的时域分析、频域分析、S域分析、状态变量分析等。通过这些练习,同学们在学习《信号与系统》的同时,掌握MATLAB的基本应用,学会应用MATLAB的数值计算和符号计算功能,摆脱烦琐的数学运算,从而更注重于信号与系统的基本分析方法和应用的理解与思考,将课程的重点、难点及部分习题用MATLAB进行形象、直观的可视化计算机模拟与仿真实现,加深对信号与系统的基本原理、方法及应用的理解,为学习后续课程打好基础。另外同学们在进行实验时,最好事先预习一些MATLAB的有关知识,以便更好地完成实验,同时实验中也可利用MATLAB的help命令了解具体语句以及指令的使用方法。

相关主题
文本预览
相关文档 最新文档