jax.numpy.fft.rfft#
- jax.numpy.fft.rfft(a, n=None, axis=-1, norm=None)[原始碼]#
計算實值陣列的一維離散傅立葉轉換。
JAX 實作的
numpy.fft.rfft()
。- 參數:
- 傳回:
包含
a
的一維離散傅立葉轉換的陣列。如果n
是偶數,則沿axis
的陣列維度為(n/2)+1
;如果n
是奇數,則為(n+1)/2
。- 傳回類型:
另請參閱
jax.numpy.fft.fft()
:計算一維離散傅立葉轉換。jax.numpy.fft.irfft()
:計算實值輸入的一維反離散傅立葉轉換。jax.numpy.fft.rfftn()
:計算實值輸入的多維離散傅立葉轉換。jax.numpy.fft.irfftn()
:計算實值輸入的多維反離散傅立葉轉換。
範例
jnp.fft.rfft
預設沿axis -1
計算轉換。>>> x = jnp.array([[1, 3, 5], ... [2, 4, 6]]) >>> with jnp.printoptions(precision=2, suppress=True): ... jnp.fft.rfft(x) Array([[ 9.+0.j , -3.+1.73j], [12.+0.j , -3.+1.73j]], dtype=complex64)
當
n=5
時,沿軸 -1 的轉換維度將為(5+1)/2 =3
,而沿其他軸的維度將與輸入相同。>>> with jnp.printoptions(precision=2, suppress=True): ... jnp.fft.rfft(x, n=5) Array([[ 9. +0.j , -2.12-5.79j, 0.12+2.99j], [12. +0.j , -1.62-7.33j, 0.62+3.36j]], dtype=complex64)
當
n=4
且axis=0
時,沿axis 0
的轉換維度將為(4/2)+1 =3
,而沿其他軸的維度將與輸入相同。>>> with jnp.printoptions(precision=2, suppress=True): ... jnp.fft.rfft(x, n=4, axis=0) Array([[ 3.+0.j, 7.+0.j, 11.+0.j], [ 1.-2.j, 3.-4.j, 5.-6.j], [-1.+0.j, -1.+0.j, -1.+0.j]], dtype=complex64)