2025-05-30

frequencies

defines the frequency spacing of partials. forms range from harmonic, stretched, and inharmonic to modal and stochastic, each describing a different structural view of the frequency domain.

notation: n = 1,2,3… is the partial index and f₀ is the fundamental. formulae return the ratio rₙ = fₙ / f₀.

overview

  • 0 harmonic

    • prototype ratio law: rₙ = n
    • real-world analogy: flute, tuning fork
    • notes: baseline reference
  • 1 stretch / compress

    • prototype ratio law: rₙ = n^{1+s} (stretch +, compress -)
    • real-world analogy: piano bass (stretch), organ pipe end-correction (compress)
    • notes: a = amount s, b = spectral skew
  • 2 stiff-string model

    • prototype ratio law: rₙ = n · √(1 + b n²)
    • real-world analogy: piano mid/treble, xylophone bar
    • notes: a sets inharmonicity b, b = fine offset
  • 3 quadratic membrane

    • prototype ratio law: rₙ = κ (n+δ)²
    • real-world analogy: timpani, frame drum
    • notes: a = curvature κ, b = fractional shift δ
  • 4 bessel modal

    • prototype ratio law: rₙ = ζ_{m,n} (nth root of bessel jₘ)
    • real-world analogy: gong, bell, plate
    • notes: a chooses mode order m, b scales the series
  • 5 jittered harmonic

    • prototype ratio law: rₙ = n + εₙ (band-limited jitter)
    • real-world analogy: string orchestra chorus, cicada swarm
    • notes: a = jitter depth, b = correlation length
  • 6 logistic cloud

    • prototype ratio law: sorted logistic-map sequence for rₙ

    • real-world analogy: wind-chime flurries, granular pitch spray

    • notes: a = chaos parameter r, b = span width

parameter behaviour summary

  • 0

    • param a: (unused)
    • param b: (unused)
  • 1

    • param a: stretch/compress factor s
    • param b: spectral skew (bias upper vs lower modes)
  • 2

    • param a: inharmonicity coefficient b
    • param b: linear frequency offset (fine tuning)
  • 3

    • param a: curvature κ (steeper ↑)
    • param b: fractional shift δ (moves first mode)
  • 4

    • param a: mode order m (0…6 mapped)
    • param b: global scale of root series
  • 5

    • param a: jitter depth (0 = none)
    • param b: correlation window (0 = white, 1 = slow)
  • 6

    • param a: chaos parameter r (3.6…4)

    • param b: width of cloud around harmonic grid

why these were chosen

they span the perceptual gamut from perfectly harmonic through controlled inharmonicity to chaotic tone clusters, while honouring the design constraints of two smooth parameters and no binary gating.

  • ideal harmonic series: harmonic
  • gradual brightening/dulling via spacing: stretch / compress
  • realistic stiff strings & bars: stiff-string model
  • drum-head-like ordered inharmonicity: quadratic membrane
  • metallic/bell-like ripples: bessel modal
  • subtle ensemble detune / chorus shimmer: jittered harmonic
  • dense micro-tonal or noise-pitch swarms: logistic cloud

natural-sound coverage

  • harmonic

    • examples: bowed string, flute, voiced speech
    • rationale: negligible stiffness leads to integer ratios
  • stretch / compress

    • examples: piano bass (stretch), large organ pipes (compress)
    • rationale: boundary conditions shift ratios slightly
  • stiff-string model

    • examples: piano mid/treble, kalimba tines
    • rationale: 1d bending stiffness follows the model
  • quadratic membrane

    • examples: timpani, tom-tom, roto-tom
    • rationale: tensioned drumheads obey (n+δ)² families
  • bessel modal

    • examples: gongs, bells, cymbals, brake-drums
    • rationale: 2d/3d plates produce bessel-root spacing
  • jittered harmonic

    • examples: violin section, choir, cicada swarm
    • rationale: many near-identical emitters with slight detune
  • logistic cloud

    • examples: wind-chime gusts, rustling leaves, splashing water

    • rationale: dense micro-inharmonic clusters with no single geometry

conclusion

the frequency-distribution module now documents seven continuous families that, together with amplitude shapes, cover nearly all pitched or resonant natural sounds and provide clear guidance on when to use static distributions, automation, layering or filtered noise.