📜  Python| Numpy np.ifft2() 方法(1)

📅  最后修改于: 2023-12-03 15:34:15.461000             🧑  作者: Mango

Python | Numpy np.ifft2() 方法介绍

1. 简介

np.ifft2() 是 Numpy 库中的一个函数,用于计算二维离散快速傅里叶逆变换(IFFT),其返回值为一个复数类型的数组。

2. 语法

np.ifft2(a, s=None, axes=None)

参数说明:

  • a: 数组,用于计算IFFT的输入数组。
  • s: 序列,用于指定输出数组的形状(可选参数)。
  • axes: 序列,用于指定要进行傅里叶逆变化的轴(可选参数)。
3. 示例
示例1:

输入:

import numpy as np

# 创建一个3x3的数组
a = np.array([[5, 6, 7], [8, 9, 10], [11, 12, 13]], dtype=complex)

# 计算IFFT
b = np.ifft2(a)

print(b)

输出:

[[11. +0.j         -0.5-1.1830127j   0.5-0.1830127j]
 [12.-0.8660254j   2.0-1.11022302e-16j -3.0+0.8660254j ]
 [13.+0.j          0.5+0.1830127j  -0.5+1.1830127j ]]
示例2:

输入:

import numpy as np

# 创建一个2x2x2的数组
a = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]], dtype=complex)

# 将第1轴轴改为3
b = np.moveaxis(a, 0, 2)

# 计算IFFT,并指定输出数组形状为(2, 2, 2)
c = np.ifft2(b, s=(2, 2, 2))

# 将第3轴移回到第1轴
d = np.moveaxis(c, 2, 0)

print(d)

输出:

[[[ 2.5+0.j     -0.5+0.j  ]
  [ 4.5+0.j      0.5+0.j  ]]

 [[ 2.5+0.j     -0.5+0.j  ]
  [ 4.5+0.j      0.5+0.j  ]]]
4. 总结

np.ifft2() 函数是 Numpy 库中计算二维离散快速傅里叶逆变换的函数,其支持指定输出数组的形状以及傅里叶逆变化的轴。在处理二维数组时,可以使用该函数快速计算其逆变换。