实验二线性卷积与循环卷积的计算
循环卷积与线性卷积的matlab实现

循环卷积与线性卷积的实现1、实验目的:(1)进一步理解并掌握循环卷积与线性卷积的概念。
(2)理解掌握二者的关系。
三、实验原理两个序列的N点循环卷积定义为从定义中可以看到,循环卷积和线性卷积的不同之处在于:两个N 点序列的N点循环卷积的结果仍为N点序列,而他们的线性卷积的结果的长度则为2N-1;循环卷积对序列的移位采取循环移位,而线性卷积对序列采取线性位移。
正式这些不同,导致了线性卷积和循环卷积有不同的结果和性质。
循环卷积和线性卷积虽然是不用的概念,但是它们之间有一个有意义的公式联系在一起其中也就是说,两个序列的N点循环卷积是他们的线性卷积以N为周期的周期延阔。
设序列的长度为,序列的长度为,此时,线性卷积结果的序列的点数为;因此如果循环卷积的点数N小于,那么上述周期性延阔的结果就会产生混叠,从而两种卷积会有不同的结果。
而如果N满足的条件,就会有这就会意味着在时域不会产生混叠。
因此,我们得出结论:若通过在序列的末尾填充适当的零值,使得和成为店序列,并作出这两个序列的循环卷积与线性卷积的结果在范围内相同。
根据DFT循环卷积性质中的卷积定理便可通过两种方法求两个序列的循环卷积:一是直接根据定义计算;二是根据性质先分别求两个序列的N点DFT,并相乘,然后取IDFT以得到循环卷积。
第二种方法看起来要经过若干个步骤,但由于求序列的DFT和IDFT都有快速算法,因此它的效率比第一种方法要高得多。
同样,根据线性卷积和循环卷积的关系,可以通过计算循环卷积以求得线性卷积,提高计算序列线性卷积的效率。
4、实验内容输入程序序列如下:n=[0:1:4];m=[0:1:3];x1=1+n;x2=4-m; %生成函数x1和x2L1=length(x1)-1;L2=length(x2)-1; %取函数的长度y1=conv(x1,x2); %直接用函数conv计算线性卷积n1=[0:1:L1+L2];subplot(3,1,1);stem(n1,y1) %绘制线性卷积图形xlabel('n');ylabel('y(n)'); %标注x、y轴N2=5; %求5点圆卷积if length(x1)>N2error('N必须大于序列x1的长度')endif length(x2)>N2error('N必须大于序列x2的长度')end %以上语句判断两个序列的长度是否小于N X21=fft(x1,N2); %作序列1的FFTX22=fft(x2,N2); %作序列2的FFTy2=ifft(X21.*X22); %求两序列的循环卷积(时域)n2=[0:1:N2-1];subplot(3,1,2);stem(n2,y2) %绘制两序列循环卷积图形axis([0,7,0,40]) %修改x、y轴长度N3=8if length(x1)>N3error('N必须大于序列x1的长度')endif length(x2)>N3error('N必须大于序列x2的长度')endx31=[x1,zeros(1,N3-length(x1))]x32=[x2,zeros(1,N3-length(x2))]X31=fft(x31)X32=fft(x32)y3=ifft(X31.*X32)n3=[0:1:N3-1]subplot(3,1,3);stem(n3,y3)将程序输入MATLAB运行结果如下:MATLAB运行显示的图形为:五、实验心得:本次实验对我意义很大,让我熟练的运用了matlab软件。
循环卷积与线性卷积的实现

