----------------------------------------------------------------------------- -- | -- Module : DSP.Source.Basic -- Copyright : (c) Matthew Donadio 2003 -- License : GPL -- -- Maintainer : m.p.donadio@ieee.org -- Stability : experimental -- Portability : portable -- -- Basic signals -- ----------------------------------------------------------------------------- module DSP.Source.Basic where -- | all zeros zeros :: (Num a) => [a] zeros :: forall a. Num a => [a] zeros = forall a. a -> [a] repeat a 0 -- | single impulse impulse :: (Num a) => [a] impulse :: forall a. Num a => [a] impulse = a 1 forall a. a -> [a] -> [a] : forall a. Num a => [a] zeros -- | unit step step :: (Num a) => [a] step :: forall a. Num a => [a] step = forall a. a -> [a] repeat a 1 -- | ramp ramp :: (Num a) => [a] ramp :: forall a. Num a => [a] ramp = forall a. (a -> a) -> a -> [a] iterate (a 1forall a. Num a => a -> a -> a +) a 0