LatoocarfianL

object LatoocarfianL extends ProductReader[LatoocarfianL]

A linear-interpolating sound generator based on a function given in Clifford Pickover's book Chaos In Wonderland, pg 26. The function is:

x[n+1] = sin(b * y[n]) + c * sin(b * x[n])
y[n+1] = sin(a * y[n]) + d * sin(a * x[n])

According to Pickover, parameters a and b should be in the range from -3 to +3, and parameters c and d should be in the range from 0.5 to 1.5. The function can, depending on the parameters given, give continuous chaotic output, converge to a single value (silence) or oscillate in a cycle (tone). NOTE: This UGen is experimental and not optimized currently, so is rather hoggish of CPU.

===Examples===

// default initial parameters
play { LatoocarfianL.ar(MouseX.kr(20, SampleRate.ir)) * 0.2 }
// randomly modulate all parameters
play {
 LatoocarfianL.ar(
   SampleRate.ir/4,
   LFNoise2.kr(2).mulAdd(1.5, 1.5),
   LFNoise2.kr(2).mulAdd(1.5, 1.5),
   LFNoise2.kr(2).mulAdd(0.5, 1.5),
   LFNoise2.kr(2).mulAdd(0.5, 1.5)
 ) * 0.2
}
See also
Companion
class
trait Product
trait Mirror
trait ProductReader[LatoocarfianL]
class Object
trait Matchable
class Any

Type members

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Inherited from
Mirror
type MirroredLabel <: String

The name of the type

The name of the type

Inherited from
Mirror

Value members

Concrete methods

def ar(freq: GE, a: GE, b: GE, c: GE, d: GE, xi: GE, yi: GE): LatoocarfianL
Value Params
a

Equation variable

b

Equation variable

c

Equation variable

d

Equation variable

freq

Iteration frequency in Hertz

xi

Initial value of x

yi

Initial value of y

def read(in: RefMapIn, key: String, arity: Int): LatoocarfianL