实验五循环卷积与线性卷积的实现一、实验目的(1) 进一步理解并掌握循环卷积与线性卷积的概念; (2) 理解掌握二者的关系。
二、实验原理两个序列的N 点的循环卷积定义为1[()()]()(())N N N k h n x n h m x n m -=⊗=-∑(0)n N ≤<从定义中可以看到,循环卷积和线性卷积的不同之处在于:两个N 点序列的N 点循环卷积结果仍为N 点序列,而它们的线性卷积的结果长度则为2N -1;循环卷积对序列的移位采取循环移位,而线性卷积对序列采取线性移位。
正是这些不同,导致了线性卷积和循环卷积有不同的结果和性质。
两个序列的N 点循环卷积是它们的线性卷积以N 为周期的周期延拓。
设序列()h n 的长度为1N ,序列()x n 的长度为2N ,此时线性卷积结果的序列点数为'121N N N =+-;因此如果循环卷积的点数N 小于121N N +-,那么上述周期性延拓的结果就会产生混叠,从而两种卷积会有不同的结果。
而如果满足'N N =的条件,就有循环卷积与线性卷积的结果在0n N ≤<范围内相同。
根据DFT 循环卷积性质中的卷积定理{[()()]}[()][()]N DFT h n x n DFT x n DFT h n ⊗=•因此可以根据性质先分别求两个序列的N 点DFT ,并相乘,然后取IDFT 以得到循环卷积。
三、实验分析例题:已知有限长序列()x n 与()h n 如下图所示, (1) 画出两者之间的线性卷积 (2) 8点圆卷积。
(3) 5点圆卷积。
解析如下:(1)()x n 与()h n 的线性卷积,由公式可知:()*()()()m h n x n x m h n m ∞=-∞=-∑()x m 与()h m -的图形如下:利用方格平移法:由方格平移法可知: 当0n =时,()*()0h n x n = 当1n =时,()*()0h n x n =当2n =时,()*()0*11*11h n x n =+= 当3n =时,()*()2*11*10*13h n x n =++= 当4n =时,()*()3*12*11*10*16h n x n =+++= 当5n =时,()*()3*12*11*10*16h n x n =+++= 当6n =时,()*()3*12*11*16h n x n =++= 当7n =时,()*()3*12*15h n x n =+= 当8n =时,()*()3*13h n x n ==得到图形如下:(2)()x n 与()h n 的8点圆卷积,由公式可知:78880()()(())(())()n x n h n x m h n m G n =⊗=-∑8(())x m 与8(())h m -的图形如下:根据下面图表可计算得到圆卷积:取和得到圆卷积为3。
matlab实验报告

xlabel('n');ylabel('x(n)');axis([2,1,1,2])
n=0:6;x1=[x1,zeros(1,7)];
x1=[2,1,1,2];x2=[1,-1,-1,1];y=circonvt(x1,x2,7)
subplot(2,1,1);stem(n,y);title('Original sequence')
xlabel('n');ylabel('x(n)');axis([2,1,1,2])
n=0:7;x1=[x1,zeros(1,8)];
x1=[2,1,1,2];x2=[1,-1,-1,1];y=circonvt(x1,x2,8)
subplot(2,1,1);stem(n,x3);title('Original sequence')
xlabel('n');ylabel('x(n)');axis([2,1,1,2])
四.实验结果与理论分析讨论
1.y =
0 -2 0 2
y =
2 -1 -2 2 -2 -1 2
y =
2 -1 -2 2 -2 -1 2 0
subplot(2,1,1);stem(n,y);title('Original sequence')
xlabel('n');ylabel('x(n)');axis([2,1,1,2])
n=0:7;x1=[x1,zeros(1,8)];
循环卷积与线性卷积的实现

