NAME
Music::Interval::Barycentric - Compute barycentric musical interval space
VERSION
version 0.0103
SYNOPSIS
print join(', ', barycenter(3)), "\n";
@chords = [qw(3 4 5), qw(0 4 7)];
printf "D: %.3f\n", distance($chords[0], $chords[1]);
print evenness_index($chords[0]);
print orbit_distance(@chords), "\n";
print forte_distance(@chords), "\n";
DESCRIPTION
Barycentric chord analysis
FUNCTIONS
barycenter()
@barycenter = barycenter($n);
Return the barycenter (the "central coordinate") given an integer representing the number of notes in a chord.
distance()
$d = distance($chord1, $chord2);
Interval space distance metric between chords.
* This is used by the orbit_distance()
and evenness_index()
functions.
orbit_distance()
$d = orbit_distance($chord1, $chord2);
Return the distance from chord1
to the minimum of the cyclic permutations for chord2
.
forte_distance()
$d = forte_distance($chord1, $chord2);
Return the distance from chord1
to the minimum of the cyclic permutations and reverse cyclic permutations for chord2
.
cyclic_permutation()
@cycles = cyclic_permutation(@intervals);
Return the list of cyclic permutations of the given intervals.
evenness_index()
$d = evenness_index($chord);
Return a chord distance from the barycenter.
SEE ALSO
http://www.amazon.com/Geometry-Musical-Chords-Interval-Representation/dp/145022797X
AUTHOR
Gene Boggs <gene@cpan.org>
COPYRIGHT
Copyright 2012, Gene Boggs
This code is licensed under the same terms as Perl itself.
AUTHOR
Gene Boggs <gene@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Gene Boggs.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.