Copyright | (c) Hans Hoglund, Edward Lilley 2012–2014 |
---|---|
License | BSD-style |
Maintainer | hans@hanshoglund.se |
Stability | experimental |
Portability | non-portable (TF,GNTD) |
Safe Haskell | None |
Language | Haskell2010 |
Musical ambitus, or pitch ranges.
- data Ambitus a
- ambitus :: (Num a, Ord a) => Iso (a, a) (b, b) (Ambitus a) (Ambitus b)
- ambitus' :: (Num a, Ord a) => Iso' (a, a) (Ambitus a)
- mapAmbitus :: (Ord b, Num b) => (a -> b) -> Ambitus a -> Ambitus b
- ambitusHighest :: (Num a, Ord a) => Ambitus a -> a
- ambitusLowest :: (Num a, Ord a) => Ambitus a -> a
- ambitusInterval :: (Num a, Ord a, AffineSpace a) => Ambitus a -> Diff a
Documentation
An ambitus is a closed interval (in the mathematical sense).
Also known as range or tessitura, this type can be used to restrict the range of a melody, chord or other pitch container.
It is also used in music-parts
to represent the range of instruments.
mapAmbitus :: (Ord b, Num b) => (a -> b) -> Ambitus a -> Ambitus b Source
Not a true functor for similar reasons as sets.
ambitusHighest :: (Num a, Ord a) => Ambitus a -> a Source
ambitusLowest :: (Num a, Ord a) => Ambitus a -> a Source
ambitusInterval :: (Num a, Ord a, AffineSpace a) => Ambitus a -> Diff a Source
Returns a postive interval (or _P1 for empty ambitus)