Another fractal. I don't know if I implemented it correctly. n should be infinity, but sonically it doesn't make much of a difference
Log in to post a comment.
ditty.bpm = 120; input.a=.5; // min=0.01,max=0.99,step=.01 input.b=7; // min=7,max=99,step=2 input.n=10; // min=1,max=99,step=1 debug.log ("Constraints met", a*b > 1. + 1.5*3.1415 ); const notes_m = scale(g4, scales['minor_pentatonic'], 3); const osc2 = synth.def( class { constructor(options) { // The value of the note argument of the play call is retrievable via options.note. this.phase = 0; } process(note, env, tick, options) { var sum = 0.; for(let n=0; n<input.n; n++) { sum += Math.pow(input.a, n) * Math.cos(Math.pow(input.b, n)*3.1415*this.phase); } this.phase += midi_to_hz(note) * ditty.dt; return sum * env.value; } }, { xenv: 0.5, amp: 1, attack: 0.01, release: 0.3 } ); loop( (loopCount) => { osc2.play(notes_m[loopCount%(notes_m.length-1)], { attack: 0.25, release: 1., duration: 0.5, pan: Math.random() * - .5, amp: 1.0 }); sleep(1.); }, { name: 'Weierstrass' });