Lorenz
Abstract
GEN routine based on the Thomas attractor
Description
thomas creates a ft based on data created by a Thomas attractor.
The Thomas attractor is a chaotic dynamical system described by a set of nonlinear differential equations. Discovered by Pierre Thomas in 1989, it exhibits a cyclically symmetric structure and involves three variables: x,y, and z, which typically follow a chaotic trajectory. The Thomas attractor is known for its compact and dense form, often resembling a distorted "butterfly" shape. Compared to other chaotic systems like the Lorenz attractor, it features higher symmetry and intricate cyclic interactions among its variables. Like all chaotic systems, the Thomas attractor is highly sensitive to initial conditions, meaning that even tiny changes in the starting values can result in vastly different outcomes.
Syntax
f1 0 4096 "thomas" 0 30 1600 -1 1 0.001 0 0 0.15 0.01
Arguments
- p5 = choose axis to select values from; 0 = x, 1 = y, 2 = z
- p6 = min output; if p6 and p7 == 0 don't scale
- p7 = max output; if p6 and p7 == 0 don't scale
- p8 = normalize; 0 == normalize, -1 == don't normalize
- p9 = stepsize
- p10 = x start value
- p11 = y start value
- p12 = z start value
- [p13 = b; 0 == default -> 0.9]
- [p14 = time delta; 0 == default -> 0.001]
Output
Execution Time
- Init
Examples
<CsoundSynthesizer>
<CsOptions>
-odac
</CsOptions>
<CsInstruments>
sr = 44100
ksmps = 16
nchnls = 2
0dbfs = 1.0
instr 1
iX random -1, 1
iY random -1, 1
iZ random -1, 1
iStepSize = 1
iB = 0.15
iDt = 0.01
iNorm = -1
iMin = 80
iMax = 600
iAxis = 0
iFreqs ftgen 0, 0, 16384, "thomas", iAxis, iMin, iMax, iNorm, iStepSize, iX,\
iY, iZ, iB, iDt
aIndex line 0,p3,1
aFreq table aIndex, iFreqs, 1
aSig poscil3 0.8, aFreq
aEnv linseg 0,0.02,1,p3-0.02,1,0.02,0
outs aSig, aSig
endin
</CsInstruments>
<CsScore>
i1 0 20
</CsScore>
</CsoundSynthesizer>
See also
Credits
Philipp von Neumann, 2024