一个 周期信号 分解为 若干个 正弦信号, 就是 傅里叶级数, 不过 我对 傅里叶级数 了解不多, 一方面 是 懒得去 细看, 一方面 也是 为了 保持 神秘感 。
我们把 一个 周期信号, 甚至 非周期信号, 记为 y = Src ( t ) , 也称为 源信号 。
傅里叶级数 的 一般形式 可以 写为 : Sin [ 1 ] + Sin [ 2 ] + Sin [ 3 ] + …… + Sin [ n ] , n -> 无穷
Sin [ n ] = An * sin ( ωn * t + ψn ) + bn , A 为 振幅, ω 为 角速度, t 为 时间, ψ 为 初始相位, b 为 增量, n 为 项 的 序号(下标), An 是 第 n 项 的 振幅, ωn 是 第 n 项 的 角速度, ψn 是 第 n 项 的 初始相位, bn 是 第 n 项 的 增量 。
那么, 将 y = Src ( t ) 展开 为 傅里叶级数 可以 这样表示 :
Src ( t ) = Sin [ 1 ] + Sin [ 2 ] + Sin [ 3 ] + …… + Sin [ n ] , n -> 无穷
只要 确定了 每一项 的 A 、ω 、ψ 、b , 就 得到 源信号 对应 的 傅里叶级数 了 。
那么, 每一项 的 A 、ω 、ψ 、b 怎么 确定 ?
记 Sins ( t ) = Sin [ 1 ] + Sin [ 2 ] + Sin [ 3 ] + …… + Sin [ n ] , n -> 无穷
可以写一个 定积分, ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] ,
[ t1, t2 ] 是 定积分 的 区间, 也是 源信号 的 区间,
| Src (t) - Sins (t) | 表示 Src (t) - Sins (t) 的 绝对值 。
我们 只要 找出 让 ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] 这个 定积分 的 值 等于 0 的 条件 就可以了 。
就是说, 我们要 为 每一项 找到 合适 的 A 、ω 、ψ 、b , 使得 ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] = 0 。
这是一个 泛函 问题 。
ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] 这个 定积分 的 意义是 Src (t) 和 Sins (t) 的 波形 的 差异 有多大, 若 这个 定积分 为 0, 则 Src (t) 和 Sins (t) 的 波形 完全相同 。
因为 Sins (t) 是 无穷级数, 由 n 个 项 组成, n -> 无穷, 所以,
ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] = 0 (1) 式
也可以写为 ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] -> 0 (2) 式
(1) 式 是 等于 0, (2) 式 是 趋于 0 。
(1) 式 和 (2) 式 是 一个 泛函方程, 也是 一个 积分方程 。
(1) 式 (2) 式 的 解 是 每一项 的 A 、ω 、ψ 、b, 可以 写成 矩阵 :
A1 , ω1 , ψ1 , b1
A2 , ω2 , ψ2 , b2
A3 , ω3 , ψ3 , b3
……
An , ωn , ψn , bn
Oh …… 终于 知道 矩阵 有什么用了 ……
一般的, 泛函 的 常见问题 是 求 最小积分条件, 所以, (1) 式 (2) 式 还可以 写成 :
ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] -> min (3) 式
表示 ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] 趋于 最小,
(3) 式 和 (1) 式 (2) 式 的 意思 差不多 。 下面 我们 就以 (1) 式 为 代表 了 。
(1) 式 这个 泛函方程 要怎么解? 不知道 。 基本上, 这种 方程 已经 达到 无从下手 的 境界 了 。
是 什么 造成了 这种 妖怪方程 ? 数学 的 抽象 。
可以 对 (1) 式 作一些 简化, 先把 Sins (t) 简化为 Sins (t) = A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) ,
这个简化 忽略了 ψ 和 b 。
于是, (1) 式 变为 :
ʃ | Src (t) - [ A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) ] | dt , [ t1, t2 ] = 0
再简化一点, 把 绝对值号 去掉,
ʃ Src (t) - [ A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) ] dt , [ t1, t2 ] = 0
积分 也 去掉 算了 ,
Src (t) - [ A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) ] = 0
A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) = Src (t)
现在 这 方程 能 解 了 吗 ? 好像还不能, 那 把 sin ( ω1 t ) , sin ( ω2 t ) , …… sin ( ωn t ) 都 换成 常量 k1, k2, …… kn, 把 Src (t) 也换成常量 S ,
k1 A1 + k2 A2 + k3 A3 + …… kn An = S , A1 , A2, A3 , …… An 为 未知数, k1, k2, k3, …… kn 为 常数, S 为 常数 (4) 式
这个 方程 能 解 了 吗? 可以 进一步简化, 让 n 为 有限大 的 自然数 ,
k1 A1 + k2 A2 + k3 A3 + …… kn An = S , A1 , A2, A3 , …… An 为 未知数, k1, k2, k3, …… kn 为 常数, S 为 常数, n 为有限大的自然数 (5) 式
(5) 式 是 一个 n 元方程, 也是一个 不定方程, 也是一个 丢番图 方程 。
(5) 式 方程 怎么解 ? 当然 (5) 式 有 无穷多个 解, 那 比如, 求 最小解, 比如 A1 + A2 + A3 + …… + An 的 和 最小 的 解 。
(4) 式 (5) 式 和 (1) 式 有 什么关系 ? 没有关系, 但可以 通过 (4) 式 (5) 式 类比 看看 (1) 式 要 怎么解 。
那么, 要怎么来 求 得 傅里叶级数 呢 ? 可以 想点 办法 。
比如, 先把 问题 简化 为 求 第一项 Sin [1] , 可以 先 求出 一个 正弦信号, 波形 和 源信号 相差 最小, 这就是 Sin [1] , 然后, 让 源信号 减去 Sin [1] , 得到 的 差 记为 z :
z = Src (t) - Sin [1]
接下来 再 求 一个 正弦信号, 波形 和 z 相差 最小, 这就是 第二项 Sin [2] , 然后, 让 z = z - Sin [2] , 以此类推, 求 Sin [3] , Sin [4] , …… , Sin [n] 。
先来看 怎么求 Sin [1] , 和 上文 (1) 式 的 原理 一样, 可以 写一个 定积分 来 表示 源信号 和 Sin [1] 的 波形 差异 大小 :
ʃ | Src (t) - Sin [1] | dt , [ t1, t2 ]
让 这个 定积分 最小,
ʃ | Src (t) - Sin [1] | dt , [ t1, t2 ] -> min (6) 式
(6) 式 就是 求 Sin [1] 的 泛函方程 。
因为 Sin [1] = A1 sin ( ω1 t + ψ1 ) + b1 , 代入 (6) 式 ,
ʃ | Src (t) - A1 sin ( ω1 t + ψ1 ) - b1 | dt , [ t1, t2 ] -> min (7) 式
对于 一些 简单 、规则 的 周期信号, 比如 方波, 三角波, 这些 信号 作为 源信号 的 话, 可以 不考虑 ψ1 、b1 ,
同时, 显然, 它们 的 基波 的 周期 和 它们 一样, 即 ω1 就是 源信号 的 ω ,
于是 (7) 式 可以 简化 为 :
ʃ | Src (t) - A1 sin ( ω t ) | dt , [ t1, t2 ] -> min (8) 式
ω 已知, 就是 源信号 的 ω , 所以, (8) 式 中 只有一个 待定系数 A1 , 只要 求出 A1 就可以, 这样的话, 可以试试 变分法, 看用 欧拉方程 能不能 解出来 。
但 欧拉方程 的 解 是 一个 函数, 这里 的 A1 是 一个 系数, 是 常量, 这就 尴尬 了, 呵呵呵呵 。 这两者(函数 和 常量) 的 矛盾 能不能 调和 ? 期待 数学天才们 的 表演, 拭目以待 。
我们 可以 画 一个 图 把 上面 的 过程 形象 的 表示出来 :
蓝色 三角波 是 源信号, 红色 正弦波 是 基波, 也就是 傅里叶级数 的 第一项 Sin [1] , 红线 和 蓝线 之间 用 绿线 标出 的 区域 就是 两者 波形 的 相差, 绿线 标出 的 区域 面积 大, 则 两者波形 相差 大, 面积小, 则 波形相差小 。
绿线 标出 的 区域 面积 就是 定积分 ʃ | Src (t) - A1 sin ( ω t ) | dt , [ t1, t2 ] , (8) 式 就是 让 这个 面积 最小 。
如图, 在这个 场景 里, 我们 只要 确定 A1, 使得 绿线 标出 的 区域 面积 最小 就可以 。
上文 提到 可以 考虑 用 变分法, 大家 可以 自己 试试, 这里 先不讨论 。 我们 看看 用 离散 线性 样本 的 方法 。
可以 大概 给 A1 划一个 范围, 把 这个 范围 切割 成 9 等分, 这样 可以 有 10 个 值, 把 这 10 个 值 代入 定积分 ʃ | Src (t) - A1 sin ( ω t ) | dt , [ t1, t2 ] , 看 哪个值 得到 的 定积分 最小, 就 取 这个 值 作为 A1, 切割 的 等分 越多, 则 结果 越 精确 。
[t1, t2] 在 这里 是 一个周期 。
当然, 对于 横坐标 t, 在 [ t1, t2 ] 区间 里 也要 切割一些 等分 来 近似计算积分 。 假设 [ t1, t2 ] 切割了 100 个 等分, 乘上 A1 的 10 个 值, 计算 的 时间复杂度 就是 10 * 1000 = 1 万 。
这个方法 对于 一般 的 源信号, 也许 有 不错 的 近似 效果 。 但是 对于 一些 源信号, 比如 突变性 的, 就 不适用 了 。
比如, 上图 蓝色 的 源信号, 突变 很明显 , 合成 它 的 基波 和 谐波, 大概 要 像 图上 这样 比较合适 。
红色 是 基波, 也就是 傅里叶级数 第一项, 橙色 是 一个 谐波, 它的 频率 是 基波 的 3 倍, 可以 认为 是 傅里叶级数 的 第三项 。
显然, 基波 和 源信号 的 波形 差异 并不是 最小, 甚至 还 有点 大 。 从这里看出, 构造 傅里叶级数 需要一些 “总揽全局” 的 规划 。
又或者说, 上面 一开始 提出 的 一项 一项 求 的 方法, 割裂了 傅里叶级数 的 “整体性” 。
如果 把 傅里叶级数 的 所有项 放到一起来 考虑, 可以 简化一点, 让 n 等于一个 有限的 不太大的 自然数, 比如 n = 5, 这样就是 由 5 个 正弦信号 来 组成 源信号 。
5 个 正弦信号 写成 矩阵 :
A1 , ω1 , ψ1 , b1
A2 , ω2 , ψ2 , b2
A3 , ω3 , ψ3 , b3
A4 , ω4 , ψ4 , b4
A5 , ω5 , ψ5 , b5
每个 正弦信号 的 A , ω , ψ , b 均 取 10 个值, 这样来匹配, 则 每个 正弦信号 会 产生出 10^4 = 1 万 个 样本,
有 5 个 正弦信号, 5 个 正弦信号 的 样本 在一起 匹配, 会 产生出 ( 1 万 ) ^ 5 = 10^20 个 样本,
10^20 个 样本 中 波形 和 源信号 差异 最小 的 那个 样本 就是 最优解 。
10 ^ 20 , 这个 计算量 太大 了 , 可以简化一点, 让 ω 固定, 5 个 正弦信号 的 ω 依次为 ω , ω * 2 , ω * 3 , ω * 4 , ω * 5 , 忽略 b 。
这样 写成 矩阵 :
A1 , ω , ψ1
A2 , 2 * ω , ψ2
A3 , 3 * ω , ψ3
A4 , 4 * ω , ψ4
A5 , 5 * ω , ψ5
因为 ω 是 固定 的, 每个 正弦信号 参与 取值 匹配 的 只有 A 、ψ, 所以, 每个 正弦信号 的 样本 是 10^2 = 100 个 ,
5 个 正弦信号 组合匹配 产生 的 样本 是 100 ^ 5 = 10^10 = 100 亿 个 。
这个 计算量 还是 太大, 呵呵 。 所以 这个 算法 似乎 有点 不科学, 也有点 **, 哈哈 。
未完, 接 2 楼 。
我们把 一个 周期信号, 甚至 非周期信号, 记为 y = Src ( t ) , 也称为 源信号 。
傅里叶级数 的 一般形式 可以 写为 : Sin [ 1 ] + Sin [ 2 ] + Sin [ 3 ] + …… + Sin [ n ] , n -> 无穷
Sin [ n ] = An * sin ( ωn * t + ψn ) + bn , A 为 振幅, ω 为 角速度, t 为 时间, ψ 为 初始相位, b 为 增量, n 为 项 的 序号(下标), An 是 第 n 项 的 振幅, ωn 是 第 n 项 的 角速度, ψn 是 第 n 项 的 初始相位, bn 是 第 n 项 的 增量 。
那么, 将 y = Src ( t ) 展开 为 傅里叶级数 可以 这样表示 :
Src ( t ) = Sin [ 1 ] + Sin [ 2 ] + Sin [ 3 ] + …… + Sin [ n ] , n -> 无穷
只要 确定了 每一项 的 A 、ω 、ψ 、b , 就 得到 源信号 对应 的 傅里叶级数 了 。
那么, 每一项 的 A 、ω 、ψ 、b 怎么 确定 ?
记 Sins ( t ) = Sin [ 1 ] + Sin [ 2 ] + Sin [ 3 ] + …… + Sin [ n ] , n -> 无穷
可以写一个 定积分, ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] ,
[ t1, t2 ] 是 定积分 的 区间, 也是 源信号 的 区间,
| Src (t) - Sins (t) | 表示 Src (t) - Sins (t) 的 绝对值 。
我们 只要 找出 让 ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] 这个 定积分 的 值 等于 0 的 条件 就可以了 。
就是说, 我们要 为 每一项 找到 合适 的 A 、ω 、ψ 、b , 使得 ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] = 0 。
这是一个 泛函 问题 。
ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] 这个 定积分 的 意义是 Src (t) 和 Sins (t) 的 波形 的 差异 有多大, 若 这个 定积分 为 0, 则 Src (t) 和 Sins (t) 的 波形 完全相同 。
因为 Sins (t) 是 无穷级数, 由 n 个 项 组成, n -> 无穷, 所以,
ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] = 0 (1) 式
也可以写为 ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] -> 0 (2) 式
(1) 式 是 等于 0, (2) 式 是 趋于 0 。
(1) 式 和 (2) 式 是 一个 泛函方程, 也是 一个 积分方程 。
(1) 式 (2) 式 的 解 是 每一项 的 A 、ω 、ψ 、b, 可以 写成 矩阵 :
A1 , ω1 , ψ1 , b1
A2 , ω2 , ψ2 , b2
A3 , ω3 , ψ3 , b3
……
An , ωn , ψn , bn
Oh …… 终于 知道 矩阵 有什么用了 ……
一般的, 泛函 的 常见问题 是 求 最小积分条件, 所以, (1) 式 (2) 式 还可以 写成 :
ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] -> min (3) 式
表示 ʃ | Src (t) - Sins (t) | dt , [ t1, t2 ] 趋于 最小,
(3) 式 和 (1) 式 (2) 式 的 意思 差不多 。 下面 我们 就以 (1) 式 为 代表 了 。
(1) 式 这个 泛函方程 要怎么解? 不知道 。 基本上, 这种 方程 已经 达到 无从下手 的 境界 了 。
是 什么 造成了 这种 妖怪方程 ? 数学 的 抽象 。
可以 对 (1) 式 作一些 简化, 先把 Sins (t) 简化为 Sins (t) = A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) ,
这个简化 忽略了 ψ 和 b 。
于是, (1) 式 变为 :
ʃ | Src (t) - [ A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) ] | dt , [ t1, t2 ] = 0
再简化一点, 把 绝对值号 去掉,
ʃ Src (t) - [ A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) ] dt , [ t1, t2 ] = 0
积分 也 去掉 算了 ,
Src (t) - [ A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) ] = 0
A1 sin ( ω1 t ) + A2 sin ( ω2 t ) + A3 sin ( ω3 t ) + …… + An sin ( ωn t ) = Src (t)
现在 这 方程 能 解 了 吗 ? 好像还不能, 那 把 sin ( ω1 t ) , sin ( ω2 t ) , …… sin ( ωn t ) 都 换成 常量 k1, k2, …… kn, 把 Src (t) 也换成常量 S ,
k1 A1 + k2 A2 + k3 A3 + …… kn An = S , A1 , A2, A3 , …… An 为 未知数, k1, k2, k3, …… kn 为 常数, S 为 常数 (4) 式
这个 方程 能 解 了 吗? 可以 进一步简化, 让 n 为 有限大 的 自然数 ,
k1 A1 + k2 A2 + k3 A3 + …… kn An = S , A1 , A2, A3 , …… An 为 未知数, k1, k2, k3, …… kn 为 常数, S 为 常数, n 为有限大的自然数 (5) 式
(5) 式 是 一个 n 元方程, 也是一个 不定方程, 也是一个 丢番图 方程 。
(5) 式 方程 怎么解 ? 当然 (5) 式 有 无穷多个 解, 那 比如, 求 最小解, 比如 A1 + A2 + A3 + …… + An 的 和 最小 的 解 。
(4) 式 (5) 式 和 (1) 式 有 什么关系 ? 没有关系, 但可以 通过 (4) 式 (5) 式 类比 看看 (1) 式 要 怎么解 。
那么, 要怎么来 求 得 傅里叶级数 呢 ? 可以 想点 办法 。
比如, 先把 问题 简化 为 求 第一项 Sin [1] , 可以 先 求出 一个 正弦信号, 波形 和 源信号 相差 最小, 这就是 Sin [1] , 然后, 让 源信号 减去 Sin [1] , 得到 的 差 记为 z :
z = Src (t) - Sin [1]
接下来 再 求 一个 正弦信号, 波形 和 z 相差 最小, 这就是 第二项 Sin [2] , 然后, 让 z = z - Sin [2] , 以此类推, 求 Sin [3] , Sin [4] , …… , Sin [n] 。
先来看 怎么求 Sin [1] , 和 上文 (1) 式 的 原理 一样, 可以 写一个 定积分 来 表示 源信号 和 Sin [1] 的 波形 差异 大小 :
ʃ | Src (t) - Sin [1] | dt , [ t1, t2 ]
让 这个 定积分 最小,
ʃ | Src (t) - Sin [1] | dt , [ t1, t2 ] -> min (6) 式
(6) 式 就是 求 Sin [1] 的 泛函方程 。
因为 Sin [1] = A1 sin ( ω1 t + ψ1 ) + b1 , 代入 (6) 式 ,
ʃ | Src (t) - A1 sin ( ω1 t + ψ1 ) - b1 | dt , [ t1, t2 ] -> min (7) 式
对于 一些 简单 、规则 的 周期信号, 比如 方波, 三角波, 这些 信号 作为 源信号 的 话, 可以 不考虑 ψ1 、b1 ,
同时, 显然, 它们 的 基波 的 周期 和 它们 一样, 即 ω1 就是 源信号 的 ω ,
于是 (7) 式 可以 简化 为 :
ʃ | Src (t) - A1 sin ( ω t ) | dt , [ t1, t2 ] -> min (8) 式
ω 已知, 就是 源信号 的 ω , 所以, (8) 式 中 只有一个 待定系数 A1 , 只要 求出 A1 就可以, 这样的话, 可以试试 变分法, 看用 欧拉方程 能不能 解出来 。
但 欧拉方程 的 解 是 一个 函数, 这里 的 A1 是 一个 系数, 是 常量, 这就 尴尬 了, 呵呵呵呵 。 这两者(函数 和 常量) 的 矛盾 能不能 调和 ? 期待 数学天才们 的 表演, 拭目以待 。
我们 可以 画 一个 图 把 上面 的 过程 形象 的 表示出来 :
蓝色 三角波 是 源信号, 红色 正弦波 是 基波, 也就是 傅里叶级数 的 第一项 Sin [1] , 红线 和 蓝线 之间 用 绿线 标出 的 区域 就是 两者 波形 的 相差, 绿线 标出 的 区域 面积 大, 则 两者波形 相差 大, 面积小, 则 波形相差小 。
绿线 标出 的 区域 面积 就是 定积分 ʃ | Src (t) - A1 sin ( ω t ) | dt , [ t1, t2 ] , (8) 式 就是 让 这个 面积 最小 。
如图, 在这个 场景 里, 我们 只要 确定 A1, 使得 绿线 标出 的 区域 面积 最小 就可以 。
上文 提到 可以 考虑 用 变分法, 大家 可以 自己 试试, 这里 先不讨论 。 我们 看看 用 离散 线性 样本 的 方法 。
可以 大概 给 A1 划一个 范围, 把 这个 范围 切割 成 9 等分, 这样 可以 有 10 个 值, 把 这 10 个 值 代入 定积分 ʃ | Src (t) - A1 sin ( ω t ) | dt , [ t1, t2 ] , 看 哪个值 得到 的 定积分 最小, 就 取 这个 值 作为 A1, 切割 的 等分 越多, 则 结果 越 精确 。
[t1, t2] 在 这里 是 一个周期 。
当然, 对于 横坐标 t, 在 [ t1, t2 ] 区间 里 也要 切割一些 等分 来 近似计算积分 。 假设 [ t1, t2 ] 切割了 100 个 等分, 乘上 A1 的 10 个 值, 计算 的 时间复杂度 就是 10 * 1000 = 1 万 。
这个方法 对于 一般 的 源信号, 也许 有 不错 的 近似 效果 。 但是 对于 一些 源信号, 比如 突变性 的, 就 不适用 了 。
比如, 上图 蓝色 的 源信号, 突变 很明显 , 合成 它 的 基波 和 谐波, 大概 要 像 图上 这样 比较合适 。
红色 是 基波, 也就是 傅里叶级数 第一项, 橙色 是 一个 谐波, 它的 频率 是 基波 的 3 倍, 可以 认为 是 傅里叶级数 的 第三项 。
显然, 基波 和 源信号 的 波形 差异 并不是 最小, 甚至 还 有点 大 。 从这里看出, 构造 傅里叶级数 需要一些 “总揽全局” 的 规划 。
又或者说, 上面 一开始 提出 的 一项 一项 求 的 方法, 割裂了 傅里叶级数 的 “整体性” 。
如果 把 傅里叶级数 的 所有项 放到一起来 考虑, 可以 简化一点, 让 n 等于一个 有限的 不太大的 自然数, 比如 n = 5, 这样就是 由 5 个 正弦信号 来 组成 源信号 。
5 个 正弦信号 写成 矩阵 :
A1 , ω1 , ψ1 , b1
A2 , ω2 , ψ2 , b2
A3 , ω3 , ψ3 , b3
A4 , ω4 , ψ4 , b4
A5 , ω5 , ψ5 , b5
每个 正弦信号 的 A , ω , ψ , b 均 取 10 个值, 这样来匹配, 则 每个 正弦信号 会 产生出 10^4 = 1 万 个 样本,
有 5 个 正弦信号, 5 个 正弦信号 的 样本 在一起 匹配, 会 产生出 ( 1 万 ) ^ 5 = 10^20 个 样本,
10^20 个 样本 中 波形 和 源信号 差异 最小 的 那个 样本 就是 最优解 。
10 ^ 20 , 这个 计算量 太大 了 , 可以简化一点, 让 ω 固定, 5 个 正弦信号 的 ω 依次为 ω , ω * 2 , ω * 3 , ω * 4 , ω * 5 , 忽略 b 。
这样 写成 矩阵 :
A1 , ω , ψ1
A2 , 2 * ω , ψ2
A3 , 3 * ω , ψ3
A4 , 4 * ω , ψ4
A5 , 5 * ω , ψ5
因为 ω 是 固定 的, 每个 正弦信号 参与 取值 匹配 的 只有 A 、ψ, 所以, 每个 正弦信号 的 样本 是 10^2 = 100 个 ,
5 个 正弦信号 组合匹配 产生 的 样本 是 100 ^ 5 = 10^10 = 100 亿 个 。
这个 计算量 还是 太大, 呵呵 。 所以 这个 算法 似乎 有点 不科学, 也有点 **, 哈哈 。
未完, 接 2 楼 。