数字信号处理(理论算法与实现)_胡广书(第三版)_随书光盘——使用说明
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字信号处理_胡广书(第三版)_随书光盘
关于光盘的使用说明
数字信号处理_胡广书(第三版)_随书光盘.rar
本光盘共包含六个子目录,其中三个是DSP_FORTRAN, DSP_C和DSP_MATLAB,另外三个是有关习题所需要的数据或文献。DSP_FORTRAN和DSP_C各含有约40个信号处理的子程序,概括了书中所涉及到的绝大部分算法。程序分别由FORTRAN语言和C语言编写(MA模型、ARMA模型及最小方差谱估计三个算法只给出了用C语言编写的程序, 没有给出相应的FORTRAN子程序),并在PC机上调试通过。编译环境是FORTRAN77 V5. 10和TURBO C2. 0。DSP_MATLAB含有近120多个用MA TLAB编写的信号处理程序,它们是本书各个章节的大部分例题,使用的是MA TLAB6.1。
FORTRAN子程序名称的长度全都是6位,扩展名为.for,C语言子程序的名称全部是7位,由相应的FORTRAN子程序在其名称前加字母m而形成,并将扩展名改为.c。为了方便读者的使用,光盘中还给出了调用FORTRAN子程序的简单主程序。读者只需将此主程序和主程序指定的子程序作编译、连接和运行,即可得出相应的结果。FORTRAN主程序的名称为7位或8位,它是在原FORTRAN子程序前加字母h所构成的,扩展名仍是.for。h后面的一个数(如果有的话)表示该程序是相应子程序的第几个主程序。例如,子程序desiir.for是用来设计IIR滤波器的FORTRAN子程序,对应的C程序是mdesiir.c,调用desiir.for 的第一个主程序是h1desiir.for(设计低通IIR DF),依此类推。
用MATLAB编写的程序的名称由“exa”开头,接下来是所在的章、节及例题的序号,如exa010101,指的是第1章第1节(即1.1节)的第1个例题,即例1.1.1。如果该程序是为了说明某一个m文件的应用,则在上述名称的后面跟一个下划线,再在后面加上所说明的MATLAB文件的名称,如exa011001_rand,即是例1.10.1,该例用来说明rand.m文件的应用。应该说明的是,这些MATLAB程序不是像所附的FORTRAN和C程序那样作为一个个子程序应用,而是用来说明书上的例题及各个m文件的应用。
用FORTRAN和C语言编写的每一个子程序的功能及调用时各个参数的含义已在程序的开头作了较为详细的说明,此处不再赘述。所附程序中,绝大多数都是作者和其研究生编写的,也有少量是参考国外已公开发表的杂志和教科书,如经典的FFT和REMEZ算法等。
下面给出的是用FORTRAN语言和C语言编写的程序的名称、功能以及有关问题的说
明,程序按字母顺序排列。
1.aftodf.for ,maftodf.c
将模拟滤波器转变为数字滤波器。
2.ampres.for ,mampres.c
由)(ωj e H 得到幅频响应)(ωj e H 。系统函数)(z H 由下式给出:
)1/()()(11110LA LA LB LB z a z a z b z b b z H ----++++++= (A.1)
若0=LB ,则)(z H 为一全极点IIR 系统,若0=LA ,则)(z H 为FIR 系统。在以下程序中,凡涉及到系统,系统函数)(z H 都按(A.1)式给出,不再一一说明。
3.arburg.for (harburg.for ),marburg.c
用Burg 算法求AR 模型的参数。
4.ar1psd.for ,mar1psd.c
由AR 模型参数得到功率谱。
5.aryuwa.for (haryuwa.for ),maryuwa.c
用Levinson 算法求解Yule-Walker 方程以得到p 阶AR 模型的参数(1),,(1)a a p -。
6.biline.for ,mbiline.c
实现双线性Z 变换。
7.butwcf.for ,mbutwcf.c
设计巴特沃斯模拟低通滤波器,求出转移函数)(p G 。
8.chebsh.for ,mchebsh.c
设计切比雪夫I 型模拟低通滤波器,求出转移函数)(p G 。
9.cmpdft.for (hcmpdft.for ),mcmpdft.c
直接由定义求N 点复序列)(n x 的DFT )(k X 。
10.cmpfft.for (hcmpfft.for ),mcmpfft.c
利用经典的Cooley-Tukey 基2算法求复序列)(n x 的DFT )(k X 。
11.convo1.for (hconvo1.for ),mconvo1.c
直接按定义求序列)(),(n h n x 的线性卷积)(n y 。
12.convo2.for (hconvo2.for ),mcnvo2.c
利用DFT 的卷积性质求两个复序列的线性卷积。
13.corpsd.for (hcorpsd.for ),mcorpsd.c
用Blackman-Tukey 法(自相关法)对信号)(n x 作功率谱估计。
14.corre1.for (hcorre1.for ),mcorre1.c
直接按定义计算(),()x n y n 的互相关函数)(m r xy ,若)()(n x n y =,则求出的是自相关,r y x ,,为复序列。
15.corre2.for (hcorre2.for ),mcorre2.c
用FFT 实现相关函数快速估计。
16.cztfft.for (hcztfft.for ),mcztfft.c
实现Chirp Z 变换算法。
17.decint.for (h1decint.for ,h2decint.for ,h3decint.for ),mdecint.c
对给定数据)(n x 作M L /倍的抽样率转换。
18.defir1.for (h1defir1.for ,h4defir1.for ),mdefir1.c
利用窗函数法设计FIR 滤波器,给出其抽样响应)(n h 。程序中调用了子程序window 。
19.defir2.for (h1defir2.for ,h4defir2.for ),mdefir2.c
用频率抽样法设计FIR 滤波器。
20.defir3.for (h1defir3.for ,h2defir3.for ,h3defir3.for ),mdefir3.c
用切比雪夫最佳一致逼近法设计FIR 滤波器,调用子程序remez1。 注意:以上FIR 滤波器设计的三个程序中,滤波器的长度应取奇数。
21.desiir.for (h1desiir.for ,h2desiir.for ,h7desiir.for ,h8desiir.for ),mdesiir.c
利用双线性Z 变换设计巴特沃斯和切比雪夫I 型IIR 数字滤波器,包括低通、高通、带通、带阻四种形式。使用者只需指定通带、阻带的边缘实际频率及相应的衰减,便可输出数字滤波器)(z H 的级联形式的各子系统分子、分母的系数,并输出其幅频和相频响应。程序中调用了子程序orderb ,butwcf ,chebsh ,aftodf ,iirres 等。
22.firres.for (hfirres.for ),mfirres.c
求FIR 系统的频率响应)(ωj e H 。
23.fitout.for (hfitout.for ),mfitout.c