LinCongC:
Filter:
Classes | UGens > Generators > Chaotic

LinCongC : LinCongN : ChaosGen : UGen : AbstractFunction : Object

Linear congruential chaotic generator
Source: Chaos.sc

Description

A cubic-interpolating sound generator based on the difference equation:

    x(n+1) = (a * x(n) + c) % m

The output signal is automatically scaled to a range of [-1, 1].

sclang code translation:

(
var a = 1.1, c = 0.13, m = 1, xi = 0, size = 64;
plot(size.collect { xi = (a * xi + c) % m });
)

Class Methods

LinCongC.ar(freq: 22050, a: 1.1, c: 0.13, m: 1, xi: 0, mul: 1, add: 0)

From superclass: LinCongN

Arguments:

freq

Iteration frequency in Hertz

a

Multiplier amount

c

Increment amount

m

Modulus amount

xi

Initial value of x

Inherited class methods

Instance Methods

Inherited instance methods

Examples

// default initial params
{ LinCongC.ar(MouseX.kr(20, SampleRate.ir)) * 0.2 }.play(s);
// randomly modulate params
(
{ LinCongC.ar(
    LFNoise2.kr(1, 1e4, 1e4),
    LFNoise2.kr(0.1, 0.5, 1.4),
    LFNoise2.kr(0.1, 0.1, 0.1),
    LFNoise2.kr(0.1)
) * 0.2 }.play(s);
)
// as frequency control...
(
{
SinOsc.ar(
    LinCongC.ar(
        40,
        LFNoise2.kr(0.1, 0.1, 1),
        LFNoise2.kr(0.1, 0.1, 0.1),
        LFNoise2.kr(0.1),
        0, 500, 600
    )
) * 0.4 }.play(s);
)