Jump to content

messiaen-permutation function


Recommended Posts

I'm doing some work (analytically) with Messiaen's finite permutations of sequences (Livre d'Orgue, Catalogue d'Oiseaux etc) - and want to be able to develop more functions in OM to generate versions of the various options that Messiaen sets out in his later writings and that have been also been analysed in a number of academic writings by others.

 

The messiaen-permutation function in OM is really simple to use, but the documentation is pretty minimal and I cannot figure out what specific permutation this function uses? It does not appear to be either of the two standard 'fan' permutations (open or closed) and it only appears to generate one type of permutation.

 

Could the code for this function be made available so it can be adapted - or can we have some options for adapting/arguments in the current function on the system?

 

bw

 

Andrew

Link to comment
Share on other sites

That's some code I wrote some 25 years ago for Symbolic Composer that Janusz converted for OM.

I think I got the algorithm from some Messiaen book. Let me see if I can find it. Not sure if there was more

than one permutation in the book though. If there was I would probably have added them.

 

Jesper 

Link to comment
Share on other sites

10 hours ago, AM said:


The permutations I’m referring to post-date The technique of my musical language book. They are described by Messiaen in the 3rd volume of Traité de couleur, et d’ornithologie as “permutations symétriques” and are based on finite outputs of substitutions by position within a sequence, so permutation is finite even with long sequences and return to the original sequence within a limited number of variants. These are fascinating patterns aesthetically and they are used initially in a limited way as part of the serial techniques in the Quatre études de rhythms in 1949-50 and then developed much more extensively in the works following, such as Le merle noir and Livre d’orgue from about 1951 on. Catalogue d’oiseaux is full of these permutations. The 32 value duration sequence at the opening of La chouette hulotte in Livre 3 of Catalogue is a key example.

 

Messiaen describes the permutations thus:

In the case of a chromatic scale of durations ranging from the 32nd note to the whole note, the number of possible permutations is so vast that it would take half a human lifetime just to write them down—and several years to play them. Therefore, it is necessary to make a selection—and to select in a way that will give the maximum opportunity for dissimilarity between one permutation and another. (Messiaen 1965)

 

It is the selection and choices involved that make these permutations interesting. I have most of the permutations mapped out but want to develop OM functions for them. If you can share the code for the messiaen-permutation function, I’d be more than happy to do the development of this and share the results. 
 

bw Andrew 

Link to comment
Share on other sites

There is missing a reverse function in the open and closed types above but Janusz has a version that I hope is correct.

I think it will be included in the next OM update. 

 

Jesper

Link to comment
Share on other sites

The Symmetrical Permutation is really simple

 

(setf sequence '(1 2 3 4 5))
(setf order '(4 3 0 1 2))
(gen-divide 5 (messiaen-permutation sequence :type order))
=> ((5 4 1 2 3) (3 2 5 4 1) (1 4 3 2 5) (5 2 1 4 3)
    (3 4 5 2 1) (1 2 3 4 5) (5 4 1 2 3))

 

so 1:st permutation '(5 4 1 2 3) is the sequence '(1 2 3 4 5) reordered by '(4 3 0 1 2)

then the 2:nd permutation '(3 2 5 4 1) is  the result of the 1:st permutation '(5 4 1 2 3) reordered by '(4 3 0 1 2) and so on…

 

Link to comment
Share on other sites

(defun symmetrical-permutation (seq ord &aux (tmp seq))
    (loop collect  
         (setf tmp (position-filter ord tmp))
       while (not (equal tmp seq))))

(symmetrical-permutation '(1 2 3 4 5) '(4 3 0 1 2))
=> ((5 4 1 2 3) (3 2 5 4 1) (1 4 3 2 5) (5 2 1 4 3) (3 4 5 2 1) (1 2 3 4 5))

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

Terms of Use Privacy Policy