jax.scipy.signal.csd#

jax.scipy.signal.csd(x, y, fs=1.0, window='hann', nperseg=None, noverlap=None, nfft=None, detrend='constant', return_onesided=True, scaling='density', axis=-1, average='mean')[source]#

使用 Welch 方法估计互功率谱密度 (CSD)。

这是 scipy.signal.csd() 的 JAX 实现。 它类似于 jax.scipy.signal.welch(),但它作用于两个输入信号并估计它们的互谱密度,而不是功率谱密度 (PSD)。

参数:
  • x (Array) – 表示输入值时序的数组。

  • y (ArrayLike | None) – 表示第二个输入值时序的数组,沿指定的 axisx 的长度相同。 如果未指定,则假定 y = x 并通过 Welch 方法计算 x 的 PSD Pxx

  • fs (ArrayLike) – 输入的采样频率(默认值:1.0)。

  • window (str) – 要应用于每个段的数据锥形窗口。 可以是窗口函数名称、指定窗口长度和函数的元组或数组(默认值:'hann')。

  • nperseg (int | None) – 每个段的长度(默认值:256)。

  • noverlap (int | None) – 段之间重叠的点数(默认值:nperseg // 2)。

  • nfft (int | None) – FFT 使用的长度,如果需要零填充 FFT。 如果 None (默认),则 FFT 长度为 nperseg

  • detrend (str) – 指定如何消除每个段的趋势。 可以是 False (默认:不消除趋势)、'constant' (删除均值)、'linear' (删除线性趋势),或者接受段并返回消除趋势的段的可调用对象。

  • return_onesided (bool) – 如果为 True (默认),则返回真实输入的单边频谱。 如果为 False,则返回双边频谱。

  • scaling (str) – 选择计算功率谱密度 ('density',默认) 或功率谱 ('spectrum')

  • axis (int) – 计算 CSD 沿用的轴(默认值:-1)。

  • average (str) – 要在周期图上使用的平均类型;'mean'(默认)或 'median' 之一。

返回:

长度为 2 的数组元组 (f, Pxy)f 是样本频率的数组,Pxyxy 的互谱密度

返回类型:

tuple[Array, Array]

注意事项

原始的 SciPy 函数在 csd(x, x)csd(x, x.copy()) 之间表现出略有不同的行为。 LAX 后端版本旨在遵循后一种行为。 要复制前者,请将此函数作为 csd(x, None) 调用。

另请参阅