jax.numpy.fft.ifftn#
- jax.numpy.fft.ifftn(a, s=None, axes=None, norm=None)[原始碼]#
計算多維反離散傅立葉轉換。
JAX 實作的
numpy.fft.ifftn()
。- 參數:
- 返回:
包含
a
的多維反離散傅立葉轉換的陣列。- 返回類型:
參見
jax.numpy.fft.fftn()
:計算多維離散傅立葉轉換。jax.numpy.fft.fft()
:計算一維離散傅立葉轉換。jax.numpy.fft.ifft()
:計算一維反離散傅立葉轉換。
範例
當
axes
參數為None
時,jnp.fft.ifftn
預設沿所有軸計算轉換。>>> x = jnp.array([[1, 2, 5, 3], ... [4, 1, 2, 6], ... [5, 3, 2, 1]]) >>> with jnp.printoptions(precision=2, suppress=True): ... print(jnp.fft.ifftn(x)) [[ 2.92+0.j 0.08-0.33j 0.25+0.j 0.08+0.33j] [-0.08+0.14j -0.04-0.03j 0. -0.29j -1.05-0.11j] [-0.08-0.14j -1.05+0.11j 0. +0.29j -0.04+0.03j]]
當
s=[3]
時,沿axis -1
的轉換維度將為3
,而沿其他軸的維度將與輸入的維度相同。>>> with jnp.printoptions(precision=2, suppress=True): ... print(jnp.fft.ifftn(x, s=[3])) [[ 2.67+0.j -0.83-0.87j -0.83+0.87j] [ 2.33+0.j 0.83-0.29j 0.83+0.29j] [ 3.33+0.j 0.83+0.29j 0.83-0.29j]]
當
s=[2]
且axes=[0]
時,沿axis 0
的轉換維度將為2
,而沿其他軸的維度將與輸入的維度相同。>>> with jnp.printoptions(precision=2, suppress=True): ... print(jnp.fft.ifftn(x, s=[2], axes=[0])) [[ 2.5+0.j 1.5+0.j 3.5+0.j 4.5+0.j] [-1.5+0.j 0.5+0.j 1.5+0.j -1.5+0.j]]
當
s=[2, 3]
時,轉換的形狀將為(2, 3)
。>>> with jnp.printoptions(precision=2, suppress=True): ... print(jnp.fft.ifftn(x, s=[2, 3])) [[ 2.5 +0.j 0. -0.58j 0. +0.58j] [ 0.17+0.j -0.83-0.29j -0.83+0.29j]]