循环卷积与线性卷积的实现一、实验目的(1)进一步理解并掌握循环卷积与线性卷积的概念。
(2)理解掌握二者的关系。
二、实验原理两个序列的N 点循环卷积定义为[h(n)○*x(n)]N =∑-=10k N h(m)x((n-m))N N)n 0(<≤从定义中可以看到,循环卷积和线性卷积的不同之处在于:两个N 点序列的N 点循环卷积的结果仍为N 点序列,而它们的线性卷积的结果长度则为2N-1;循环卷积对序列的移位采取循环移位,而线性卷积对序列采取线性移位。
正是这些不同,导致了线性卷积和循环卷积有不同的结果和性质。
循环卷积和线性卷积虽然是不同的概念,但是它们之间有一个有意义的公式联系在一起y(n)=[h(n)○*x(n)]N =(∑∞-∞=r 'y (n-rN))G N (n)其中'y (n)=h(n)*x(n)。
也就是说,两个序列的N 点循环卷积是它们的线性卷积以N 为周期的周期延拓。
设序列h(n)的长度为N 1,序列x(n)的长度为N 2,此时,线性卷积结果的序列的点数为'N =N 1+N 2-1;因此如果循环卷积的点数N 小于N 1+N 2-1,那么上述周期性延拓的结果就会产生混叠,从而两种卷积会有不同的结果。
而如果N 满足'N N =的条件,就会有)n ('y )n (y = (N <≤n 0)这就意味着在时域不会产生混叠。
因此我们得出结论:若通过在序列的末尾填充适当的零值,使得x(n)和h(n)成为N 1+N 2-1点序列,并作出这两个序列的N 1+N 2-1循环卷积,那么循环卷积与线性卷积的结果在N <≤n 0范围内相同。
根据DFT 循环卷积性质中的卷积定理DFT{[h(n)○*x(n)]N }=DFT[x(n)]∙DET[h(n)] 便可通过两种方法求两个序列的循环卷积:一是直接根据定义计算;二是根据性质先分别求两个序列的N 点DFT ,并相乘,然后取IDFT 以得到循环卷积。
线性卷积与循环卷积的关系及相关算法应用(下附讲稿)

y(1:N)=y(M:M+N-1);
for L=2:10
1
overlap=x((L-1)*N-M+2:(L-1)*N);
yk=ifft(fft([overlap x((L-1)*N+1:L*N)],M+N-1).*Hk);
y((L-1)*N+1:L*N)=yk(M:N+0M0-1); 5
10
15
20
线性卷积
周期卷积
%============将线性卷积以循环卷积长度(设为3)进行周期 延拓,得到周期卷积序列 x=[0 1 4 7 6]; n3=0:11; j=[0 1 4];y2=x(mod(n3,3)+1); %这个函数只能对序列(mod(n,m))中的0: m-1范围进行周期延拓, 实现不了周期延拓性的叠加 k=[7 6 0]; y3=k(mod(n3,3)+1); y4=y2+y3; figure; stem(n3,y4,'filled');xlabel('n');ylabel('y');title('图三 周期卷积'); grid on;
7
重叠保留法 6
xk=[1 2 3];
h=[1 2];
N=3;M=2;
5
for L=1:10
x((L-1)*N+1:L*N)=xk; 4
end
Hk=fft(h,M&M+N*10-1);
overlap=zeros(1,M-1); y(1:M+N-1)=ifft(fft([overlap2 x(1:N)],M+N-1).*Hk);
长度 N 长度 M
周期卷积_循环卷积与线性卷积.

-111111-1-1-1-1 -111111-1-1-1-1 -1-111111-1-1-1 -1-1-111111-1-1 -1-1-1-111111-1
11111-1-1-1-1-1 1-1-1-1-1-11111
11-1-1-1-1-1111 111-1-1-1-1-111 1111-1-1-1-1-11 11111-1-1-1-1-1
m 0 6
y(2) [ x1 (m) x2 ((2 m))7 ]R7 (m) 11 11 11 0 1 0 0 0 0 0 0 3
m 0 6
y(3) [ x1 (m) x2 ((3 m))7 ]R7 (m) 1 0 11 11 0 1 0 1 0 0 0 2 2
0 1 2 3
m
~ x2 (m)
计算区
m
4.2.1 周期卷积
~ y (1) ~ x1 (m) x2 (1 m)
m 0 5
4
~ x1 (m)
1 1 1 0 1 0 1 0 0 1 0 1 1
0 1 2 3
m
~ x2 (1 m)
m
4.2.1 周期卷积
信号与系统 圆卷积仿真实验

循环卷积与线性卷积的实现一、实验目的1)进一步理解并掌握循环卷积与线性卷积的概念; 2)理解掌握二者的关系。
二、实验原理两个序列的N 点循环卷积定义为从定义中可以看到,循环卷积和线性卷积的不同之处在于:两个N 点序列的N 点循环卷积的结果仍为N 点序列,而它们的线性卷积的结果的长度为2N-1;循环卷积对序列的移位采取循环移位,而线性卷积对序列采取线性移位。
正是这些不同,导致了线性卷积和循环卷积有不同的结果和性质。
循环卷积和线性卷积虽然是不用的概念,但它们之间由一个有意义的公式联系在一起其中。
也就是说,两个序列的N 点循环卷积是它们线性卷积以N 为周期的周期延拓。
设序列还的长度为,序列的长度为,此时,线性卷积结果的序列的点数为;因此如果循环卷积的点数N 小于,那么上述周期性延拓的结果就会产生混叠,从而两种卷积会有不同的结果。
而如果N 满足的条件,就会有这就意味着时域不会产生混叠。
因此,我们得出结论:若通过在序列的末尾填充适当的零值,使得和成为点序列,并作为这两个序列的循环卷积,那么循环卷积与线性卷积的结果在范围内相同。
1[()()]()(())N N Nk h n x n h m x n m -=⊗=-∑(0)n N ≤<()[()()](())()N N r y n h n x n y n rN G n ∞=-∞'=⊗=-∑()()()y n h n x n '=*()h n 1N ()x n 2N 121N N N '=+-121N N +-N N '=()()y n y n '=(0)n N ≤<()x n ()h n 121N N +-121N N +-0n N ≤<根据DFT 循环卷积性质中卷积定理便可通过两种方法求两个序列的循环卷积:一直直接根据定义计算;二是根据性质先分别求两个序列的N 点DFT ,并相乘,然后取IDFT 以得到循环卷积。
循环卷积与线性卷积的实现.docx

