积分变换的前世今生

  • 积分变换常应用于解微分方程

微分方程的解法:

  • 时域经典法;
  • 频域变换法;

“积分变换”最初并不是为了解微分方程,而是出于更“纯粹”的数学动机——理解函数的结构、求解代数或几何问题,以及简化复杂的积分运算。微分方程的求解,是后来人们意外发现的一个“副作用”,却最终成了积分变换最重要的应用之一。

18世纪的时候数学界的一个大热门方向就是用积分变换来求解微分方程,那时候大家都纷纷推出自己的积分变换。欧拉、拉格朗日、傅里叶、拉普拉斯……

拉普拉斯在1785年推出自己的积分变换公式,但他只是把这个积分变换当作一个求解微分方程的中介转换,并且他自己也并不清楚这个变化到底表示了什么。

直到在研究了傅里叶变换之后,拉普拉斯才明白了,变换里的S原来是表示复频率。

由复频率构成的区域称为复频域,也被称为拉普拉斯域,简称拉氏域。

拉普拉斯变换也就是从时域到复频域的变换。

复频域可以理解为一个复平面,平面上的每一个点都代表了一个复频率。

而每个点之上都有一个变化的幅值,所以一个复频域上的频谱图,就成了一个三维立体图。

而它沿着虚轴的切面,就是傅里叶变换的二维频谱图。

傅里叶变换是拉普拉斯变换的一个切片,但是拉普拉斯变化仅在适用范围更广,算不上傅里叶变换的升级版,因为这两个变换聚焦的应用领域不同。

这两者是在交叉发展的同时,在应用中不断进化,才在多年后有了形式上的相似与统一。

0. 积分

积分就是函数求和。

实数求积运算:点乘。

函数求积运算:卷积。

求积是求和的拓展,卷积也是以积分的形式进行运算。

1. 傅里叶变换

1.1 角频率

频率

  • 概念:每秒钟完成动作的次数。
  • 单位:赫兹,Hz。

角频率

  • 概念:每秒钟“转圈动作,角度变化”的频率。
  • 单位:弧度/秒,rad/s

角频率与正弦函数

正弦函数在直角三角形中的定义是:直角边与斜边的比值。

这个夹角的正弦值就是红边与绿边的比值。

变化的角度可以用角频率乘以时间来表示:θ = ωt。

所以正弦值可以转换表示为:sinθ = sin(ωt)。

表示正弦值是时间的函数。

把转圈的动作加上一条时间轴,让旋转的动作沿时间的方向前进,它就形成了一个立体的螺旋形状。

就像拉开的弹簧一样。从正面看过去它还是一个圆圈,它在那里转。

从侧面看,即把时间轴展开了,就看到了一个正弦波形。

当这个角频率越大,也就是旋转得越快的时候,从侧面看的正弦波形就更紧凑。

傅里叶级数就是把一个复杂信号分解成很多个正弦信号的叠加:

区分这些正弦波形的最明显的特征就是——角频率:ω。

已知复杂信号f(t)可以拆分成上述的三角函数组合,那么就可以建立一条角频率的轴,然后再按这个顺序把这些正弦波形给放置好。——这其实就是傅里叶变换里的频域,即取频率为自变量对信号进行分析。

1.2 傅里叶变换简介

以信号分析为例,下面是红绿黄交通信号灯:

不同颜色的信号的频率是不一样的。

若是交通灯的规律是:红8秒、黄3秒、绿10秒。

那就可以在坐标轴上绘制出来,得到一个随时间变化而变化的信号函数。这就是信号的时域表达。

灯坏了,三个灯同时亮,这些信号在时间上有重叠,波形就会叠加,用时域的表达就会很看起来很混乱,也看不出有哪些频率成分。

傅里叶变换可以让我们把这些混叠在一起的信号分拆开,让我们知道这个信号是由哪些频率成分构成的。

