本篇主要介绍一下离散时间信号的基本运算。包括五部分,翻转运算,尺度变换,周期延拓,循环移位,卷积。
(一)翻转运算
设有序列x(n),它的翻转序列如下:
y(n)=x(-n)
注意:在翻转过程中,序列样值向量翻转的同时,位置向量翻转并取反。
在matlab中,翻转运算用fliplr函数实现,实现语句:
y=fliplr(x);
ny=-fliplr(nx);
例题:用MATLAB实现序列x(n)={1,2,3,4,5,6,7,8},[-2,5]的翻转。
clear all;
nx=-2:5;
x=1:8;
ny=-fliplr(nx);
y=fliplr(x);
subplot(2,1,1);
stem(nx,x,'.');
xlabel('n');ylabel('x(n)');title('原序列');
subplot(2,1,2);
stem(ny,y,'.');
xlabel('n');ylabel('y(n)');title('原序列');
(二)尺度变换
序列x(n)的尺度变换序列如下:y(n)=x(mn),其中,m>1时代表序列的抽取,没隔m点取一点,0<m<1时代表序列的插值。
设序列x(n)用样值向量x和位置向量nx描述,m倍抽取后的序列为ny1,y1;m倍插值都的样值序列为ny2,y2。
抽取,实现代码:
k=length(nx);
ny1=zeros(1,k);
y1=