实验五 循环卷积与线性卷积的实现一、实验目的(1) 进一步理解并掌握循环卷积与线性卷积的概念;(2) 理解掌握二者的关系。
二、实验原理两个序列的N 点的循环卷积定义为10[()()]()(())N N Nk h n x n h m x n m -=⊗=-∑ (0)n N ≤<从定义中可以看到,循环卷积和线性卷积的不同之处在于:两个N 点序列的N 点循环卷积结果仍为N 点序列,而它们的线性卷积的结果长度则为2N -1;循环卷积对序列的移位采取循环移位,而线性卷积对序列采取线性移位。
正是这些不同,导致了线性卷积和循环卷积有不同的结果和性质。
两个序列的N 点循环卷积是它们的线性卷积以N 为周期的周期延拓。
设序列()h n 的长度为1N ,序列()x n 的长度为2N ,此时线性卷积结果的序列点数为'121N N N =+-;因此如果循环卷积的点数N 小于121N N +-,那么上述周期性延拓的结果就会产生混叠,从而两种卷积会有不同的结果。
而如果满足'N N =的条件,就有循环卷积与线性卷积的结果在0n N ≤<范围内相同。
根据DFT 循环卷积性质中的卷积定理{[()()]}[()][()]N DFT h n x n DFT x n DFT h n ⊗=•因此可以根据性质先分别求两个序列的N 点DFT,并相乘,然后取IDFT 以得到循环卷积。
三、实验分析例题:已知有限长序列()x n 与()h n 如下图所示,(1) 画出两者之间的线性卷积(2) 8点圆卷积。
(3) 5点圆卷积。
解析如下:(1)()x n 与()h n 的线性卷积,由公式可知:()*()()()m h n x n x m h n m ∞=-∞=-∑()x m 与()h m -的图形如下:利用方格平移法:11 1 1 13 2 1 0 0当0n =时,()*()0h n x n =当1n =时,()*()0h n x n =当2n =时,()*()0*11*11h n x n =+=当3n =时,()*()2*11*10*13h n x n =++=当4n =时,()*()3*12*11*10*16h n x n =+++=当5n =时,()*()3*12*11*10*16h n x n =+++=当6n =时,()*()3*12*11*16h n x n =++=当7n =时,()*()3*12*15h n x n =+=当8n =时,()*()3*13h n x n ==得到图形如下:(2)()x n 与()h n 的8点圆卷积,由公式可知:78880()()(())(())()n x n h n x m h n m G n =⊗=-∑8(())x m 与8(())h m -的图形如下:根据下面图表可计算得到圆卷积:当0n =时:1 1 1 1 1 00 0 0 0 0 0 3 21 0 0 0 0 0 3 00 0 取和得到圆卷积为3。
实验二 线性卷积与循环卷积

实验二线性卷积与循环卷积(1)线性卷积n=[0:1:3]%N1=length(n);%xnn=ones(1,N1);xn=(n+1).*((n>=0)-(n>=4));hn=(4-n).*((n>=0)-(n>=4));subplot(311);stem(n,xn,'.');axis([0 6 0 6]);title('x(n)=()');subplot(312);stem(n,hn,'.');axis([0 6 0 6]);title('h(n)');yn=conv(xn,hn);N2=[0:1:length(yn)-1]subplot(313);stem(N2,yn,'.');axis([0 6 0 30])title('y(n)=x(n)*h(n)');x(n)=(n+1)R4(n)0123456h(n)=(4-n)R4(n)0123456y(n)=x(n)*h(n)0123456(2)循环卷积n=[0:1:3]N1=length(n);xnn=ones(1,N1);xn=(n+1).*xnn;hn=(4-n).*xnn;yln=conv(xn,hn);ycn5=circonv(xn,hn,5); ycn6=circonv(xn,hn,6); ycn7=circonv(xn,hn,7); ycn8=circonv(xn,hn,8);ny1=[0:1:length(yln)-1]; ny5=[0:1:length(ycn5)-1]; ny6=[0:1:length(ycn6)-1]; ny7=[0:1:length(ycn7)-1]; ny8=[0:1:length(ycn8)-1];subplot(321);stem(ny1,yln,'.');title('yln');axis([0 8 0 40]);subplot(322);stem(ny5,ycn5,'.');title('5µãycn');axis([0 8 0 40]);subplot(323);stem(ny6,ycn6,'.');title('6µãycn');axis([0 8 0 40]);subplot(324);stem(ny7,ycn7,'.');title('7µãycn');axis([0 8 0 40]);subplot(325);stem(ny8,ycn8,'.');title('8µãycn');axis([0 8 0 40]);(3)fft 函数实现圆卷积n=[0:1:3] N1=length(n); xnn=ones(1,N1); xn=(n+1).*xnn; hn=(4-n).*xnn; N1=length(xn); N2=length(hn); N=N1+N2-1; NN1=5; NN2=6; NN3=7; NN4=8; XK=fft(xn,N); HK=fft(hn,N); YK=XK.*HK;x=0:N-1; yn=ifft(YK,N); subplot(321);02468yln024685点ycn024686点ycn024687点ycn8点ycnstem(x,yn,'.');axis([0 8 0 40]);title('yln');x=0:NN1-1;yn=ifft(YK,NN1);subplot(322);stem(x,yn,'.');axis([0 8 0 40]);title('5µãycn');x=0:NN2-1;yn=ifft(YK,NN2);subplot(323);stem(x,yn,'.');axis([0 8 0 40]);title('6µãycn');x=0:NN3-1;yn=ifft(YK,NN3);subplot(324);stem(x,yn,'.');axis([0 8 0 40]);title('7µãycn');x=0:NN4-1;yn=ifft(YK,NN4);subplot(325);stem(x,yn,'.');axis([0 8 0 40]);title('8µãycn');附:function yc=circonv(x1,x2,N)if length(x1)>Nerror('N must not be less than length of x1'); endif length(x2)>Nerror('N must not be less than length of x2'); endx1=[x1,zeros(1,N-length(x1))];x2=[x2,zeros(1,N-length(x2))];n=[0:1:N-1];x2=x2(mod(-n,N)+1);H=zeros(N,N); for n=1:1:NH(n,:)=cirshiftd(x2,n-1,N); end yc=x1*H';function y=cirshiftd(x,m,N) if length(x)>Nerror('length of x must be less than N'); endx=[x,zeros(1,N-length(x))]; n=[0:1:N-1]; y=x(mod(n-m,N)+1);02468yln024685点ycn024686点ycn024687点ycn024688点ycn。
ch335循环卷积

