lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Synchronize music of different length


From: Carl Peterson
Subject: Re: Synchronize music of different length
Date: Fri, 5 Jul 2013 12:14:45 -0400

I don't know that Urs was contemplating "irrational" in the mathematical sense, but in the more logical sense of being something not governed by an easily understood relationship, such as one measure generating two and the next two generating one, and then maybe four develops to 10 and 9 to 5, or something like that.

The thought that I had is that such an arbitrary function would be good in generated music (such as music generated by recursive functions) where LilyPond's text-based source files are ideal, and where successive systems could show the increasing complexity of each generation. So I might have something like (on an alto clef, for visual symmetry, and using a lisp structure to illustrate nesting)

System 1: c'
System 2: (c' d' b c')
System 3: ((c' d' b c') (e' d') (a b) (d' c'))
System 4: (((c' d' b c') (e' d') (a b) (d' c')) ((f' e') (c' d')) ((g a) (c' b)) ((e' d') (b c')))

For those curious, the generating rules are:
(1) first note in a sequence generates itself, the next higher diatonic note, the next lower diatonic note, then itself again
(2) if note n is higher than note n-1, then the generated notes are the next higher note followed by the note itself
(3) if note n is lower than note n-1, then the generated notes are the next lower note followed by the note itself

The result is, as can be seen, a function where generation n+1 always begins with the notes in generation n.

How might we be able to code for a situation like this? Granted, if we're already generating the music, we might as well generate some kind of manual spacing, but would there be a way for LP/Scheme to align matching elements in these lists recursively, such as by determining the max natural/proportional spacing of the innermost equivalent musical expressions and then using that to determine the spacing required for outer groupings?



On Fri, Jul 5, 2013 at 11:20 AM, David Kastrup <address@hidden> wrote:
Urs Liska <address@hidden> writes:
> This works for the given situation.
> But as you say I will have situations where it won't be sufficient
> because they don't have that simple 2:1 relation but rather a
> irrational one.

That's not terribly likely with standard LilyPond input.  Arbitrary
complicated fractions are never irrational even though the _limit_ of a
sequence of fractions may be.

--
David Kastrup

reply via email to

[Prev in Thread] Current Thread [Next in Thread]