synthesizer-core-0.8.2.1: Audio signal processing coded in Haskell: Low level part

Safe HaskellNone
LanguageHaskell2010

Synthesizer.Interpolation.Core

Description

Plain interpolation functions.

Synopsis
  • linear :: C a v => v -> v -> a -> v
  • cubic :: (C a v, C a) => v -> v -> v -> v -> a -> v
  • cubicAlt :: (C a v, C a) => v -> v -> v -> v -> a -> v

Documentation

linear :: C a v => v -> v -> a -> v Source #

cubic :: (C a v, C a) => v -> v -> v -> v -> a -> v Source #

cubicAlt :: (C a v, C a) => v -> v -> v -> v -> a -> v Source #

The interpolators for module operations do not simply compute a straight linear combination of some vectors. Instead they add then scale, then add again, and so on. This is efficient whenever scaling and addition is cheap. In this case they might save multiplications. I can't say much about numeric cancellations, however.