这就是频域采样定理。
2020/8/10
16
x(n)--X(z)--X(k)--xp(n)--xN(n)
5
例1 已知序列x1(n)和x2(n)如下:
1,0n24
,0n9
x2(n)
0,others
(1)求x1(n)和x2(n)的25点循环卷积y1(n) (2)求x1(n)和x2(n)的34点循环卷积y2(n)
解: (1)
10 y1(n)0
0n24 另外:
others
(2)
y1(n) [ y2(n25q)]R25(n)
y2(n )x1(n ) x2(n )x1(n )*x2(n )
q
1 ,2 ,3 ,...,1 0 ,1 0 ,...,1 0 ,9 ,8 ,...,1n0 ,1 ,2 ,...,9 ,1 0 ,...,2 4 ,2 5 ,2 6 ,...3 3
0
为了下面分析方便,先将x1(n)和x2(n)以L为周期进行延拓, 得到两个周期序列
和 它们的周期卷积为
2020/8/10
3
注意到在区间0≤m≤L-1中,x1((m))L=x1(m);并交换求和次 序得
上式表明,x1(n)和x2(n)的周期卷积是它们的线性卷积的 周期延拓。对周期卷积取主值,得到循环卷积
如果在单位圆上对X(z)进行等角距取样,取样点数为M, 则得
根据DFT的定义,对X(k)求反变换得
2020/8/10
9
现在我们来考察xp(n)与原序列x(n)的关系,看它如何才能代 表原序列x(n)。
线性卷积与圆周卷积的计算(杭电)

