- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
几个快速傅立的叶变换算法的定稿.doc
几个快速傅立叶变换算法
离散傅里叶变换(DFT)
DFT的的正变换和反变换分别为(1)和(2)式。假设有N个数据,则计算一个频率点需要N次复数乘法和N-1次复数加法,整个DFT需要N*N次复数乘法和N(N-1)次复数加法;由于一次的复数乘法需要进行4次的实数乘法和2次的复数加法,一次的复数加法需要两次的实数加法,因此整个DFT需要4*N*N次的实数乘法和2*N(N-1)+2*N*N≈4*N*N次的复数加法。当N比较大时,所需的计算工作量相当大,例如N=1024时大约需要400万次乘法运算,对于实时信号处理来说,将对计算设备提出非常苛刻的要求,于是就提出如何能够减少计算DFT的运算量的问题。
1965年,库力和图基在《计算数学》杂志上发表《机器计算傅立叶级数的一种算法》,此文是最早提出FFT算法的。此后关于DFT的快速算法称为人们研究的热点课题,也正是FFT算法的出现,才使得数字信号处理能够应用于实时场合并进一步推动数字信号处理的发展和应用。
大多数的FFT算法都是利用(3)式的周期性、共轭对称性、可压缩和扩展性的特点来压缩计算量。
1)、根据DFT定义进行计算的代码
直接利用DFT的定义进行计算的算法计算量非常大。
//Data为输入数据指针,Log2N=log2(length),flag=-1时为正变换,flag=1时为反变换,变换结果由指针Data指向的原空间返回
void?dft(complexdouble*Data,int?Log2N,int?flag)
{
????int?i,j,length;
????complexdouble?wn;
????length=1Log2N;
????complexdouble*temp=new?complexdouble[length];
????for(i=0;ilength;i++)
????{
??????temp[i]=0;
??????for(j=0;jlength;j++)
??????{
????????wn=complexdouble(cos(2.0*pi/length*i*j),sin(flag*2.0*pi/length*i*j));
????????temp[i]+=Data[j]*wn;????
??????}???????????
????}
????if(flag==1)
?????for(i=0;ilength;i++)
???????Data[i]=temp[i]/length;
??? delete[]?temp;
}??
2)、倒位序重排
基2、基4和分裂基的DIT、DIF都需要进行倒位序重排。DIT输入为倒位序,输出为正常顺序,DIT输入为正常顺序,输出为倒位序。因此使用DIT要对输入先进行倒位序重排,DIT要对输出进行倒位序重排,才能得到正常顺序的结果。倒序序重排的实现主要是利用加1是从高位开始加,并且进位是向低位进的特点,这刚好和正位序相反,因此可以得到正位序相应的倒位序。还有一种方法,就是得到各个位上的数码,然后倒转再计入权值,就得到倒位序。(1)、基2的倒位序重排程序
void reverse2(complexdouble *data,int Log2N){?int i,j;?int RevNum;?int MaxPos,CurPos,MaxValue;?complexdouble temp;?MaxValue=(1Log2N)-1;?MaxPos=1(Log2N-1);?RevNum=0;
?for(i=1;iMaxValue;i++)?{
? CurPos=MaxPos;? while((CurPosRevNum)!=0)? {?? RevNum=RevNum(~CurPos);?? CurPos=CurPos1;? }? RevNum=RevNum|CurPos;? if (RevNumi)? {?? temp=data[RevNum];?? data[RevNum]=data[i];?? data[i]=temp;? }?}}
(2)、基4的倒位序重排程序
//data为数据指针,Log4N=log4(length)。
void reverse4(complexdouble *Data,int Log4N){
?int i,MaxValue,length,MaxPos,CurPos,RevNum;?complexdouble temp;?length=1(2*Log4N);?MaxPos=length/4;?MaxValue=length-1;?RevNum=0;?for(i=1;iMaxValue;i++)?{? CurPos=MaxPos;? whil
您可能关注的文档
- 内部刊物年月创刊第期年月日出版(文本).doc
- 内部客户满意度调查问卷(打印版).doc
- 再制造产品“的以旧换再”试点实施方案-附件:.doc
- 再生水作为景观水体补水水源的生态修复技术的研究(文本).doc
- 再生育审批文的书样式.doc
- 再生育审批.doc
- 再论可控硅并联谐振变换器的能量转换(文本).doc
- 再论工程量计算的四化.doc
- 再访拉尼卡常的见问题集.doc
- 写作教学中创的新能力的培养课题中期检查课题组总结报表.doc
- GB∕T 33000-2025《 大中型企业安全生产标准化管理体系要求》审核检查单之13:“13持续改进”(雷泽佳编制-2025A0).pdf
- GB∕T33000-2025《大中型企业安全生产标准化管理体系要求》审核(评审)指导之13-2“13.2评审改进”要素提问、专业解答和证实(雷泽佳编制2025A0).pdf
- GB∕T33000-2025《大中型企业安全生产标准化管理体系要求》审核(评审)指导之13-1:“13.1事故管理”要素提问、专业解答和证实(雷泽佳编制2025A0).pdf
- GB∕T33000-2025《大中型企业安全生产标准化管理体系要求》审核检查单之12-1:“12.1检查”要素提问、专业解答和证实(雷泽佳编制2025A0).pdf
- 考研真题 山东科技大学外国语学院707基础英语历年考研真题汇编.pdf
- 考研真题 中国人民大学法学院806应用法学历年考研真题.pdf
- 2025长寿革命_迎接新现实研究报告_30页_4mb.pdf
- 红餐产业研究院_味好美_西餐发展报告2025_36页_5mb.pdf
- 新周刊_县域教育洞察白皮书(2025)_36页_25mb.pdf
- 2026年我国中小企业发展形势展望_10页_4mb.pdf
最近下载
- 合并阻塞性睡眠呼吸暂停成人患者围手术期管理专家共识(2025).pptx
- 国家开放大学电大本科《公共部门人力资源管理》期末题库和答案优质完整版720972924.pdf VIP
- 供货能力及供货措施.docx VIP
- 2002年全国大学生数学建模竞赛B题.pdf VIP
- 20X101-3_综合布线系统工程设计与施工.docx VIP
- SJ-ZD-15-悬架衬套设计规范.doc VIP
- 10以内加减混合运算口算练习题5000题 每页100题 (399).docx VIP
- QXS65-39型锅炉低硫烟煤烟气电除尘湿式脱硫系统设计.DOC VIP
- 水平定向钻施工工艺.ppt VIP
- 国家开放大学计算机应用基础(本) 终结性考试试题及参考答案.pdf VIP
原创力文档


文档评论(0)