FFT(不ji是干甚用的diao操作)
鸣谢yveh,yhzq
http://www.yhzq-blog.cc/fft总结/
又来了,板子轰炸。。。
快疯掉。。。
FFT
FFT,即为快速傅氏变换,
是离散傅氏变换的快速算法,
它是根据离散傅氏变换的奇、偶、虚、实等特性,
对离散傅立叶变换的算法进行改进获得的。
设x(n)为N项的复数序列,
形如a0*x^0+a1*x+a2*a^2+…+an*x^n
由DFT变换,任一x(m)的计算都需要N次复数乘法和N-1次复数加法,
而一次复数乘法等于四次实数乘法和两次实数加法,
一次复数加法等于两次实数加法,
即使把一次复数乘法和一次复数加法定义成一次“运算”
(四次实数乘法和四次实数加法),那么求出N项复数序列的x(m),
即N点DFT变换大约就需要N^2次运算。
当N=1024点甚至更多的时候,需要N2=1048576次运算,
在FFT中,利用Wn的周期性和对称性,
把一个N项序列(设N=2k,k为正整数),
分为两个N/2项的子序列,
每个N/2点DFT变换需要(N/2)^2次运算,
再用N次运算把两个N/2点的DFT变换组合成一个N点的DFT变换。
这样变换以后,总的运算次数就变成N*2(N/2)^2
继续上面的例子,N=1024时,总的运算次数就变成了525312次,
节省了大约50%的运算量。
而如果我们将这种“一分为二”的思想不断进行下去,
直到分成两两一组的DFT运算单元,
那么N点的DFT变换就只需要Nlog^2N次的运算,
N在1024点时,运算量仅有10240次,是先前的直接算法的1%,
点数越多,运算量的节约就越大,这就是FFT的优越性。
看起来好长一堆话,但是我还是认真的看下来了
豁然开朗【baidu大法好】
那问题来了,里面有概念看不懂啊
比如说复数?
那我们就需要初级数学普及
这样我们就对FFT有一个初步了解了
那么来一道例题?
有助于背板子
http://uoj.ac/problem/34
题解另见blog
转载于:https://www.cnblogs.com/wutongtong3117/p/7673403.html
FFT(不ji是干甚用的diao操作)相关推荐
- 浅谈 FFT (终于懂一点了~~)
FFT(离散傅氏变换的快速算法) FFT(Fast Fourier Transformation)是离散傅氏变换(DFT)的快速算法.即为快速傅氏变换.它是根据离散傅氏变换的奇.偶.虚.实等特性,对离 ...
- FFT频谱泄露和加窗 (二)
学习信号时域和频域.快速傅立叶变换(FFT).加窗,以及如何通过这些操作来加深对信号的认识. 1. 理解时域.频域.FFT 傅立叶变换有助于理解常见的信号,以及如何辨别信号中的错误. 尽管傅立叶变换是 ...
- 了解FFT和信号加窗
0 概览 学习信号时域和频域.快速傅立叶变换(FFT).加窗,以及如何通过这些操作来加深对信号的认识. 1. 理解时域.频域.FFT 傅立叶变换有助于理解常见的信号,以及如何辨别信号中的错误. 尽管傅 ...
- FFT频谱分析(补零、频谱泄露、栅栏效应、加窗、细化、频谱混叠、插值),Matlab、C语言代码
文章目录 引言 Matlab FFT函数 频谱混叠 栅栏效应 细化技术 什么是细化技术? 细化FFT技术的应用: Zoom-FFT算法介绍及MATLAB实现 Zoom-FFT根本没有实现"细 ...
- FFT运算的加深理解——栅栏效应、补零、物理分辨率、计算分辨率
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FFT运算的加深理解--栅栏效应.补零.物理分辨率.计算分辨率 栅栏效应和计算分辨率 物理分辨率 总结 栅栏效应和计算分辨率 栅栏效应 ...
- solr 6.1.0 的配置及简单使用
2019独角兽企业重金招聘Python工程师标准>>> 第一部分 配置部分 jdk 1.8 + solr 6.1.0 + php扩展 2.4.0 jdk路径: /usr/lo ...
- c#版汉字拼音大全,支持多音字
using System; using System.Collections.Generic; using System.Linq; using System.Text; ...
- php获取汉字的拼音 拼音首字母
/***获取汉字的拼音*/function pinyin($s, $isfirst = false) {static $pinyins;$s = trim($s);$len = strlen($s); ...
- 转载 什么叫真学习 什么叫假学习
什么叫做"假学习"? 一.QQ群 一天上班开始看QQ群,聊到下班.里面争论的火热.美其名曰在学习,实际上你什么都没学到.好记性不如烂笔头.争论百变,不如看则帖子. 因为你在 ...
- 什么叫做“假学习”?
一.看书 买一堆书,有空看看.看书,这是典型的假学习.看书看不懂还在看,就是假学习,欺骗自己,安慰自己正在学习而已.专业书都写得很好,但大都是写给已经懂的人看的.看书的最大作用就是证明自己看书是学不到 ...
最新文章
- SQL连接操作符介绍(循环嵌套, 哈希匹配和合并连接)
- ios 学习常用网站
- python pytest测试框架介绍四----pytest-html插件html带错误截图及失败重测机制
- 字符串基本操作 c语言,数据结构C语言字符串的基本操作.doc
- 身怀56个IM技术专利,网易云信如何改变即时通讯?
- HarmonyOS之AI能力·文字图像超分
- oracle创建包 和调用,oracle创建函数和调用存储过程和调用函数的例子(区别)...
- 悲观锁 引起死锁_悲观锁定时如何避免可怕的死锁-以及Java 8的一些用法!
- 华为年度旗舰Mate 30 Pro真机现身,既惊喜又失望...
- Linux 文件描述符的概念及与文件流指针的关系
- Linux Suspend过程【转】
- 计算机教学常规检查小结,总结·反思·提高——邮政路小学全体教师期末教学常规检查反馈...
- perfectmoney php接口_Perfect Money完美货币注册和用支付宝提现方法
- 重置Ubuntu root 密码
- 【LTspice】006 实际电容 阻抗特性曲线
- python 删除特定列_pandas删除某一列的方法(drop函数)
- 我在国企做软件开发这4年。。
- C++上机实验二第2题
- zabbix 监控 db2_zabbix实战 - abm
- GitHub使用方法(初级)
热门文章
- Testing Flutter apps翻译-使用 Mockito 模拟依赖项
- Centos下安装Scrapy
- python复习第一节
- Ubuntu编译安装Keepalived
- Scott Mitchell 的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表
- 使用TinyPNG批量压缩图片
- vue-cli3的命令行创建项目-(慕课网笔记)
- map和foreach的区别和应用场景_面试官:说说UDP和TCP的区别及应用场景
- 线元法输入曲线要素_Origin入门教程(三):Origin中曲线怎么平移?
- mac 安装zkcli_mac zookeeper安装使用