信号、系统与信号处理实验Ⅱ实验报告实验名称:线性卷积与圆周卷积的计算一、实验目的1、通过编程,上机调试程序,进一步增强使用计算机解决问题的能力。
2、掌握线性卷积与圆周卷积软件实现的方法,并验证两者之间的关系。
二、实验内容与要求已知两个有限长序列:x(n)=δ(n)+2δ(n-1)+3δ(n-2)+4δ(n-3)+5δ(n-4);h(n)=δ(n)+2δ(n-1)+δ(n-2)+2δ(n-3)1.编制一个计算两个线性卷积的通用程序,计算x(n)*h(n)。
2.编制一个计算圆周卷积的通用程序,计算上述4种情况下两个序列x(n)与h(n)的圆周卷积。
3.上机调试并打印或记录实验结果。
4.将实验结果与预先笔算的结果比较,验证真确性。
三、实验程序与结果1、计算两个线性卷积的通用程序,计算x(n)*h(n)。
xn=[1 2 3 4 5]hn=[1 2 1 2]N=length(xn);M=length(hn);L=N+M-1;for(n=1:L)y(n)=0;for(m=1:M)k=n-m+1;if(k>=1&k<=N)y(n)=y(n)+hn(m)*xn(k);endendendy=conv(xn,hn);ny=0:L-1;stem(ny,y) ;xlabel('n ');ylabel('y(n) ');figurestem(ny,yn) ;xlabel('n ');ylabel('y ');根据定义编写循环实现线性卷积结果:01234567n y (n )Conv 函数实现线性卷积结果:01234567n y2. 计算圆周卷积的通用程序,计算上述4种情况下两个序列x(n)与h(n)的圆周卷积。
主程序:clear allN=[5 6 9 10];xn=[1 2 3 4 5];hn=[1 2 1 2];yc1=circonv(xn,hn,N(1))yc2=circonv(xn,hn,N(2))yc3=circonv(xn,hn,N(3))yc4=circonv(xn,hn,N(4))figurestem(0:N(1)-1,yc1);xlabel('时间序号n');ylabel('信号幅度');title('5点圆周卷积');figurestem(0:N(2)-1,yc2);xlabel('时间序号n');ylabel('信号幅度');title('6点圆周卷积');figurestem(0:N(3)-1,yc3);xlabel('时间序号n');ylabel('信号幅度');title('9点圆周卷积');figurestem(0:N(4)-1,yc4);xlabel('时间序号n');ylabel('信号幅度');title('10点圆周卷积');定义函数:function yc=circonv(x1,x2,N)if length(x1)>Nerror('N必须大于等于x1的长度'); endif length(x2)>Nerror('N必须大于等于x2的长度'); endx1=[x1,zeros(1,N-length(x1))];x2=[x2,zeros(1,N-length(x2))];n=[0:N-1];x2=x2(mod(-n,N)+1);H=zeros(N,N);for n=1:1:NH(n,:)=cirshiftd(x2,n-1,N);yc=x1*H';function y=cirshiftd(x,m,N)if length(x)>Nerror('x 的长度必须小于N');endx=[x,zeros(1,N-length(x))];n=[0:1:N-1];y=x(mod(n-m,N)+1);时间序号n 信号幅度5点圆周卷积00.51 1.52 2.533.54 4.55时间序号n 信号幅度时间序号n 信号幅度时间序号n 信号幅度四、仿真结果分析编写的线性卷积程序和conv 函数的结果相同,也与笔算结果相同。
5-求解线性卷积、循环卷积的课上例题知识讲解

