scipy.fft.

dstn#

scipy.fft.dstn(x, type=2, s=None, axes=None, norm=None, overwrite_x=False, workers=None, orthogonalize=None)[源代码]#

返回沿指定轴的多维离散正弦变换。

参数:
xarray_like

输入数组。

type{1, 2, 3, 4}, 可选

DST 的类型(请参阅注释)。默认类型为 2。

sint 或 int 的 array_like 或 None, 可选

结果的形状。如果 saxes(见下文)都为 None,则 sx.shape;如果 s 为 None 但 axes 不为 None,则 snumpy.take(x.shape, axes, axis=0)。如果 s[i] > x.shape[i],则输入的第 i 个维度将用零填充。如果 s[i] < x.shape[i],则输入的第 i 个维度将被截断为长度 s[i]。如果 shape 的任何元素为 -1,则使用 x 的对应维度的大小。

axesint 或 int 的 array_like 或 None, 可选

计算 DST 的轴。如果未给出,则使用最后 len(s) 个轴,如果 s 也未指定,则使用所有轴。

norm{“backward”, “ortho”, “forward”}, 可选

归一化模式(请参阅注释)。默认为 “backward”。

overwrite_xbool, 可选

如果为 True,则可以销毁 x 的内容;默认为 False。

workersint, 可选

用于并行计算的最大工作线程数。如果为负数,则该值从 os.cpu_count() 中回绕。有关详细信息,请参阅 fft

orthogonalizebool, 可选

是否使用正交化 DST 变体(请参阅注释)。当 norm="ortho" 时默认为 True,否则为 False

在 1.8.0 版本中添加。

返回:
y实数 ndarray

变换后的输入数组。

另请参阅

idstn

反向多维 DST

注释

有关 DST 类型和归一化模式的完整详细信息以及参考资料,请参阅 dst

示例

>>> import numpy as np
>>> from scipy.fft import dstn, idstn
>>> rng = np.random.default_rng()
>>> y = rng.standard_normal((16, 16))
>>> np.allclose(y, idstn(dstn(y)))
True