diff --git a/src/documentation/patterns/ziffers/ziffers_tonnetz.ts b/src/documentation/patterns/ziffers/ziffers_tonnetz.ts
index e760bfe..ebc7a15 100644
--- a/src/documentation/patterns/ziffers/ziffers_tonnetz.ts
+++ b/src/documentation/patterns/ziffers/ziffers_tonnetz.ts
@@ -210,12 +210,20 @@ In addition to the transformations, Ziffers implements cyclic methods that can b
* hexaCycle(tonnetz: number[], repeats: number = 3): Cycles through chords in the hexa cycle
* octaCycle(tonnetz: number[], repeats: number = 4): Cycles through chords in the octa cycle
* enneaCycle(tonnetz: number[], repeats: number = 3): Cycles through chords in the ennea cycle
+* powerTowers(tonnetz: number[], repeats: number = 3): Cycles through chords using the Power Towers
+* cubeDance(tonnetz: number[], repeats: number = 3): Cycles through chords in a Cube Dance
-HexaCycles are sequences of major and minor triads generated by the p and l transformations . Let's take the following example starting with a C chord: C -> Cm -> Ab -> Abm -> E -> Em. You can start on the chord of your choice.
+**HexaCycles** are sequences of major and minor triads generated by the p and l transformations . Let's take the following example starting with a C chord: C -> Cm -> Ab -> Abm -> E -> Em. You can start on the chord of your choice.
-OctaCycles are sequences of major and minor triads generated using p and r transformations. Starting at C, we have the following sequence: C -> Cm -> Eb -> Ebm -> F# -> F#m -> A -> Am.
+**OctaCycles** are sequences of major and minor triads generated using p and r transformations. Starting at C, we have the following sequence: C -> Cm -> Eb -> Ebm -> F# -> F#m -> A -> Am.
-Unlike HexaCycles and OctaCycles, EnneaCycles are four-note chord sequences. Considering the functions implemented for tetrachords in Ziffers, we can interpret these sequences as generated by p12, p23, and l13 transformations repeatedly: C7 -> Cm7 -> Cm7b5 -> Ab7 -> Abm7 -> Abm7b5 -> E7 -> Em7 -> Em7b5.
+Unlike HexaCycles and OctaCycles, **EnneaCycles** are four-note chord sequences. Considering the functions implemented for tetrachords in Ziffers, we can interpret these sequences as generated by p12, p23, and l13 transformations repeatedly: C7 -> Cm7 -> Cm7b5 -> Ab7 -> Abm7 -> Abm7b5 -> E7 -> Em7 -> Em7b5.
+
+**Power Towers** use four-note chords (halfdim7, m7 and 7 ). The assembly chords are of type dim7. One of the many paths for succession has been chosen.
+
+**Cube Dance** is another graph that is built primarily with HexaCycles, except that it adds augmented triads as assemblers. As with Power Towers, one possible path has been selected.
+
+Both Cube Dance and Power Towers have many chords, so sometimes it will be convenient to slice up fragments of the cycles. Ziffers has some **Generative functions** (e.g., between(start, end)) that may be useful to you.
### Examples:
@@ -245,6 +253,20 @@ z1("s 0 3 2 1")
true,
)}
+${makeExample(
+ "Cube Dance swing",
+ `
+ z1("0").cubeDance([3,4,5]).sound("sine").out()`,
+ true,
+ )}
+
+${makeExample(
+ "Power Towers with pulse",
+ `
+ z1("2").powerTowers([2,3,7]).between(5,11).sound("sine").out()`,
+ true,
+ )}
+
## Cycles with vitamins and repetitions
Finally, cyclic methods in Ziffers can also be vitaminized with doses of different Tonnetz. However, this opens the way to different behavior with cycles.
@@ -274,7 +296,7 @@ true
By default hexaCycles and enneaCycles have 3 repetitions, while octaCycles has 4 repetitions. We have specified a **chromatic scale** although this is the **default scale**. Try changing the **repeats and scales** when playing with different Tonnetz.
-* Remark E: These cycles in Tonnetz [3, 4, 5] are implemented based on the work of [Douthett & Steinbach (1998, pp. 245-247)](https://www.jstor.org/stable/843877)
+* Remark E: These cycles in Tonnetz [3, 4, 5] are implemented based on the work of [Douthett & Steinbach (1998, pp. 245-247, 253-256)](https://www.jstor.org/stable/843877)
## Traversing methods