scipy.fft.

dstn#

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

沿指定軸返回多維離散正弦轉換。

參數:
x類陣列

輸入陣列。

type{1, 2, 3, 4}, 選填

DST 的類型(請參閱「註釋」)。預設類型為 2。

s整數或整數類陣列或 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 相對應維度的大小。

axes整數或整數類陣列或 None,選填

計算 DST 的軸。如果未給定,則會使用最後 len(s) 個軸,如果 s 也未指定,則會使用所有軸。

norm{“backward”, “ortho”, “forward”}, 選填

正規化模式(請參閱「註釋」)。預設為 “backward”。

overwrite_x布林值,選填

如果為 True,則可以破壞 x 的內容;預設為 False。

workers整數,選填

用於平行計算的最大工作人員數量。如果為負數,則值會從 os.cpu_count() 環繞。請參閱 fft 以了解更多詳細資訊。

orthogonalize布林值,選填

是否使用正交化的 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