RFC: Explicit forbid any axes being repeated in the axes
of the multi-dimensional FFT APIs?
#747
Labels
topic: FFT
Fast Fourier transforms.
Milestone
When working on #746 I came to realize one NumPy behavior we've overlooked so far. In a few NumPy APIs, there's an explicit mention about (exact text varies)
including
fft2
,ifft2
,fftn
,ifftn
, andirfftn
. I would propose to add a clause to explicitly forbidaxes
containing repeating entries, for two reasonsfftn(..., axes=(2,1,0,1,2))
. Is it a 3D FFT (2,1,0) followed by 2D FFT (1,2), or a 2D FFT (2,1) followed by 3D FFT (0,1,2), or something else? From the perspective of a low-level numerical library, it also makes little sense that we offer accelerated routines for this awkward case.axes
argument. I've been having a mental model that a validaxes
must contain non-repeating entries. If this anticipation is correct, I would like to call it out, in particular for FFT where there exists a different precedence.If people dislike an explicit clause, we should at least add a note to state this is implementation defined.
The text was updated successfully, but these errors were encountered: