提交 2e32b8d1 编写于 作者: W wizardforcel

8.

上级 7d44f3b0
......@@ -20,7 +20,7 @@
+ 一些物理量的重尾分布:例如,在冷冻的水中,晶体尺寸的分布是幂律的。
+ 呈现粉红噪的时间变化。复合信号可以分解为它们的频率分量。在粉红噪声中,低频分量比高频分量功率更大。具体而言,频率`f`处的功率与`1 / f`成正比。
+ 呈现粉红噪的时间变化。复合信号可以分解为它们的频率分量。在粉红噪声中,低频分量比高频分量功率更大。具体而言,频率`f`处的功率与`1 / f`成正比。
临界系统通常不稳定。例如,为了使水保持部分冷冻状态,需要主动控制温度。如果系统接近临界温度,则小型偏差倾向于将系统从一个相位移到另一个相位。
......@@ -369,3 +369,89 @@ slope = params[0]
严格来说,值为 3 的分形维度与 2 不可区分,但考虑到其他值的结果,线的表观曲率和图案的外观,似乎它也是分形的。
本章结尾的练习之一,要求您使用不同的`n``level`值,再次运行此分析,来查看估计的维度是否一致。
## 8.6 频谱密度
提出沙堆模型的原始论文的标题是《自组织临界:1/f 噪声的解释》(Self-Organized Criticality: An Explanation of 1/f Noise)。 正如小标题所述的那样,Bak,Tang 和 Wiesenfeld 正试图解释为什么许多自然和工程系统表现出 1/f 噪声,这也被称为“闪烁噪声”和“粉红噪声”。
为了了解粉红噪声,我们必须绕路来了解信号,频谱分析和噪声。
信号:
信号是随时间变化的任何数量。 一个例子是声音,即空气密度的变化。 在本节中,我们将探讨雪崩持续时间和大小在不同时间段内的变化。
频谱分析:
任何信号都可以分解为一组具有不同音量或功率的频率分量。 例如,演奏中央 C 上方的 A 的小提琴的声音,包含频率为 440 Hz 的主要分量,但它也包含较低功率分量,例如 880 Hz,1320 Hz 和其他整数倍的基频。 频谱分析是寻找构成信号的成分和它们的功率的过程,称为其频谱。
噪声:
在通常的用法中,“噪声”通常是一种不需要的声音,但在信号处理的情况下,它是一个包含许多频率成分的信号。
噪声有很多种。 例如,“白噪声”是一个信号,它在很宽的频率范围内拥有相同功率的成分。
其他种类的噪声在频率和功率之间有不同的关系。 在“红噪声”中,频率为`f`的功率为`1 / f ** 2`,我们可以这样写:
```
P(f) = 1 / f ** 2
```
我们可以把指数 2 换成`β`来扩展它:
```
P(f) = 1 / f ** β
```
`β= 0`时,该等式描述白噪声; 当`β= 2`时,它描述红噪声。 当参数接近 1 时,我们将结果称为`1 / f`噪声。 更一般来说,任何介于 0 和 2 之间的噪声称为“粉红”,因为它介于白色和红色之间。
那么这如何适用于沙堆模型呢? 假设每次细胞倒塌时,它会发出声音。 如果我们在运行中记录了沙堆模型,它会是什么样子?
在我的`SandPile`实现运行时,它会记录在每个时间步骤中,倒塌的细胞数量,并将结果记录在名为`toppled_seq`的列表中。 例如,在第?节中运行模型之后,我们可以提取产生的信号:
```py
signal = pile2.toppled_seq
```
为了计算信号的频谱(同样,这是它包含的频率和它们的功率),我们可以使用快速傅立叶变换(FFT)。
唯一的问题是噪声信号的频谱往往是嘈杂的。 但是,我们可以通过将一个长信号分成多个段,计算每个段的 FFT,然后计算每个频率的平均功率来使其平滑。
该算法的一个版本被称为“韦尔奇方法”,SciPy 提供了一个实现。 我们可以像这样使用它:
```py
from scipy.signal import welch
nperseg = 2048
freqs, spectrum = welch(signal, nperseg=nperseg, fs=nperseg)
```
`nperseg`是信号分解成的片段长度。 对于较长的片段,我们可以获得更多的频率成分,但由于平均的片段数较少,结果更加嘈杂。
`fs`是“采样频率”,即每单位时间的信号中的数据点数。 通过设置`fs = nperseg`,我们可以得到从 0 到`nperseg / 2`的频率范围,但模型中的时间单位是任意的,所以频率并不意味着什么。
返回值,`freqs``powers`是 NumPy 数组,包含成分的频率及其相应的功率。
如果信号是粉红噪声,我们预计:
```
P(f) = 1 / f ** β
```
对两边取对数会得到:
```
logP(f) = −β logf
```
所以如果我们在双对数刻度上绘制功率与频率的关系,我们预计有一条斜率为`β`的直线。
![](img/8-6.png)
图 8.6:随着时间推移的倒塌细胞的功率频谱,双对数刻度
图?显示结果。 对于 10 到 1000 之间的频率(以任意单位),频谱落在一条直线上。 灰线斜率为 -1.58,这对应于由 Bak,Tang 和 Wiesenfeld 报告的参数`β= 1.58`
这个结果证实了沙堆模型产生粉红噪声。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册