11euclidean

11euclidean

Name: 11euclidean
Version: 2014/3/16
Published: 2014/3/14
Updated: 2014/3/16
Type: Max Abstraction
Platform: all

An approach to the Euclidean algorithm using only standard max objects.

 

Screenshots:
Installation:

Just copy the files into your Max search path.

 

Changelog:

2014/3/16: I just removed some unnecessary patchcords in the abstraction and made a minimal change in the help patch.

 

Files:

11euclidean.maxhelp

11euclidean.maxpat

 6.68 KB
Download 

Category: Max Objects
Comments   
Jeppe andersen
0 # Jeppe andersen Friday, 19 February 2016 10:09
hi i'm really interested in this algorythm, kinda new to max though, so, how exactly should i approach it if i want some sound to come out? :)
Reply | Reply with quote | Quote
11oLsen
0 # 11oLsen Saturday, 20 February 2016 11:24
It's generating a sequence with a defined length with on and off states. You could for example tranform the result to a midi sequence.
http://maxforlive.com/library/index.php?by=any&q=euclidean
Reply | Reply with quote | Quote
gosha
0 # gosha Sunday, 20 December 2015 20:00
beautiful patch! Thank you for share!
Could you explain the algorithm? I don`t understand connection from total steps to int in (count+=hits) block. Seems like i`ve missed smth.
Reply | Reply with quote | Quote
11oLsen
0 # 11oLsen Sunday, 20 December 2015 21:08
Hi, thanks. the int that you mean is holding the 'count' and the 'count' is initiated with the 'totalSteps' value (hence the connection). there's only one 'count' value in the algorithm but in the patch there are 3 [int] holding the value. That's why they update each other if changed. regards O.
Reply | Reply with quote | Quote
gosha
0 # gosha Monday, 21 December 2015 11:35
Yes, I understand that , but after first bang from uzi this int takes a different value from [-] (count-=hits). Anyway it doesnt matter It works perfect!
Reply | Reply with quote | Quote
11oLsen
0 # 11oLsen Monday, 21 December 2015 12:49
This is how it's done in a text-based language:


for (i = 0; i < len; i++)
{
pattern <<= 1;
if (cnt >= len)
{
SET_BIT(pattern, 0);
cnt -= len;
}
cnt += pulses
}

Maybe that helps to better understand the patcher. O.
Reply | Reply with quote | Quote
Elias
0 # Elias Friday, 24 April 2015 15:39
Really clean and awesome patch! And no unnecessary javascript :lol:
Reply | Reply with quote | Quote
lee hicks
0 # lee hicks Thursday, 10 July 2014 10:01
hi,
what would i use your patch 11euclidean for?
Reply | Reply with quote | Quote
11oLsen
0 # 11oLsen Thursday, 10 July 2014 11:25
Hallo, google "euclidean algorithm in music" and you will find many answers. This is the basic building block for things like euclidean rhythm generators.
Reply | Reply with quote | Quote

(not visible)