|
| Synthesizer.Basic.WaveSmoothed | | Portability | requires multi-parameter type classes | | Stability | provisional | | Maintainer | synthesizer@henning-thielemann.de |
|
|
|
| Description |
| Waveforms which are smoothed according to the oscillator frequency
in order to suppress aliasing effects.
|
|
| Synopsis |
|
| data T t y | | | fromFunction :: (t -> t -> y) -> T t y | | | fromWave :: (C t, C t, C y) => T t y -> T t y | | | fromControlledWave :: (C t, C t, C y) => (t -> T t y) -> T t y | | | raise :: C y => y -> T t y -> T t y | | | amplify :: C y => y -> T t y -> T t y | | | distort :: (y -> z) -> T t y -> T t z | | | apply :: T t y -> t -> T t -> y | | | sine :: (C a, C a) => T a a | | | cosine :: (C a, C a) => T a a | | | saw :: (C a, C a) => T a a | | | square :: (C a, C a) => T a a | | | triangle :: (C a, C a) => T a a | | | data Harmonic a | | | harmonic :: T a -> a -> Harmonic a | | | composedHarmonics :: (C a, C a) => [Harmonic a] -> T a a |
|
|
| Documentation |
|
|
Instances | |
|
|
| fromFunction :: (t -> t -> y) -> T t y | Source |
|
|
|
| Use this function for waves which are sufficiently smooth.
If the Nyquist frequency is exceeded the wave is simply replaced
by a constant zero wave.
|
|
| fromControlledWave :: (C t, C t, C y) => (t -> T t y) -> T t y | Source |
|
|
|
|
|
|
| distort :: (y -> z) -> T t y -> T t z | Source |
|
|
|
|
|
| map a phase to value of a sine wave
|
|
|
|
|
| saw tooth,
it's a ramp down in order to have a positive coefficient for the first partial sine
|
|
|
| square
|
|
|
| triangle
|
|
|
| This is similar to Polar coordinates,
but the range of the phase is from 0 to 1, 0 to 2*pi.
|
|
|
|
|
|
Specify the wave by its harmonics.
The function is implemented quite efficiently
by applying the Horner scheme to a polynomial with complex coefficients
(the harmonic parameters)
using a complex exponential as argument.
|
|
| Produced by Haddock version 2.4.2 |