Different Kinds of Pattern

From TidalCycles userbase
Revision as of 05:48, 23 December 2020 by 22nds (talk | contribs) (Minor fix. 0 .. 4 includes 01234 so change is made to 0 .. 3 to output the same pattern as the previous two options.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Other languages:
British English • ‎English • ‎français • ‎中文(台灣)‎ • ‎日本語

What is pattern, anyway?

Let's think about some different kinds of pattern and how Tidal can represent them

Cyclic / repetitive

We can use n to choose samples from a folder, this allows us to apply patterns there too!

d1 $ n "0 1 2 3" # sound "arpy"


Run is a short way of writing out sequential patterns

d1 $ n (run 4) # sound "arpy"

or we can use ..

d1 $ n "0 .. 3" # sound "arpy"

Symmetry

d1 $ slow 2 $ n "0 1 2 3 3 2 1 0" # sound "arpy"
d1 $ palindrome $ n (run 4) # sound "arpy"

Polymetric / polyrhythmic sequences

Play two subsequences at once by using square brackets (sort of like one big subsequence!) separating with a comma:

d1 $ sound "[voodoo voodoo:3, arpy arpy:4 arpy:2]"

If you use curly brackets instead of square you get a different effect. With square brackets both halves of the sequence are fitted into the cycle (polyrhythm). With curly brackets the pulse is set by the left hand pattern. The right hand pattern can then overlap (or underlap!) (polymeter).

d1 $ sound "[voodoo voodoo:3, arpy arpy:4 arpy:2]"
d1 $ sound "{voodoo voodoo:3, arpy arpy:4 arpy:2}"
d1 $ sound "[drum bd hh bd, can can:2 can:3 can:4 can:2]"
d1 $ sound "{drum bd hh bd, can can:2 can:3 can:4 can:2}"
d1 $ sound "[bd sn, can:2 can:3 can:1, arpy arpy:1 arpy:2 arpy:3 arpy:5]"
d1 $ sound "{bd sn, can:2 can:3 can:1, arpy arpy:1 arpy:2 arpy:3 arpy:5}"

Euclidean rhythm/Bjorklund

If you give two numbers in brackets after an element in a pattern, then Tidal will try to distribute the first number of sounds equally across the second number of steps.

d1 $ sound "bd(5,8)"

You can use this notation within a single element of a pattern:

d1 $ sound "bd(3,8) sn*2"
d1 $ sound "bd(3,8) sn(5,8)"

You can also add a third parameter, which ‘rotates’ the pattern so it starts on a different step:

d1 $ sound "bd(5,8,2)"