Euclidean Rhythms and Polyrhythmus -- confused about Bjorklund distribution

Daniel Collins's icon

Hello,

So, I've been playing with Polyrhythmus which is brilliant stuff and quite amazing. But I can't seem to figure out how to do the simple Bjorklund distribution of a given count (e.g. 7) into a given meter (e.g. the classic 12 or 16). PR seems to perfectly divide the time scale, adjust the meter, and give me an exactly evenly divided 7 into the 12 or 16 instead of spreading the 7 into the individual beats. If I take the other approach and go for 7 into 4, I get effectively the same thing just 4x faster. If I do 7 / 7, that's the same as 4/4 but the cycle loop offsets.

All of this is as expected for a perfectly evenly divided polyrhythmic engine, as PR is!

But... does it do "Euclidean" rhythms as implemented by the Bjorklund algorithm? I can't figure out how to do this - so either I'm misunderstanding the use of the term "Euclidean" as applied to Polyrhythmus, or I'm not doing something correctly.

Please help, and thanks!

Roman Thilenius's icon

i am not 100% sure about all this terminology stuff, but there is musically and technically a big difference between running 4/4 and 7/4 within the same beats structure - or within 4/4.

if the speed is equal in both clocks, i would call it "polymetric".

simply because it would still be possible to have the same rythm in both clocks: (you can have a 7/4 signature but still write the melody of a 4/4 or 3/4 piece into it, isnt it?)

regarding "björklund algorithm", i dont think that is more than a fancy name, you wont find it in literature.

the "euclidian" thing is a subset of having two or more clocks with different speeds running at the same time. a pure application of it would strictly follow the principle of having events always at the greatest common divisor. i find it totally uninteresting. a composer has tons of other choices how he sets up a rythmic structure.

if you want to seriously dive into it i would strongly recommend to do all the math on your own and not rely on max´"tempo" system and the like. you will be rewarded wil some enlighting moments.

it can be very confusing at the beginning, because with the smallest numbers, 2, 3 and 4, "polyrythm" and "polymetrics" somehow seems to be the same (the more interesting setups should include at leat one number beetween 5 and 13.)
if you have a 3-over4 polyrythm (e.g. an 8/8 signature and the allowance to use triplets) and improvisation is your composition method, you might end up with the same in both systems.

but it my opinion it is two different approaches. (you could even do both at the same time, and have one clock counting from 1 to 4 at 120 BPM and another clock counting from 1 to 7 but a little slower than 120 BPM - so that the second 1 of the 7/4 part does not match beat 3 of the bar 2 of the 4/4 part but for one 1/8 later. that system will now add an unvisible 8/8 grid behind it for the beat phasing , to which you dont really have access...)

nobody can forbid you to have two clocks, one starting at a random time and performing 4/13 and another one at 6/5 starting at another random time. but it is musically not very interesting.
the fun begins when either the "1" (the bars) of two clocks are equal, or the beats.

and dont forget the third idea, which is already waiting behing the corner: using algorithms to change the signature or beat count every bar. ;)

Daniel Collins's icon

I think I wasn't clear : I understand polymeter and polyrhythm, and they aren't anything to do with Euclidean - Euclidean rhythms have the same meter and the same number of beats (e.g. the "1" of each beat occurs simultaneously each measure and the number of subdivisions are the same, and the subdivisions have the same duration). But they distribute the beats on which the note is played as evenly as they can while remaining quantized to the original tempo and time signature. So while a polyrhythm would evenly divide 5/4 into 4/4 over 20 measures, and a polymeter would put 5/5 into the same amount of time as a measure of 4/4 (smoothly and continuously), a Euclidean polyrhythm would put 5 into a 4/4 measure by distributing those 5 across the standard subdivisions of 4/4 so that they would still land on what would be heard as a "beat" within the 4/4 measure - thus lending a syncopated or odd-timing feel to the rhythm.

Here is the original paper describing the concept by Toussaint: http://cgm.cs.mcgill.ca/~godfried/publications/banff.pdf