例如刚才的信号经过傅里叶变换之后就成了这样,从侧面看拆分后的频率投影,其实就是频域图。

(幅频图)

引入频率信息的代价是牺牲掉时间信息,可以用小波变换取时域、频域的平衡。

频域图的横坐标是角频率:

这个图的ω1、ω2、ω3位置有3条竖线,分别代表红、黄、绿三个信号,高度代表强度,即振幅。

这是关于角频率的函数,故而也把变换后的信号称作频域的信号。

傅里叶变换能够帮助我们完成从时域到频域的转换,但是傅里叶变换也有局限性。

1.3 傅里叶变换的不确定性原理

频域图看不出时间的变化,因为从侧面看它就是一条线。

以信号灯为例,无论信号灯以何种组合形式来闪动,频域图是不变的。

同样,在越精确(越窄)的一段时间内得到一段精确信号,在频率上能得到的信息就越模糊。

——傅里叶变化的不确定性原理。

理解:频率指的是一秒内完成几个周期循环,不给信号时间让它振完一个周期,频率就只能靠估了。

类似于量子力学领域海森堡的不确定性原理:微观粒子的位置和动量不能同时准确地获得。

从数学上看,这些不确定性原理(测不准原理)是一回事——是事物本身的性质,和测量工具的精度无关。

1.4 傅里叶变换的由来

1.4.1 傅里叶级数的起源

19世纪法国天才数学家、物理学家傅里叶在他的著作《热的解析理论》一书中提出:任何周期函数都可以分解成一个三角级数。

傅里叶在研究固体热传导的时候,提出了傅里叶级数的雏形……

拉普拉斯变换

发散函数不太好求傅里叶变换,可以先乘上一个收敛函数e^-ax,再求傅里叶变换。

拉普拉斯变化的公式,可以看到和点乘的积分形式特别相似:

拉普拉斯的底层原理也是点乘:

  • 我们使用一个东西去与目标函数进行点乘,目的就是想方设法去把这个目标函数的信息给榨取出来。

2.1 拉普拉斯变换想从原函数中榨取什么信息

我们这个世界遵循熵增法则,世界万物的有序度一定是在衰减的,所有的自然事物都会在时间的流逝中慢慢消磨自己。

这些现象都对应到一个词——衰减。

所以研究衰减的规律,就很重要了。

学傅里叶变换时知道,一条复杂的函数曲线可以分解成无数个不同频率的简单正余弦函数的线性叠加。

以上是一条衰减曲线,分解成不同成分带着不同程度的衰减的正弦函数的线性组合,有些频率成分衰减得慢、有些频率成分衰减得快。

至此我们得知描述衰减现象有两个最重要的参数:频率ωn、衰减系数-kn。

如何利用拉普拉斯变换榨取出:频率ωn、衰减系数-kn这两个信息呢???


回顾傅里叶变换

带入每个ω,就可以得到每个频率下振荡的振幅,即每个频率的振荡强度(正比于A^2)。

而且这个复函数包含相位信息,即每个频率下的振荡是从什么时候开始的也知道了。


在复数域,和另一个函数点乘,应该是使用自己的共轭去和别人相乘,再求积分。


想得到衰减函数(振幅衰减,中心频率不变)也还是可以使用e^iωt这个基去点乘得到

但是这样得到的频率信息,和傅里叶变换还是有很大的差别,因为傅里叶变换可以得到这个频率下的能力占比,但是现在拉普拉斯点乘得到的东西还会受制于衰减系数,衰减地快一些,能量就会低一些。

所以还是需要找到衰减系数——方法:做标记。

衰减的形象可以描述为一个本不收敛的函数被另一个衰减的函数给摁了下去,如果想办法把这个衰减的函数的干掉,剩下一个发散的函数积分——标记极点。

用傅里叶变换的手段,搭配抵消衰减的指数函数,取获取频率和衰减的信息。

