concat-examples-0.3.0.0: Some examples of compiling to categories
Safe HaskellSafe-Inferred
LanguageHaskell2010

ConCat.FFT

Description

Generic FFT

Synopsis

Documentation

dft :: forall f a. (ASZ f, Foldable f, RealFloat a) => Unop (f (Complex a)) Source #

class FFT f where Source #

Minimal complete definition

fft

Associated Types

type FFO f :: * -> * Source #

Methods

fft :: DFTTy f Source #

fftDummy :: f a Source #

Instances

Instances details
FFT Par1 Source # 
Instance details

Defined in ConCat.FFT

Associated Types

type FFO Par1 :: Type -> Type Source #

FFT Pair Source # 
Instance details

Defined in ConCat.FFT

Associated Types

type FFO Pair :: Type -> Type Source #

(Zip f, Traversable f, Traversable g, Applicative f, Applicative (FFO f), Applicative (FFO g), Zip (FFO g), Pointed f, Traversable (FFO g), Pointed (FFO g), FFT f, FFT g, LScan f, LScan (FFO g), Sized f, Sized (FFO g)) => FFT (g :.: f) Source # 
Instance details

Defined in ConCat.FFT

Associated Types

type FFO (g :.: f) :: Type -> Type Source #

Methods

fft :: DFTTy (g :.: f) Source #

fftDummy :: (g :.: f) a Source #

type DFTTy f = forall a. RealFloat a => f (Complex a) -> FFO f (Complex a) Source #

genericFft :: (Generic1 f, Generic1 (FFO f), FFT (Rep1 f), FFO (Rep1 f) ~ Rep1 (FFO f)) => DFTTy f Source #

Generic FFT

type GFFT f = (Generic1 f, Generic1 (FFO f), FFT (Rep1 f), FFO (Rep1 f) ~ Rep1 (FFO f)) Source #

twiddle :: forall g f a. (ASZ g, ASZ f, RealFloat a) => Unop (g (f (Complex a))) Source #

twiddles :: forall g f a. (ASZ g, ASZ f, RealFloat a) => g (f (Complex a)) Source #

cis :: Floating a => a -> Complex a Source #

cis t is a complex value with magnitude 1 and phase t (modulo 2*pi).