home/ modules/ euclidean-rhythm-and-polyrhythm

Euclidean Rhythms and Polyrhythmic Loops

  • learner can generate Euclidean rhythms and explain their maximally-even and world-music correspondences
  • learner can relate Euclidean rhythms to the underlying algorithm, necklaces, complements and strings
  • learner can build evolving polyrhythmic loops from odd loop lengths and short hat loops

Design a self-evolving polyrhythmic pattern: generate two Euclidean rhythms (state their k,n and whether they are aksak/isochronous), run a short odd-length hat loop against a 16-step base, and show one is the complement/necklace-rotation of the other.

This module builds toward the signature move of a techno or ambient live-coding set: a percussion section that never repeats yet never loses its groove. On stage, two integers typed into a Euclidean function are the fastest way to conjure a credible timeline — and layering a 3- or 5-step hat loop over a 16-step kick grid turns that static timeline into a pattern that visibly evolves over minutes without further edits. That is exactly what the capstone asks you to design, and it is why every modular sequencer and Tidal-style pattern language ships Euclidean generators.

The arc starts supported: generate a single pattern with “Euclidean rhythms spread k onsets as evenly as possible over n steps” and check it against the catalogue of world-music timelines, hearing how E(3,8) is the tresillo you met in the prerequisite clave module. Then work the machinery by hand using Bjorklund’s pulse-distribution algorithm as your just-in-time how-to, classifying results as isochronous, aksak, or neither. Next, practice the transformations — complements and necklace rotations — until deriving E(n−k,n) from E(k,n) is automatic. Finally, add motion: the odd-length loop-phasing principle and the short hat-loop procedure show how incommensurable loop lengths drift and realign, so your last supported exercise is one Euclidean layer plus one phasing hat, and the unsupported capstone combines all of it.

The required atoms gate the capstone directly: you cannot state k,n and aksak/isochronous status, demonstrate a complement-as-necklace-rotation, or make the composite self-evolve without them. Supporting atoms enrich the picture — calendars and Bresenham lines show maximal evenness beyond music, Reich’s phasing and gamelan stratification give the aesthetic lineage, and the additive/divisive distinction frames why your pattern language handles (or resists) these grooves.

Runnable examples

Generated from the context/ instrument corpus by concept (redistributable idioms only). Do not edit — regenerate with gen-module-examples.mjs.

euclidean-rhythm

s("bd(3,8)")

strudel-0004 · CC0

d1 $ sound "bd(3,8)"

tidal-0004 · CC0

subdivision

seq [55, 82.5, 110, 82.5] & osc >> audio

punctual-0014 · CC0-1.0

d1 $ n "0 .. 7" # scale "minor" # sound "arpy"

tidal-0030 · CC0

Atoms in this module

Required — these gate the capstone

Euclidean rhythms spread k onsets as evenly as possible over n steps
Concept L1 Foundations AE
Bjorklund's pulse-distribution algorithm has the same structure as the Euclidean algorithm
Concept L2 First instrument AF
Dozens of traditional world-music timelines are rotations of Euclidean rhythms
Fact L1 Foundations AO
An isochronous rhythm places its onsets at perfectly regular intervals — the trivial case where k divides n
Concept L1 Foundations AF
Euclidean rhythms are exactly the maximally even rhythms — those maximizing pairwise inter-onset distance on the circle of time
Principle L3 Craft AF
A rhythm necklace is an equivalence class of cyclic rhythms that disregards the starting point
Concept L2 First instrument AF
The complement of a Euclidean rhythm is also Euclidean
Fact L3 Craft AF
A Euclidean rhythm is aksak (built only from duration-2 and duration-3 cells) exactly when 2k < n < 3k
Concept L3 Craft A
A Euclidean string is an interval vector that becomes a rotation of itself when its first element is incremented and its last decremented
Concept L4 Performance A
Simultaneously triggering an instrument with loops of different lengths creates a self-evolving composite pattern
Concept L3 Craft AF
Looping a bassline over an odd number of beats phases it against a 4-beat drum pattern
Principle L2 First instrument A
A 3- or 5-step hat loop against a 16-step pattern creates an evolving polyrhythmic feel
Procedure L3 Craft AF

Supporting — enrichment, not gating

Additive rhythm builds unusual time signatures by combining groups of 2 and 3 eighth-note cells
Concept L2 First instrument AF
Divisive rhythm subdivides a fixed cycle; additive rhythm builds sequences by adding or removing beats
Concept L3 Craft AF
The leap-year patterns of the Jewish and Islamic calendars are Euclidean necklaces
Fact L3 Craft A
Bresenham's algorithm for drawing digital straight lines is an implementation of the Euclidean algorithm
Fact L3 Craft A
Reich's phasing runs two identical loops at slightly different speeds to generate emergent shifting patterns
Concept L2 First instrument AF
Gamelan colotomic structures divide the gong cycle with hierarchical punctuation instruments to give pieces their formal identity
Concept L2 First instrument AO
Gamelan music uses polyphonic stratification: distinct melodic-rhythmic layers each maintaining independent character
Concept L2 First instrument AO
Varying the k parameter of a euclidean rhythm live smoothly morphs the groove without changing the step count
Procedure L2 First instrument AF