InplaceDim#

For example, a 2D complex to complex transform of 3 rows and 4 columns with contiguous row-major data layout can be constructed with any of the following:

>>> layout = [hpk.fft.InplaceDim(3),    hpk.fft.InplaceDim(4)]
>>> layout = [hpk.fft.InplaceDim(3, 0), hpk.fft.InplaceDim(4, 0)]
>>> layout = [hpk.fft.InplaceDim(3, 8), hpk.fft.InplaceDim(4, 2)]

CLASS

class hpk.fft.InplaceDim#

InplaceDim describes one dimension of an FFT.

__init__#

Overloaded function.

  1. __init__(self) -> None

Same as InplaceDim(1, 0).

  1. __init__(self, n: int, /) -> None

Same as InplaceDim(n, 0). Zero stride indicates elements are contiguous.

  1. __init__(self, n: int, stride: int, /) -> None

Construct an InplaceDim from arguments n and stride.

Parameters:
  • n – The number of points in an FFT dimension, or as a batch, the number of transforms.

  • stride – The stride in the time domain from one point to the next, measured in terms of real elements.

  1. __init__(self, arg: tuple[int, int], /) -> None

The tuple must contain two ints, (n, stride).