> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nomn.jp/llms.txt
> Use this file to discover all available pages before exploring further.

# Algorithm Reference

> All 37 algorithms in one place — rhythm, perforation, and pitch

# Algorithm Reference

Quick reference for all algorithms across RESERVOIR's three engine types. For detailed descriptions and lineage, see the individual interface pages.

## Rhythm Engines (18)

| #  | Name               | ID in DAW            | Core Principle                                                                                         |
| -- | ------------------ | -------------------- | ------------------------------------------------------------------------------------------------------ |
| 0  | Stochastic         | `Stochastic`         | Exponentially-distributed stochastic inter-onset intervals                                             |
| 1  | Polyrhythm         | `Polyrhythm`         | Schillinger resultant from two periodic generators at ratio A:B                                        |
| 2  | Grouping           | `Grouping`           | Variable-size note clusters (e.g., 5-3-2 pattern)                                                      |
| 3  | Cloud              | `Cloud`              | Density field modulated by overlapping incommensurate sine waves                                       |
| 4  | Euclidean          | `Euclidean`          | Bjorklund algorithm — N pulses distributed maximally-evenly over M steps                               |
| 5  | Harmonic           | `Harmonic`           | Overtone-series pulse streams at ratios 1:2:3:...N                                                     |
| 6  | Multigenerator     | `Multigenerator`     | Three+ concurrent periodic generators forming a higher-order resultant                                 |
| 7  | Attack Groups      | `Attack Groups`      | Time-rhythm × instrumental-rhythm product (Polka, Fox-trot, Waltz, Rhumba, Custom)                     |
| 8  | Lattice            | `Lattice`            | PL (place-length) coordination of duration groups across attack groups                                 |
| 9  | Permutation        | `Permutation`        | Circular, retrograde, and higher-order permutations of durations/rests/accents                         |
| 10 | Continuity         | `Continuity`         | Homogeneous continuity via subdivision by divisor / by bar / by attack                                 |
| 11 | Power Series       | `Power Series`       | Group sizes from mathematical progressions (squares, powers, triangular, binomial)                     |
| 12 | Growth Series      | `Growth Series`      | Fibonacci-family seed pair generates additive duration growth                                          |
| 13 | Acceleration       | `Acceleration`       | Continuous IOI transformation along Harmonic/Arithmetic/Geometric/Power/Summation/Primes/Rubato curves |
| 14 | L-System           | `L-System`           | Lindenmayer string rewriting → fractal rhythm sequences                                                |
| 15 | Beat Grid          | `Beat Grid`          | 16-step seed expanded by Markov chain each bar                                                         |
| 16 | NOMN Drum Computer | `NOMN Drum Computer` | 4-axis pad over a stylist-space learned from an open source corpus of drum patterns                    |
| 17 | Subdivision Grid   | `Subdivision Grid`   | Strict metronomic grid (1/4..1/128, straight or tuplet) — perforation shapes it                        |

## Perforation Engines (7)

| # | Name           | ID in DAW        | Core Principle                                                    |
| - | -------------- | ---------------- | ----------------------------------------------------------------- |
| 0 | Euclidean      | `Euclidean`      | Maximally-even gap distribution (Bjorklund)                       |
| 1 | Prime Sieve    | `Prime Sieve`    | Sieve of Eratosthenes — remove at prime-divisible positions       |
| 2 | Fibonacci      | `Fibonacci`      | Zeckendorf decomposition — fewer Fibonacci terms = more protected |
| 3 | Modular        | `Modular`        | Keep events at index mod N = offset                               |
| 4 | Golden Ratio   | `Golden Ratio`   | Quasiperiodic phi-based lattice / golden angle phyllotaxis        |
| 5 | Automata       | `Automata`       | Wolfram elementary cellular automaton (rules 0–255)               |
| 6 | Corpus Density | `Corpus Density` | Statistical rest-placement curves from a phrase-density model     |

## Pitch Patterns (12)

