本文简要介绍 python 语言中 scipy.linalg.dft
的用法。
用法:
scipy.linalg.dft(n, scale=None)#
离散傅里叶变换矩阵。
创建计算序列 [1] 的离散傅立叶变换的矩阵。用于生成矩阵的第 n 个原始单位根是 exp(-2*pi*i/n),其中 i = sqrt(-1)。
- n: int
调整要创建的矩阵的大小。
- scale: str,可选
必须为“无”、‘sqrtn’ 或‘n’。如果比例为‘sqrtn’,则矩阵除以 sqrt(n)。如果比例为‘n’,则矩阵除以 n。如果scale为None(默认值),则矩阵不会标准化,并且返回值只是单位根的Vandermonde矩阵。
- m: (n, n) 数组
DFT 矩阵。
参数 ::
返回 ::
注意:
什么时候规模为无,将向量乘以返回的矩阵
dft
在数学上等同于(但效率远低于)由scipy.fft.fft.参考:
[1]“DFT matrix”、https://en.wikipedia.org/wiki/DFT_matrix
例子:
>>> import numpy as np >>> from scipy.linalg import dft >>> np.set_printoptions(precision=2, suppress=True) # for compact output >>> m = dft(5) >>> m array([[ 1. +0.j , 1. +0.j , 1. +0.j , 1. +0.j , 1. +0.j ], [ 1. +0.j , 0.31-0.95j, -0.81-0.59j, -0.81+0.59j, 0.31+0.95j], [ 1. +0.j , -0.81-0.59j, 0.31+0.95j, 0.31-0.95j, -0.81+0.59j], [ 1. +0.j , -0.81+0.59j, 0.31-0.95j, 0.31+0.95j, -0.81-0.59j], [ 1. +0.j , 0.31+0.95j, -0.81+0.59j, -0.81-0.59j, 0.31-0.95j]]) >>> x = np.array([1, 2, 3, 0, 3]) >>> m @ x # Compute the DFT of x array([ 9. +0.j , 0.12-0.81j, -2.12+3.44j, -2.12-3.44j, 0.12+0.81j])
验证
m @ x
是否与fft(x)
相同。>>> from scipy.fft import fft >>> fft(x) # Same result as m @ x array([ 9. +0.j , 0.12-0.81j, -2.12+3.44j, -2.12-3.44j, 0.12+0.81j])
相关用法
- Python SciPy linalg.det用法及代码示例
- Python SciPy linalg.diagsvd用法及代码示例
- Python SciPy linalg.eigvalsh_tridiagonal用法及代码示例
- Python SciPy linalg.cdf2rdf用法及代码示例
- Python SciPy linalg.LaplacianNd用法及代码示例
- Python SciPy linalg.solve_circulant用法及代码示例
- Python SciPy linalg.polar用法及代码示例
- Python SciPy linalg.clarkson_woodruff_transform用法及代码示例
- Python SciPy linalg.rsf2csf用法及代码示例
- Python SciPy linalg.hessenberg用法及代码示例
- Python SciPy linalg.tril用法及代码示例
- Python SciPy linalg.triu用法及代码示例
- Python SciPy linalg.svd用法及代码示例
- Python SciPy linalg.ishermitian用法及代码示例
- Python SciPy linalg.invhilbert用法及代码示例
- Python SciPy linalg.factorized用法及代码示例
- Python SciPy linalg.lu_factor用法及代码示例
- Python SciPy linalg.SuperLU用法及代码示例
- Python SciPy linalg.lsqr用法及代码示例
- Python SciPy linalg.cho_factor用法及代码示例
- Python SciPy linalg.fractional_matrix_power用法及代码示例
- Python SciPy linalg.eig_banded用法及代码示例
- Python SciPy linalg.tanhm用法及代码示例
- Python SciPy linalg.orthogonal_procrustes用法及代码示例
- Python SciPy linalg.use_solver用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.linalg.dft。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。