scipy.fft.
dstn#
- scipy.fft.dstn(x, type=2, s=None, axes=None, norm=None, overwrite_x=False, workers=None, orthogonalize=None)[源]#
沿着指定轴返回多维离散正弦变换。
- 参数:
- x类数组
输入数组。
- type{1, 2, 3, 4},可选
DST 的类型(参见注释)。默认类型为 2。
- sint 或 int 的类数组或 None,可选
结果的形状。如果 s 和 axes(参见下文)都为 None,则 s 为
x.shape
;如果 s 为 None 但 axes 不为 None,则 s 为numpy.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 的类数组或 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