jax.scipy.signal.welch#
- jax.scipy.signal.welch(x, fs=1.0, window='hann', nperseg=None, noverlap=None, nfft=None, detrend='constant', return_onesided=True, scaling='density', axis=-1, average='mean')[source]#
使用 Welch 方法估计功率谱密度 (PSD)。
这是
scipy.signal.welch()
的 JAX 实现。它将输入信号分成重叠的段,计算每个段的修正周期图,并平均结果以获得 PSD 的更平滑估计。- 参数:
x (Array) – 表示输入值时间序列的数组。
fs (ArrayLike) – 输入的采样频率(默认值:1.0)。
window (str) – 应用于每个段的数据锥形窗口。可以是窗口函数名称、指定窗口长度和函数的元组或数组(默认值:
'hann'
)。nperseg (int | None | None) – 每个段的长度(默认值:256)。
noverlap (int | None | None) – 段之间重叠的点数(默认值:
nperseg // 2
)。nfft (int | None | None) – 使用的 FFT 长度,如果需要零填充 FFT。如果
None
(默认值),则 FFT 长度为nperseg
。detrend (str) – 指定如何去除每个段的趋势。可以是
False
(默认值:不去除趋势)、'constant'
(移除均值)、'linear'
(移除线性趋势)或接受段并返回去除趋势段的可调用对象。return_onesided (bool) – 如果为 True(默认值),则为实际输入返回单边频谱。如果为 False,则返回双边频谱。
scaling (str) – 选择计算功率谱密度 (
'density'
,默认值) 或功率谱 ('spectrum'
)axis (int) – 计算 PSD 沿着的轴(默认值:-1)。
average (str) – 用于周期图的平均类型;
'mean'
(默认值)或'median'
之一。
- 返回:
长度为 2 的数组元组
(f, Pxx)
。f
是采样频率数组,Pxx
是x
的功率谱密度。- 返回类型:
参见
jax.scipy.signal.csd()
: 交叉功率谱密度。jax.scipy.signal.stft()
: 短时傅里叶变换。