Owl_fft.Generic
include module type of struct include Owl_fft_generic end
val fft :
?axis:int ->
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t ->
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t
fft ~axis x
performs 1-dimensional FFT on a complex input. axis
is the highest dimension if not specified. The return is not scaled.
val ifft :
?axis:int ->
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t ->
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t
ifft ~axis x
performs inverse 1-dimensional FFT on a complex input. axis
is the highest dimension by default.
val rfft :
?axis:int ->
otyp:(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.kind ->
(float, 'b) Owl_dense_ndarray_generic.t ->
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t
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 ->
(Stdlib.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.
val fft2 :
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t ->
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t
fft2 x
performs 2-dimensional FFT on a complex input. The return is not scaled.
val ifft2 :
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t ->
(Stdlib.Complex.t, 'a) Owl_dense_ndarray_generic.t
ifft2 x
performs inverse 2-dimensional FFT on a complex input.