1 / 19
文档名称:

matlab实验报告北京邮电大学精要.docx

格式:docx   页数:19
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

matlab实验报告北京邮电大学精要.docx

上传人:今晚不太方便 2016/5/29 文件大小:0 KB

下载得到文件列表

matlab实验报告北京邮电大学精要.docx

相关文档

文档介绍

文档介绍:Matlab 实验报告学院:信息与通信工程学院班级: 201321113 学号: 2013210381 班内序号: 18 姓名:石雪原实验题目 1. 实现重叠相加和重叠保留算法一. 实验原理重叠相加法和重叠保留法的实质都是以逐段地方式通过循环卷积来完成线性卷积的计算。将输入序列 x(n )进行分段,每段长为 N,且N≥M(M 为有限长因果序列 h(n )的长度),x(n) 逐段与 h(n )进行循环卷积,在重叠保留法中需在 x(n )序列首部加入长度为 M-1 的0 序列。在算法中, 在获得 N 个点的输入后, 进行 N+M-1 点循环卷积计算, 之后输出 N 个点。通过 for 循环逐段进行循环卷积,使用 FFT 和 IFFT 计算两个有限长序列的 N 点循环卷积结果。二. 源代码和流程图重叠相加法代码 function [Y]=overpl(x,h,N) Lx=length(x); % 序列长度 M=length(h); %h (n )长度 x=[x,zeros(1,N-1)]; t=zeros(1,M-1); Y=zeros(1,Lx+M-1); a=floor(Lx/N); for k=0:a A=x(k*N+1:k*N+N); y1=fft(A,Lx+M-1); % 利用 fft 进行运算 y2=fft(h,Lx+M-1); y3=y1.*y2; q=ifft(y3,Lx+M-1); Y(k*N+1:k*N+M-1)=q(1:M-1)+t(1:M-1); Y(k*N+M:k*N+N)=q(M:N); t(1:M-1)=q(N+1:N+M-1); end Y(1:Lx+M-1); 对应流程图图一图一图二图一:每段利用 fft和 ifft 实现循环卷积图二:对x(n) 逐段进行循环卷积然后相加得输出线性卷积结果 y(n) 重叠保留法代码 function [Y]=overlpsav(x,h,N) Lx=length(x); M=length(h); M1=M -1; L=N-M1; h=[h,zeros(1,N-M)]; x=[zeros(1,M1),x,zeros(1,N-1)]; L点IDFT L点DFT X(n) 0< 1 n N ? ? 1 L N M ? ?? L点DFT Xh(n) 0 1 n M ? ??( ) ( ) ( ) y n x n h n ? ? L点循环卷积 L=N+M-1 (M-1)点缓存?后(M-1)点前N点( ) y n ( ) h n ( ) l x n a=floor ((Lx+M1-1)/(L))+1; Y=zeros(1,N); for k=0:a-1 xk=x(k*L+1:k*L+N); b=fft(xk,N); C=fft(h,N); Z=b.*C; Y(k+1,:)=ifft(Z,N); end Y=Y(:,M:N)'; Y=(Y(:))' 对应流程图装成单列向量再转置成行向量输出 Y 中各行均去掉前 M- 1 个样本,转置后构成新的 Y 把 K+1 ×N 阶输出矩阵Y 初始化把x 前面加 上( M-1 ) 个零将h 延长至循环长度 N 各段搭接长度 M1 , 有效数据长度 L 输入数据 x 长度及脉冲响应长度各段进行卷积三. 实验结果重叠相加法 x=[1,2,3] h=[1,2,3] N=4 重叠保留法 x=[1,2,3,4,5,6,7,8,9,10] h=[1,0,-1] N=4 四. 结果分析(有关运算量的定量分析结果) 有限长因果序列 x(n)h(n) 的长度分别为 N和M, 直接计算线性卷积 y(n),y(n )可视为 N 个序列的叠加结果,序列长度为 M, 所以每生成一个序列需完成 M 次乘法,共需完成 MN 次乘法运算。这 N 个序列依次向右移动一位故需( N-1 )( M-1 )次加法运算。按照 FFT 和 IFFT 计算线性卷积时,设 L=N=M-1, 整个运算过程包含了 2个 FFT 、一个 IFFT 和L 此乘法运算,所以,按基 2 频域抽选算法实现 FFT 或 IFFT ,共需完成 次乘法和加法运算。五. 讨论总结 越大快算法的运算量越小, 即实现重叠相加法和重叠保留法的运算量越小。 2. MATLAB 软件使用方法和语言不熟悉,通过查阅书籍网络解决。实验题目 2 :周期序列的谱分析实验目的:利用 DFT 分析模拟信号???? cos 16 a x t t ??之频谱。试验内容: 1 、设定采样周期 T 并说明原因根据奈奎斯特取样条件, fs>=2f=2*8=16Hz ,所以取 fs=20Hz , T=1/f= 。 2 、若令( ) cos(16 ) x n