当衰减刚好抵消,且频率完全共振的时候,积分值无穷大,而其他位置就收敛。那么只要找到无穷大的地方,看一下它抵消衰减的衰减系数以及频率,那我们要研究衰减现象最重要的两个东西就知道了。

那就有:

那我们盯着无限大的地方,就可以找到对应的衰减系数和频率了。

从公式本身,强化一下对作标记的理解,看到结果是一个关于σ、ω的二元函数。

当σ = -3、ω = ±2的位置,结果的模长是无穷大的。

这两个位置正好对应原函数中的振荡频率、衰减系数。


σ = 0时的(单边)拉普拉斯变换就是单边傅里叶变换。

σ ≠ 0的拉普拉斯变换也可以看作傅里叶变换——加权傅里叶变换:

傅里叶变换重视基函数的归一化,这样子得到的频率和能力的占比才准确。

拉普拉斯变换作为带权傅里叶变换,原函数的能量会被这个权值给影响,它也就失去了能量占比的衡量的意义了,它的意义更多是在于帮助我们找到系统的瞬态——振荡的频率成分对应了多少的衰减。

这样子就算原函数中的频率成分不是衰减的,而是放大的,拉普拉斯变换也能处理,e^-σt不仅可以用来抵消衰减,也能够用来抵消放大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/96595.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/96595.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Linux——gflags》

一、什么是gflags? gflags 是一个由 Google 开发的命令行参数解析库,主要用于在 C(也支持其他语言)程序中便捷地处理命令行参数。它的核心作用是帮助开发者快速定义、解析和使用命令行选项,避免手动编写繁琐的参数解析…

编译器的前端中端和后端

前面说的词法分析和语法分析,确实是编译器前端 (Front End) 最核心的两个部分。但前端的工作还没有结束。编译器各阶段划分 一个完整的编译器通常可以分为三个部分:前端、中端 (Middle End)、后端 (Back End)。 前端 (Front End) 核心职责: 理解源代码。…

黑马Java进阶教程,全面剖析Java多线程编程,并发和并行,笔记02

黑马Java进阶教程,全面剖析Java多线程编程,并发和并行,笔记02 一、并发和并行 并发:在同一时刻,有多个指令在单个CPU上交替执行 并行:在同一时刻,有多个指令在多个CPU上同时执行 二、为什么有…

20250908 背包DP总结

引子 ~ 我们都有一个家,名字叫背包 ~ 背包DP 顾名思义,背包DP是用来解决背包最值问题的。题目会给出背包的容量,以及几个物品的属性,比如重量,价值,限额等等,具体是什么看题目。 01背包 01…

Redis持久化之RDB:快照机制原理、配置与最佳实践

Redis持久化之RDB:快照机制原理、配置与最佳实践 1. RDB持久化概述 1.1 什么是RDB RDB(Redis Database)是Redis的默认持久化方式,它在指定的时间间隔内生成数据集的快照(snapshot),并将快照保…

daily notes[44]

文章目录基础references基础 hello,world是几乎所有编程语言的第一例子,rust也不例外。但和其它语言不一样,Rust的源码最好拥有自己的项目目录。 $ mkdir ~/pro $ cd ~/pro $ mkdir helloWorld $ cd helloWorld源代码文件名为main.rs,内容如…

JavaScript对象创建方式完全指南:从原始到现代的演进之路

前言 作为一名前端开发者,JavaScript中对象创建是很重要。在JavaScript这门基于原型的语言中,对象几乎无处不在。今天,我将带领大家回顾JavaScript对象创建的7种方式,从最原始的字面量到现代的ES6 class,每一步演进都解…

基于单片机的无线水塔监控系统设计(论文+源码)

本设计为基于单片机的无线水塔监控系统设计,主要由以下几部分组成:均采用STC89C52RC单片机为主控;主机:NRF24L01无线通讯模块,1602LCD液晶显示屏。从机:NRF24L01无线通讯模块,水位传感器&#x…