求解线性卷积、循环卷积的课上例题例:}1,1,1{)()(3==n R n x ,20≤≤n ;}1,2,3,4{)()4()(4=-=n R n n h ,30≤≤n ,求线性卷积)(*)()(n h n x n y =和L 点循环卷积。
线性卷积:)(*)()(n h n x n y =∑∞-∞=-=m m n h m x )()(∑∞-∞=-=m m n x m h )()(1y (n )={4, 7, 9, 6, 3, 1},50≤≤n ,非零数据长度6=4+3-1 ()(n h 长度为N ,)(n x 长度为M ,y (n )长度为1-+M N )2)移位加权和法(以n 为变量) ∑=-=21)()()(m m m m n h m x n y )2()2()1()1()()0(-+-+=n h x n h x n h x ,其中}1 1, ,1{)(=m x ,20≤≤my (n )={4, 7, 9, 6, 3, 1}50≤≤nL 点循环卷积:)())(()()(1n R m n h m x n y L L m L c ∑-=-=)())(()(1n R m n x m h L L m L ∑-=-=1)矩阵方程法(以m 为变量)先将x (n )、h (n )补零到L 点长;再将其中一个序列周期延拓、翻褶、取主值区间的值、循环右移构成方阵,将另一个序列写成列矩阵,二者做矩阵乘法运算。
以用x (n )构成方阵为例。
方阵第一行的构成:x (0)不动,将其它值从后往前倒过来写。
下面各行依次对上一行循环右移一位,共L 行。
例:求)()(3n R n x =,)()4()(4n R n n h -=的4点循环卷积)()()(1n h n x n y c ④=。
⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=69870111432114322143321412341110011110111101)(1n y c y c 1(n )={7, 8, 9, 6},30≤≤n例:求)()(3n R n x =,)()4()(4n R n n h -=的8点循环卷积)()()(2n h n x n y c ⑧=。
lesson 11 利用循环卷积计算线性卷积

X z
n
x n z n
如果在单位圆上对 X z 进行等角距取样,取样点数为 M, 则得 k X k X z z W k xn WM n
M
n
频率取样
Frequency Sampling
根据DFT的定义,对 X k 求反变换得
函数 e j
2 j k j N 1 e N e 在 2 k 时的模值均为 1。
sin N / 2 e 2 N sin k / 2 N
N k j 2 2 N
利用循环卷积计算线性卷积
Linear Convolution Computation by Circular Convolution
Lesson 11
一个问题
许多实际问题中常需要计算线性卷积,如一个FIR数字 滤波器的输出就等于输入与滤波器的单位取样响应的 线性卷积。而循环卷积可以利用后面介绍的FFT进行快 速计算,因此就提出一个问题:如何利用循环卷积计 算线性卷积,或者是,在什么条件下循环卷积等于线 性卷积?
1 zN 其中 z N 1 WN k z 1
频率取样
Frequency Sampling
将 z e j 代入内插公式,便得到傅立叶变换的内插公式
X e j X k e j
k 0
j 其中 e
N 1
1e
jN
下图画出了在 N 5, k 0,1,2,3 时 e j 的曲线。
N
频率取样
Frequency Sampling
k 0
k 1
e j
N 5
离散信号与系统的频谱分析实验报告

实验二 离散信号与系统的频谱分析一、实验目的1.掌握离散傅里叶变换(DFT )及快速傅里叶变换(FFT )的计算机实现方法。
2.检验序列DFT 的性质。
3.掌握利用DFT (FFT )计算序列线性卷积的方法。
4.学习用DFT 对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差,以便在实际中正确应用DFT 。
5.了解采样频率对谱分析的影响。
6.了解利用FFT 进行语音信号分析的方法。
二、实验设备1.计算机2.Matlab 软件7.0以上版本。
三、实验内容1.对不同序列进行离散傅里叶变换并进行分析;DFT 共轭对称性质的应用(通过1次N 点FFT 计算2个N 点实序列的DFT )。
2.线性卷积及循环卷积的关系,以及利用DFT (FFT )进行线性卷积的方法。
3.比较计算序列的DFT 和FFT 的运算时间。
4.利用FFT 实现带噪信号检测。
5.利用FFT 计算信号频谱及功率谱。
6.扩展部分主要是关于离散系统采样频率、时域持续时间、谱分辨率等参数之间的关系,频谱的内插恢复,对语音信号进行简单分析。
四、实验原理1.序列的离散傅里叶变换及性质离散傅里叶变换的定义:10, )()]([)(102-≤≤==∑-=-N k en x n x DFT k X N n nk Nj π离散傅里叶变换的性质:(1)DFT 的共轭对称性。
若)()()(n x n x n x op ep +=,[])()(n x DFT k X =,则:)()]([k X n x DFT R ep =, )()]([k jX n x DFT I op =。
(2)实序列DFT 的性质。
若)(n x 为实序列,则其离散傅里叶变换)(k X 为共轭对称,即10),()(*-≤≤-=N k k N X k X 。
(3)实偶序列DFT 的性质。
若)(n x 为实偶序列,则其离散傅里叶变换)(k X 为实偶对称,即10),()(-≤≤-=N k k N X k X 。
(完整word版)5 求解线性卷积、循环卷积的课上例题

求解线性卷积、循环卷积的课上例题例:}1,1,1{)()(3==n R n x ,20≤≤n ;}1,2,3,4{)()4()(4=-=n R n n h ,30≤≤n ,求线性卷积)(*)()(n h n x n y =和L 点循环卷积。
线性卷积:)(*)()(n h n x n y =∑∞-∞=-=m m n h m x )()(∑∞-∞=-=m m n x m h )()(1y (n )={4, 7, 9, 6, 3, 1},50≤≤n ,非零数据长度6=4+3-1 ()(n h 长度为N ,)(n x 长度为M ,y (n )长度为1-+M N )2)移位加权和法(以n 为变量) ∑=-=21)()()(m m m m n h m x n y )2()2()1()1()()0(-+-+=n h x n h x n h x ,其中}1 1, ,1{)(=m x ,20≤≤my (n )={4, 7, 9, 6, 3, 1}50≤≤nL 点循环卷积:)())(()()(1n R m n h m x n y L L m L c ∑-=-=)())(()(1n R m n x m h L L m L ∑-=-=1)矩阵方程法(以m 为变量)先将x (n )、h (n )补零到L 点长;再将其中一个序列周期延拓、翻褶、取主值区间的值、循环右移构成方阵,将另一个序列写成列矩阵,二者做矩阵乘法运算。
以用x (n )构成方阵为例。
方阵第一行的构成:x (0)不动,将其它值从后往前倒过来写。
下面各行依次对上一行循环右移一位,共L 行。
例:求)()(3n R n x =,)()4()(4n R n n h -=的4点循环卷积)()()(1n h n x n y c ④=。
⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=69870111432114322143321412341110011110111101)(1n y c y c 1(n )={7, 8, 9, 6},30≤≤n例:求)()(3n R n x =,)()4()(4n R n n h -=的8点循环卷积)()()(2n h n x n y c ⑧=。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果 X 3 (k) X1(k) X 2 (k)
则 x3 (n)
N
1
~x1
(m)
~x2
(n
m) RN
(n)
m0
N 1
x1 (m) x2 (n m) N m0
x1(n) ○N x2(n) 0 n N 1
上式称为循环卷积或圆周卷积
注: ~x1(n)为 x1(n)序列的周期化序列;~x1(n)RN (n)为~x1(n) 的主值 序列。上机编程计算时, x3(n)可表示如下:
实验二 线性卷积与循环卷积的计算
• 一、实验目的 • 1、掌握计算机的使用方法和常用系统软件及应用
软件的使用。 • 2、通过编程,上机调试程序,进一步增强使用计
算机解决问题的能力。 • 3、掌握线性卷积与循环卷积软件实现的方法,并
验证二者之间的关系。
• 一、实验目的
• 1、掌握计算机的使用方法和常用系统软件及应用 软件的使用。
思考:若系统脉冲响应 h(n) 长为 L ,系统 输入 x(n) 长为 P ,且 P L,应使用什么方 法进行编程上机计算?
四、实验要求及内容
已知两个有限长序列
x(n) (n) 2 (n 1) 3 (n 2) 4 (n 3) 5 (n 4)
H (N ) (n) 2 (n 1) (n 2) 2 (n 3)
1、实验前,预先笔算好这两个序列的线
性卷积及下列几种情况的循环卷积
(1)x(n) ⑤ h(n)
(2)x(n) ⑥ h(n)
(3)x(n) ⑨ h(n)
(4)x(n) ⑩ h(n)
2、编制一个计算两个序列线性卷积的通
• 1、列出计算两种卷积的公式,画出程序框图,并 列出实验程序清单(可略)(包括必要的程序说 明)。
• 2、记录调试运行情况及所遇问题的解决方法。
• 3、给出实验结果,并对结果作出分析。验证循环 卷积两者之间的关系。
用程序,计算 x(n) * h(n) 。
3、编制一个计算循环卷积的通用程序, 计算上述 4 种情况下两个序列 x(n) 与h(n) 的 循环卷积。 4、上机调试并打印或记录实验结果。 注:可在一个程序中用菜单形式实现上 述两种卷积的计算。 5、将实验结果与预先笔算的结果比较, 验证其正确性。
五、实验报告
输入序列为 x(n),系统的单位脉冲响应
为 h(n),输出序列为 h(n),则系统输出
为:
y(n) x(m)h(n m) x(n) * h(n) m
或
y(n) h(m)x(n m) h(n) * x(n)
m
上式称为离散卷积或线性卷积
图 2.1 示出线性时不变系统的输入、输 出关系。
n
N 1
x3 (n) x1(m)x2 (n m) x1(m)x2 (N n m)
m0
mn1
3、两个有限长序列的线性卷积 序列x1(n)为 L 点长,序列x2(n)为 P 点长,x3(n)为这两个 序列的线性卷积,则 x3(n)为
x3 (n) x1(m)x2 (n m) m
• 2、通过编程,上机调试程序,进一步增强使用计 算机解决问题的能力。
• 3、掌握线性卷积与循环卷积软件实现的方法,并 验证二者之间的关系。
二、基本原理
1、线性卷积:
线 性 时 不 变 系 统 ( Linear
Time-Invariant System, or L. T. I
系统)输入、输出间的关系为:当系统
(n) → L. T. I —→h(n)
x(n) —→
L. T. I
—→y(n)
x(m)h(n m)
0
h(n)
m
图 2.1 线性时不变系统的输入、输出关系
2、循环卷积
设两个有限长序列 x1(n)和 x2(n),均为 N 点长
x1 (n)
DFT X1(k)
x2 (n)
D F T X 2 (k)
且线性卷积 x3(n)的最大长 LP1,也就是说当n1和 n LP1时 x3(n) 0。
4、循环卷积与线性卷积的关系 序列 x1(n) 为 L 点长,序列 x2 (n) 为 P 点长,若序列x1(n) 和 x2(n)进行 N 点的循环卷积,其结果是否等于该两序列 的线性卷积,完全取决于循环卷积的长度:
当 N L P1时循环(圆周)卷积等于线 性卷积,即
x1(n) ○N x2(n) x1(n)* x2(n) 当 N L P1时,循环卷积等于两个序列 的线性卷积加上相当于下式的时间混 叠,即
x3 N
(n
rN
)
0
0 n N 1 其它n