Bjorklund (https://ics-web.sns.ornl.gov/timing/Rep-Rate%20Tech%20Note.pdf) gave a classic algorithm for determining this - and I referred to this only to clarify "which Euclidean rhythm" I meant, but I should have said Toussaint, really. If you're still confused, the relatively short video here illustrates precisely what I'm talking about:

http://www.synthtopia.com/content/2015/11/20/an-introduction-to-euclidean-rhythms/

And as far as I know it, you can't have evenly distributed beats (as in, the timing becomes fractional or the duration becomes fractional or the pattern is allowed to "slip" across multiple measures) and still call it "Euclidean" because the GCD isn't actually applied to the measure, but is just a natural effect of when an odd time signature will re-align with it's counterpart.

So, maybe I'm using the wrong terminology, but I'd really like to know if there's a way to do this quantized Euclidean distribution across existing beats in PR (because I love all the other features of it!) or if I need another tool to do it (and if so, does it exist already)?

Roman Thilenius's icon

>> a Euclidean polyrhythm would put 5 into a 4/4 measure by distributing
>> those 5 across the standard subdivisions of 4/4

to me this just sounds like the "normal" way of polyrythm.

>> but I'd really like to know if there's a way to do this quantized Euclidean distribution across
>> existing beats in PR

define "existing beats". you mean in realtime? not with quite some latency.

when the 5 should be added to the 4 and the speed of the 4 is known, the speed of the 5 must be n/5*4, but you probably know that. :)

Daniel Collins's icon

Ok, I'm clearly not able to use the right word here, because I don't know it. But I'm trying to say yes, I know what polyrhythm and polymeter are. Both of them reframe the base measure or the base beat dimension. And yes of course if I'm *evenly dividing* 5 into 4 the length of the 5 needs to change.

But in a 4/4 measure (e.g. 4 quarter notes, 8 8th notes, 16 16th notes, etc...), you can put a kick on the first and third beat, and a 16th hi-hat behind it, like so: [1 0 0 0 | 0 0 0 0 | 1 0 0 0 | 0 0 0 0 ] for the kick and [1 1 1 1 | 1 1 1 1 | 1 1 1 1 | 1 1 1 1] for the hh.

A polyrhythm 5/4 would put 5 in the same space [ 1 1 1 1 1 | 1 1 1 1 1 | 1 1 1 1 1 | 1 1 1 1 1 ] in the same time for one measure. A polymetre 5/4 would do the same thing, but each beat would be the same length as the 4/4 beat and thus it would take 20 measures before they re-align because the measure length has changed.

So yes, I'm aware of what polyrhythm and polymetre are.

A "Euclidean rhythm" is neither of those. A 5/4 distribution (as in 5 "played" beats against the same quarter note basis, not a 5/4 time signature) would look, in the same 16th note format, like: [1 0 0 0 | 1 0 0 1 | 0 0 1 0 | 0 1 0 0]. This pattern can be rotated to put the odd 3-missed-beat portion anywhere within it, of course, but you can see how the beats remain the original 16 of the 4/4, and the measure length in real time remains the same, so that by the time they both cycle around they are both back on the 1 (hence, not polymetre). This is called "Euclidean" because it uses the GCD fundamental concept to distribute them as evenly as possible but across the existing metre and rhythm structure. If you read the papers I linked you'll see exactly how that relates.

This is what I mean by "evenly distributed" (Euclidean) rather than "evenly divided" (polyrhythmic).

Roman Thilenius's icon

i am not aware of this difference but it explains why most sequencer products only do the one or other mode.

general approch how to build one: calculate everything in floating point 0.-1. and then round (or truncate) /int.

if it really has been invented in 2004 (or if it not actually present in west african music since 3000 years) is another interesting question. ^^

Roman Thilenius's icon

so... i found something like that in my abstraction collection - but under a totally different name.

(otoh i have an old bpatcher called "euclid sequencer" which is using only preset tables and, speaking in björklund tongue, where k is never greater than n/2, leaving half the possible rythms aside. i have never finished it because of a problem with the GUI - so nobody could correct my naming scheme and/or algorithm.)

this

calculate everything in floating point 0.-1. and then round (or truncate) /int.

is of course is wrong. it only works up to around 6/8 and 5/9 that way.

this does not happen the first time that i build something without knowing what it is. last time was M/S encoding, which i also "invented" myself.

maybe i should modify that rythm distribution thing a bit tomorrow and rename it to "björklund". :)

if i find the time. because i also have to invent the "whool" tomorrow (some kind of infinite, ellipsoid skid)

-110

Roman Thilenius's icon

cycling wheel whool innovation nobelprize