- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话: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
- 备战2025年高考二轮复习数学课件专题:专题突破练-三角函数的图象与性质.pptx
- 福建省名校协作体四校2024-2025学年高二上学期11月期中地理试题含解析.pdf
- 备战2025年高考二轮复习数学课件专题:解析几何 专题突破练-直线与圆锥曲线的位置关系.pptx
- 备战2025年高考二轮复习数学课件专题:解析几何 专题检测.pptx
- 广东省茂名市化州市2024-2025学年高一上学期11月期中英语试题含解析.pdf
- 2025年中考英语一轮教材复习 写作话题14 语言学习.pptx
- 2025年贵州中考二轮道德与法治专题复习 热点一 关注家乡发展 共建美好贵州.pptx
- 幼儿园年终总结PPT.pptx
- 品质部年终汇报PPT.pptx
- 2025年中考英语一轮教材复习 写作话题10 传统文化与节假日.pptx
最近下载
- 关于集团公司办公室搬迁工作方案.pdf VIP
- 商业银行信贷业务风险控制课件PPT(34张).ppt
- (完整word版)九年级上册仁爱英语单项选择题汇总(Unit1)A4直接打印.doc
- 中信证券-汽车传感器行业系列深度报告(一):磁传感器,无接触测量位置、速度、电流,同步受益于汽车智能化-电动化.pdf
- Morgan Stanley Fixed-2025年中国经济展望 论通缩之持久战-111868053.pdf VIP
- 政府补助类专项审计报告.docx
- 公司关于进一步深化“法治公司”建设的实施方案.docx VIP
- 医院感染现患率调查培训课件.pptx VIP
- ISO45001-内部审核检查表-参考.xlsx VIP
- 销售管理制度和流程汇编.doc VIP
文档评论(0)