数字信号处理(第三版)课件 高西全 西安电子科技大学出版社 第一章精品.ppt
文本预览下载声明
% 实指数序列 n = 0:35; a = 1.2; K = 0.2; x = K*a.^n; stem(n,x); xlabel(Time index n);ylabel(Amplitude); % 正弦序列 n = 0:40; f = 0.1; phase = 0; A = 1.5; x = A*cos(2*pi*f*n - phase); clf; % Clear old graph stem(n,x); axis([0 40 -2 2]); grid on; title(Sinusoidal Sequence); xlabel(Time index n); ylabel(Amplitude); function [y,n] = seqadd(x1,n1,x2,n2) % 序列相加函数 % 实现y(n) = x1(n)+x2(n) % y = 在包含n1和n2的n点上求序列和, % x1 = 在位置向量n1上的第一序列 % x2 = 在位置向量n2上的第二序列(n2可与 n1不同) % y(n)的长度 n = min(min(n1),min(n2)) : max(max(n1),max(n2)); y1 = zeros(1,length(n)); y2 = y1; % 初始化 % 具有y的长度的x1 y1(find((n=min(n1)) (n=max(n1))))=x1; % 具有y的长度的x2 y2(find((n=min(n2)) (n=max(n2))))=x2; % 序列相加 y = y1+y2; function [y,n] = seqmult (x1,n1,x2,n2) % 序列相乘函数 % 实现y(n) = x1(n)+x2(n) % y = 在包含n1和n2的n点上求序列和, % x1 = 在位置向量n1上的第一序列 % x2 = 在位置向量n2上的第二序列(n2可与 n1不同) % y(n)的长度 n = min(min(n1),min(n2)) : max(max(n1),max(n2)); y1 = zeros(1,length(n)); y2 = y1; % 初始化 % 具有y的长度的x1 y1(find((n=min(n1)) (n=max(n1))))=x1; % 具有y的长度的x2 y2(find((n=min(n2)) (n=max(n2))))=x2; % 序列相加 y = y1 .* y2; function [y,ny] = seqshift(x,nx,n0) % 实现 y(n) = x(n-n0) % n0为平移样本数 ny = nx + n0; % 位置向量移位 y = x; % 序列的值不变 nx = 0:5; x = 0.5.^nx; n0 = 3; [y,ny] = seqshift(x,nx,n0); subplot(2,1,1); stem(nx,x); axis([0 10 0 1.2]); xlabel(nx); ylabel(x); subplot(2,1,2); stem(ny,y); axis([0 10 0 1.2]); xlabel(ny); ylabel(y); function [y,ny] = seqfold(x,nx) % 序列翻转(对n=0折叠)子程序 % 实现 y(n) = x(-n) % 将序列数值左右翻转 y = fliplr(x); % 将序列位置对零位置左右翻转,故同时改变正负号 ny = -fliplr(nx); 序列能量: Ex = sum( x .* conj(x) ); Ex = sum(abs(x) .^ 2); 例:画出信号x1(n) = 1.5*?(n+1) - ?(n-3)的波形。 n1=[-5:5]; x1=1.5*impseq(-1,-5,5) - impseq(3,-5,5); stem(n1,x1); grid on; xlabel(n); ylabel(x1(n)); axis([-5,5,-2,3]); 例:画出信号的波形。 x2(n) = n[u(n)-u(n-8)] - 10e-0.3(n-10)[u(n-10)-u(n-16)] n2=[0:20]; x21 = n2.*(ste
显示全部