当前位置: 首页 > news >正文

傅里叶变换究竟是什么玩意 以及 这些公式究竟是怎么来的 第三章 正弦信号的叠加

    在这之前,必须要重新提一句,为了方便表示,我们将使用复指数来代替正弦波,并用频率这个词来代指角频率。

    现在我们已经知道了,信号分解成正弦信号以后,分解成的所有正弦信号的频率构成了整个信号的频率,我们称为这个信号的频谱,即是该信号在各个频率的幅值。如果一个信号分解成一堆正弦信号以后,其中一个分量是 12*sin(1000000 t),那么这个信号在频率1000000的地方也有值,其值的大小为12。一个信号可能在很多频率的分量都有值,这些分量画在一个坐标轴上,就构成了频谱(即上一章的最后一张图)。

    现在该说说公式了。

     考虑一个信号,我们可以认为它是一堆正弦信号的叠加:

     x(t)=a_{1}e^{j\omega_{1} t}+a_{2}e^{j\omega_{2} t}+a_{3}e^{j\omega_{3} t}

     我们知道这个信号有三个频率分量,在频率ω1,ω2和ω3的地方有值。当有k个频率分量的时候,可以表示为:

     x(t) = \sum_{i=0}^{k}a_{i}e^{j\omega_{i} t}

     对于一个周期信号,我们知道x(t)=x(t+T) , T是周期信号的最小周期。于是我们令ω0=2π/T作为“基频率”,也就是说,其它频率都是这个基频率的倍数关系:

     例如某个分解的信号频率:(借用一下前面的图)

     

    它的基频率是1(是基频率,不是基频率的幅值),其它频率分别是基频率的3倍,5倍和7倍。

    所以我们信号的分解可以重新表示为:

    x(t) = \sum_{k}a_{k}e^{jk\omega_{0} t}

    a_{k}就是每个频率的幅值。每个在上面的例子中,a_{1}=1,a_{2}=0,a_{3}=\frac{1}{3},a_{4}=0,以此类推。

     我们知道, 

    也就是说在复数域中,我们不要管频率是不是负数,频率一定是正数,在这里就是ω。而上面式子中的k是可能小于0的。例如最简单的正弦信号 cos(t):

cos(t)=\frac{e^{jt}+e^{-jt}}{2}

    在频率为1的幅值为a_{1}=a_{-1}=1/2。(再不厌其烦地说一句,用复数域表示信号的分解对以后的计算和理解有好处,为了理解公式,我们不能总是为了联系现实而拒绝使用复数域)。

    所以这个时候,我们就可以把整个式子重新写一下了:

x(t) = a_{0}+\sum_{k=1}^{\infty} \left \{ {a_{k}e^{jk\omega_{0}t}+a_{-k}e^{-jk \omega_{0}t}} \right \}

    这个式子看似复杂,其实从刚才一点一点地讲过来,就会发现其实很简单,无非就是把x(t)变成了一堆正弦信号的叠加罢了

    我们就不把上面那个式子搞成实数域的表示形式了,毕竟复指数和正弦都是可以相互转化的,所以用欧拉的公式自己转化就好了。以后我们再说正弦信号或者指数信号的时候,其实都是一样的,毕竟它们可以相互转化嘛!只是变成正弦信号的时候频率值是没有负值的,即cos(t)的频率是1,cos(t)=\frac{e^{jt}+e^{-jt}}{2},在复指数表示的频率也是1(频率不可能是负的),幅值都是1/2(这里就算有点疑问也没事,从今以后都会用复指数进行计算,用不到什么复指数和正弦信号的相互转化)。

    现在我们知道,如果一个周期信号可以用一堆正弦信号来表示,那么,这些正弦信号的频率,就构成了这个周期信号的频域。

    但是现在的问题是:我们已经得到了一个信号,我们怎么来知道它的频率分量呢

    前面的阐述中,我们已经知道了一个信号是由哪些正弦信号组成的,但是,现在的问题是,我们现在只知道有一个信号x(t),这是一个周期信号,周期为T,这个x(t)在各个频率的分量是多少呢?即对于所有的k,a_{k}a_{-k}究竟是多少呢?

    不得不提一句,如果我们只能在知道某些正弦波合成了某个信号的前提下去了解这个合成的信号的各个频率的幅值,那么它的应用场景将非常有限——随便给出一个已经存在的信号,我们怎么知道它是由哪些正弦波(或复指数)来组成的呢,也就是说,我们怎么样能知道一个给定信号的频谱呢

    那么,傅里叶就要开始变换啦!

相关文章:

  • 傅里叶变换究竟是什么玩意 以及 这些公式究竟是怎么来的 第四章 比较用正弦和复指数来表示频率
  • 傅里叶变换究竟是什么玩意 以及 这些公式究竟是怎么来的 第五章 傅里叶开始变换了
  • 傅里叶变换究竟是什么玩意 以及 这些公式究竟是怎么来的 第六章 非周期信号的傅里叶变换
  • 傅里叶变换究竟是什么玩意 以及 这些公式究竟是怎么来的 结语
  • XML语言数据读写理解1
  • XML语言数据读写理解2
  • XML语言数据读写理解3
  • XML语言数据读写理解4
  • XML语言数据读写理解5
  • XML语言数据读写理解6
  • XML语言数据读写理解7
  • XML语言数据读写理解8
  • XML语言数据读写理解9
  • XML语言数据读写理解10
  • 简易的QT输出调试器
  • 【node学习】协程
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • Elasticsearch 参考指南(升级前重新索引)
  • ES6核心特性
  • Flex布局到底解决了什么问题
  • js中的正则表达式入门
  • log4j2输出到kafka
  • session共享问题解决方案
  • spring + angular 实现导出excel
  • 基于组件的设计工作流与界面抽象
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 前端存储 - localStorage
  • 深入 Nginx 之配置篇
  • 手写双向链表LinkedList的几个常用功能
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 要让cordova项目适配iphoneX + ios11.4,总共要几步?三步
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • 《天龙八部3D》Unity技术方案揭秘
  • 数据库巡检项
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (floyd+补集) poj 3275
  • (LeetCode 49)Anagrams
  • (三)Honghu Cloud云架构一定时调度平台
  • (十三)Maven插件解析运行机制
  • (算法)Game
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • (转)ObjectiveC 深浅拷贝学习
  • 、写入Shellcode到注册表上线
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .NET Core WebAPI中使用Log4net 日志级别分类并记录到数据库
  • .Net Core 中间件验签
  • .net core开源商城系统源码,支持可视化布局小程序
  • .NET(C#、VB)APP开发——Smobiler平台控件介绍:Bluetooth组件
  • .NET/C# 将一个命令行参数字符串转换为命令行参数数组 args
  • .NET6 开发一个检查某些状态持续多长时间的类
  • .NetCore项目nginx发布
  • .net遍历html中全部的中文,ASP.NET中遍历页面的所有button控件
  • .NET处理HTTP请求