numpy.fft.rfftn
-
numpy.fft.rfftn(a, s=None, axes=None, norm=None)[source] -
Вычислить N-мерное дискретное преобразование Фурье для вещественного входного сигнала.
Эта функция вычисляет N-мерное дискретное преобразование Фурье по любому количеству осей в M-мерном вещественном массиве с помощью быстрого преобразования Фурье (FFT). По умолчанию все оси преобразуются, при этом вещественное преобразование выполняется по последней оси, а остальные преобразования — комплексные.
- Параметры
-
-
aarray_like -
Входной массив, предполагается вещественный.
-
ssequence of ints, optional -
Форма (длина по каждой преобразуемой оси) для использования из входного массива. (
s[0]относится к оси 0,s[1]к оси 1 и т.д.). Последний элементsсоответствуетnдляrfft(x, n), а для остальных осей он соответствуетnдляfft(x, n). По любой оси, если заданная форма меньше, чем форма входного массива, входной массив усекается. Если она больше, входной массив дополняется нулями. Еслиsне указан, используется форма входного массива по осям, указанным вaxes. -
axessequence of ints, optional -
Оси, по которым вычисляется преобразование Фурье. Если не указано, используются последние
len(s)оси или все оси, еслиsтакже не указано. -
norm{None, “ortho”}, optional -
Введено в версии 1.10.0.
Режим нормализации (см.
numpy.fft). По умолчанию None.
-
- Возвращает
-
-
outcomplex ndarray -
Усечённый или дополненный нулями входной массив, преобразованный по осям, указанным в
axes, или по комбинацииsиa, как описано в разделе параметров выше. Длина последней преобразованной оси будетs[-1]//2+1, а длины остальных преобразованных осей будут соответствоватьs, или останутся неизменными от входного массива.
-
- Возбуждает
-
- ValueError
-
Если
sиaxesимеют разную длину. - IndexError
-
Если элемент
axesбольше, чем число осейa.
См. также
Примечания
Преобразование для вещественного входного сигнала выполняется по последней оси преобразования, как в
rfft, затем преобразование по оставшимся осям выполняется как вfftn. Порядок выходных данных такой же, как вrfftдля последней оси преобразования и такой же, как вfftnдля остальных осей преобразования.См.
fftдля подробностей, определений и используемых соглашений.Примеры
>>> a = np.ones((2, 2, 2)) >>> np.fft.rfftn(a) array([[[8.+0.j, 0.+0.j], # may vary [0.+0.j, 0.+0.j]], [[0.+0.j, 0.+0.j], [0.+0.j, 0.+0.j]]])>>> np.fft.rfftn(a, axes=(2, 0)) array([[[4.+0.j, 0.+0.j], # may vary [4.+0.j, 0.+0.j]], [[0.+0.j, 0.+0.j], [0.+0.j, 0.+0.j]]])
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.fft.rfftn.html