| #  | Name             | ID in DAW          | Core Principle                                                                              |
| -- | ---------------- | ------------------ | ------------------------------------------------------------------------------------------- |
| 0  | Sequential       | `Sequential`       | Serial exhaustion — all pitches before any repeat                                           |
| 1  | Spiral           | `Spiral`           | Expanding intervals outward from center pitch                                               |
| 2  | Fibonacci        | `Fibonacci`        | Fibonacci interval sequence (1,1,2,3,5,8,13,21)                                             |
| 3  | Register         | `Register`         | Systematic octave-by-octave traversal                                                       |
| 4  | Probabilistic    | `Probabilistic`    | Weighted Markov transitions (close intervals favored)                                       |
| 5  | Golden Ratio     | `Golden Ratio`     | Pitch set split at phi, alternating subsets                                                 |
| 6  | Interference     | `Interference`     | Interference of two interval generators → resultant pitch set                               |
| 7  | Mirror           | `Mirror`           | Alternating original and inverted pitches around axis                                       |
| 8  | Permutation      | `Permutation`      | Circular, retrograde, and retrograde-inversion orderings                                    |
| 9  | Corpus           | `Corpus`           | Statistical pitch-class transition matrices                                                 |
| 10 | Arpeggiator      | `Arpeggiator`      | Chord-arpeggiation patterns (up, down, alternating, random)                                 |
| 11 | Harmonic Gravity | `Harmonic Gravity` | User-defined chord vocabulary with automatic voice leading, driven by ESN tension crossings |

## Layer Interaction Modes (5)

| # | Name          | Behavior                                                             |
| - | ------------- | -------------------------------------------------------------------- |
| 0 | Independent   | No inter-layer coordination                                          |
| 1 | Inverse       | More active when other layers are quiet                              |
| 2 | Complementary | Fill gaps in other layers (hocket)                                   |
| 3 | Synchronized  | Holes align across layers                                            |
| 4 | Monophonic    | Single-voice priority — new attacks cut off any still-sounding notes |

## Articulation Styles (5)

| # | Name      | Duration Multiplier     |
| - | --------- | ----------------------- |
| 0 | Sustained | 1.0                     |
| 1 | Legato    | 0.80–0.95               |
| 2 | Staccato  | 0.20–0.40               |
| 3 | Accent    | 1.00–1.15               |
| 4 | Mixed     | 0.85→0.35 (progressive) |

## Micro-Timing Feel (4)

| # | Name         | Description                                                                                |
| - | ------------ | ------------------------------------------------------------------------------------------ |
| 0 | Strict       | Metronomic — zero deviation                                                                |
| 1 | NOMN         | Context-aware micro-timing modulated by phrase position and density                        |
| 2 | User Groove  | Per-grid-position deviations from a [MIR Capture](/reservoir/features/capture) fingerprint |
| 3 | Genre Groove | Per-genre micro-timing profiles from drum-corpus analysis                                  |

## Velocity Curve Shapes (6)

| # | Name     | Description                                     |
| - | -------- | ----------------------------------------------- |
| 0 | Off      | Pure random within `[velocityMin, velocityMax]` |
| 1 | Swell    | Corpus-informed phrase-level natural swell      |
| 2 | Ramp     | Linear rise across phrase                       |
| 3 | Drive    | Sustained high-energy weighting                 |
| 4 | Fade     | Linear fall across phrase                       |
| 5 | Captured | Envelope from a MIR Capture fingerprint         |

## Color Modes (8)

| # | Name            | Maps To                                     |
| - | --------------- | ------------------------------------------- |
| 0 | Greyscale       | Velocity/dynamics only                      |
| 1 | Chromatic       | Pitch class (perceptually uniform palette)  |
| 2 | Register        | Octave register (dark = low, bright = high) |
| 3 | Interval        | Interval from lowest active pitch           |
| 4 | Tension         | Consonance-dissonance score                 |
| 5 | Schillingerian  | 12 saturated pitch-class colors             |
| 6 | Scriabin        | Synesthetic color-hearing associations      |
| 7 | Rimsky-Korsakov | Key-color landscape associations            |

## Combination Count

With 18 rhythm engines × 7 perforation methods × 12 pitch patterns × 5 layer interaction modes × 5 articulation styles = **37,800** unique algorithm combinations before considering parameter variations, scale selection, or per-engine modal options.
