高斯白噪声的 RMS 振幅

RMS amplitude of gaussian white noise

我想计算高斯白噪声信号的 RMS 振幅。

import matplotlib.pyplot as plt
import numpy as np

mean = 0
std = 1.0

t = 100

def zv(t):
    return np.random.normal(mean, std, size = t)

def rms(x):
    return np.sqrt(np.mean(zv(x)**2))

plt.plot(zv(t))

plt.plot(rms(t))

zv(t) 的情节有效 - 但我不知道为什么 rms(t) 的情节只是空的。

你有什么意见吗?

此致

zv(t) returns 大小为 t 的一维数组。结果,当你取平均值时,它是一个单一的值。您可以通过打印出 rms(t) 的值来验证这一点。如果您想沿着 trms 创建绘图,您将需要生成多个 monte carlo 样本。例如,

def zv(t):
    n = 1000
    return np.random.normal(mean, std, size = (n, t))

def rms(x):
    return np.sqrt(np.mean(zv(x)**2, axis = 0))