Module Owl_fft.Generic

include module type of struct include Owl_fft_generic end
Basic functions

fft ~axis x performs 1-dimensional FFT on a complex input. axis is the highest dimension if not specified. The return is not scaled.

ifft ~axis x performs inverse 1-dimensional FFT on a complex input. axis is the highest dimension by default.

rfft ~axis ~otyp x performs 1-dimensional FFT on real input along the axis. otyp is used to specify the output type, it must be the consistent precision with input x. You can skip this parameter by using a submodule with specific precision such as Owl.Fft.S or Owl.Fft.D.

val irfft : ?axis:int -> ?n:int -> otyp:(float, 'a) Owl_dense_ndarray_generic.kind -> (Complex.t, 'b) Owl_dense_ndarray_generic.t -> (float, 'a) Owl_dense_ndarray_generic.t

irfft ~axis ~n x is the inverse function of rfft. Note the n parameter is used to specified the size of output.

fft2 x performs 2-dimensional FFT on a complex input. The return is not scaled.

ifft2 x performs inverse 2-dimensional FFT on a complex input.