凌晨0-3点不睡,你熬的不是夜,是人生!

“熬夜”这个词,早已成为现代生活的常态。有人为了工作加班到深夜,有人为了娱乐刷剧到天明,但你知道吗?熬夜最“要命”的时间段,其实是凌晨0点到凌晨3点。别以为只是少睡几个小时而已,这个时间段不睡&#…

大语言模型基石:Transformer

一、引言 如今火爆的 GPT、LLaMA、通义千问、ChatGLM 等大语言模型,背后都离不开一个核心架构——Transformer。 2017 年,Google 在论文《Attention Is All You Need》中首次提出 Transformer 模型,彻底改变了自然语言处理的发展方向。它摒…

【算法】【链表】160.相交链表--通俗讲解

算法通俗讲解推荐阅读 【算法–链表】83.删除排序链表中的重复元素–通俗讲解 【算法–链表】删除排序链表中的重复元素 II–通俗讲解 【算法–链表】86.分割链表–通俗讲解 【算法】92.翻转链表Ⅱ–通俗讲解 【算法–链表】109.有序链表转换二叉搜索树–通俗讲解 【算法–链表…

MySQL——库的操作

1、创建数据库语法:CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] ...] create_specification: [DEFAULT] CHARACTER SET charset_name [DEFAULT] COLLATE collation_name这里的CHARACTER SET表示指定数据库采用的字符集…

Python ast模块(Abstract Syntax Trees,抽象语法树)介绍及使用

文章目录 核心概念 基本使用流程 常用节点类型 示例代码 实际应用场景 注意事项 `ast.literal_eval()` 功能说明 适用场景 使用示例 限制与安全特性 与 `eval()` 的对比 总结 Python 的 ast 模块( Abstract Syntax Trees,抽象语法树)允许你解析、分析和修改 Python 代码的…

C++宽度优先搜索算法:队列与优先级队列

本期我们就来深入学习一下C算法中一个很重要的算法思想:宽度优先搜索算法 宽度优先算法是一个应用十分广泛的算法思想,涉及的领域也十分繁多,因此本篇我们先只涉猎它的一部分算法题:队列/优先级队列,后续我们会进一步地…

类的property属性

​​Python 中的 property 特性详解​​property 是 Python 中用于​​将方法转换为属性​​的装饰器,它允许开发者以访问属性的方式调用方法,同时可以添加逻辑控制(如数据校验、计算属性等)。以下是其核心用法和优势:…

【Redis#9】其他数据结构

引言 Redis 除了我们最常用的 String、Hash、List、Set、ZSet(Sorted Set) 这五种基本数据结构外,还提供了很多高级或特殊用途的数据结构/类型 ,它们可以满足更复杂的业务需求。 ✅ Redis 的“五大基本数据结构”回顾类型特点Stri…

AutoGen——自定义Agent

目录引子自定义 AgentCountDownAgentArithmeticAgent在自定义 Agent 中使用自定义模型客户端让自定义 Agent 声明式化Selector Group Chat示例:网页搜索 / 数据分析代理(Agents)Workflow终止条件(Termination Conditions&#xff…

【重定向和转发的核心理解】

重定向和转发 不废话: “转发” 的核心定义: 服务端内部主导跳转、客户端无感知(仅 1 次请求)、浏览器 URL 不改变,与传统 Web 开发中 “转发” 的本质逻辑完全一致,只是实现载体(Nginx 路由层 …

生成对抗网络详解与实现

生成对抗网络详解与实现0. 前言1. GAN 原理2. GAN 架构3. 损失函数3.1 判别器损失3.2 生成器损失3.4 VANILLA GAN4. GAN 训练步骤0. 前言 生成对抗网络 (Generative Adversarial Network, GAN) 是图像和视频生成中的主要方法之一。在本节中,我们将了解 GAN 的架构、…