高斯白噪声的 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)
的值来验证这一点。如果您想沿着 t
为 rms
创建绘图,您将需要生成多个 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))
我想计算高斯白噪声信号的 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)
的值来验证这一点。如果您想沿着 t
为 rms
创建绘图,您将需要生成多个 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))