The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Music::Interval::Barycentric

VERSION

version 0.0101

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

NAME

Music::Interval::Barycentric - Barycentric Musical Interval Space

FUNCTIONS

barycenter()

Return the barycenter (the "central coordinate") given an integer representing the number of notes in a chord.

distance()

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()

TODO

cyclic_permutation()

Return the list of cyclic permutations of the given intervals.

evenness_index()

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.