
<p>MATLAB常用函数</p><p>数字信号处理与MATLAB 实现</p><p>1. n1=[ns:nf];</p><p>x1=[zeros(1,n0-ns),1,zeros</p><p>(1,nf-n0)]; %单位抽样序列的产生</p><p>2. subplot(2,2,4) 画2行2列的第4个图</p><p>3.</p><p>stem(n,x)</p><p>%输出离散序列,(plot 连续)</p><p>4. 编写子程序可调用</p><p>4.1 单位抽样序列)(0</p><p>n n -δ生成函数impseq.m [x,m]=impseq(n0,ns,nf); %序列的起点为ns ,终点为nf ,在n=n0点处生成一个单位脉冲</p><p>n=[-5:5];x1=3*impseq(2,-5,5)-impseq(-4,-5,5)</p><p>x1 =</p><p>0 -1 0 0 0 0</p><p>0 3 0 0 0</p><p>n=[-5:5];x1=3*impseq(2,-4,5)-impseq(-4,-5,4)</p><p>%起点到终点长度要一致</p><p>x1 =</p><p>0 -1 0 0 0 0</p><p>3 0 0 0</p><p>4.2 单位阶跃序列)(0</p><p>n n u -生成函数stepseq.m [x,n]=stepseq(no,ns,nf) %序列的起点为ns ,终点为nf ,在n=n0点处生成一个单位阶跃</p><p>4.3 两个信号相加的生成函数sigadd.m</p><p>[y,n]=sigadd(x1,n1,x2,n2)</p><p>4.4 两个信号相乘的生成函数sigmult.m</p><p>[y,n]=sigmult(x1,n1,x2,n2)</p><p>4.5 序列移位y(n)=x(n-n0)的生成函数sigshift.m</p><p>[y,n]=sigshift(x,m,n0)</p><p>4.6 序列翻褶y(n)=x(-n)的生成函数sigfold.m</p><p>[y,n]=sigfold(x,n)</p><p>4.7 evenodd.m 函数可以将任一给定的序列x(n)分解为xe(n)和xo(n)两部分</p><p>[xe,xo,m]=evenodd(x,n)</p><p>4.8 序列从负值开始的卷积conv_m, conv 默认从0开始</p><p>function [y,ny]=conv_m(x,nx,h,nh)</p><p>有{x(n):nx1≤n ≤nx2},{h(n):nh1≤n ≤nh2}, 卷积结果序列为{y(n):nx1+nh1≤n ≤nx2+nh2}</p><p>例. 设1132)(-++=z z z X ,)(-+++=z z z z X</p><p>,求</p><p>)()()(2</p><p>1z X z X z Y +=</p><p>程序:</p><p>x1=[1,2,3];n1=-1:1;</p><p>x2=[2,4,3,5];n2=-2:1;</p><p>[y,n]=conv_m(x1,n1,x2,n2)</p><p>结果:</p><p>y =</p><p>2 8 17 2</p><p>3 19 15 n =</p><p>-3 -2 -1 0 1 2</p><p>因此2</p><p>82)(--+++++=z z z z z z Y 计算1121))9.01()9.01(()(---+-=z z z X ,9.0>z 得Z 反变换</p><p>b=1;a=poly([0.9 0.9 -0.9]);</p><p>[r,p,k]=residuez(b,a)</p><p>结果:</p><p>r =</p><p>0.2500</p><p>0.5000</p><p>0.2500</p><p>p =</p><p>0.9000</p><p>0.9000</p><p>-0.9000</p><p>[] 因此得到,9.0125.0)9.01(5.09.0125.0)(1211---++-+-=z z z</p><p>z X 9.0>z 相应的)()9.0(25.0)1()9.0)(1(9</p><p>5)()9.0(25.0)(1n u n u n n u n X n n n -++++=+ 5. [H,w]=freqz[B,A,M]</p><p>计算出M 个频率点上的频率响应,存放于H 向量中,M 个频率存放在w 向量中,freqz 函数自动将这M 个频率点均匀设置在频率范围[0,π]之间。若缺省w 和M 时,函数自动选取512个频率点计算。不带输出向量的freqz 函数将自动绘制幅频和相频曲线。</p><p>也可[H,w]=freqz(B,A);</p><p>plot(w/pi,abs(H)); 绘出幅频特性</p><p>6. zplane(z,p)</p><p>绘制出列向量z 中的零点(以符号o 表示)和列向量p 中的极点(以符号x 表示)以及参考单位圆。</p><p>7. 傅里叶变换信号时域和频域变换</p><p>连续对应着非周期,离散对应着周期。一个域的离散必然导致另一个域的周期延拓</p><p>8. fft 和ifft :一维快速傅里叶变换和逆傅里叶变</p><p>X=fft(x,N)</p><p>采用FFT算法计算序列向量X的N点DFT,缺省N时,fft函数自动按X的长度计算DFT。当N为2的整数次幂时,fft按基2算法计算,否则用混合基算法。ifft的调用格式类似。</p><p>9. fft2和ifft2: 二维快速正傅里叶变换和逆傅里叶变换</p><p>(1)Y=fft2(x)</p><p>数据二维傅里叶变换参数X是向量fft2(x)相当于fft(fft(x)’)’,即先对X的列做一维傅里叶变换,然后再对变换结果的行作一维傅里叶变换;若X 是向量,则此傅里叶变换即变成一维傅里叶变换fft; 若X是矩阵,则是计算该矩阵的二位傅里叶变换。</p><p>(2)Y=fft2(X, M, N)</p><p>通过对X进行补零或截断,使得X成为(M*N)的矩阵。</p><p>函数iff2的参数应用与函数fft2完全相同。10. czt: 线形调频Z变换</p><p>Y=czt(x,m,w,a)</p><p>此函数计算由z=a*w.^(-(0:m-1))定义的z平面螺</p>
讯享网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/178876.html