electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Articles  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links  |  Store
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » Clavia Nord Modular » Nord Modular G2 Discussion
Function orbit generator
Post new topic   Reply to topic Moderators: Nord Modular Editors
Page 1 of 1 [4 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Author Message
fac



Joined: Dec 08, 2007
Posts: 162
Location: Mexico
G2 patch files: 1

PostPosted: Thu Mar 27, 2008 12:58 pm    Post subject: Function orbit generator
Subject description: or: how to do feedback loops in control signals
Reply with quote  Mark this post and the followings unread

Ok, so I want to dwelve into generative/algorithmic sequences, and one of the things I want to do is to compute the orbit of a function f(x).

Given a function f(x), the orbit around point x[0] is the sequence x[0], x[1], ... where x[i+1] = f(x[i]).

So, the idea is to have a control value X, perform some operations on it, and then update X with the result of those operations. This process is repeated (with each new value of X) but in a controlled manner; that is, one has to be able to say when the new value must be computed (e.g., with a clock or trigger sequencer).

As a first example, I tried to make a simple counter. Suppose that f(x) = x + 1, then the sequence starting at 0 would be 0, 1, 2, etc.

After a few failed experiments, I came up with this patch:

Posted Image, might have been reduced in size. Click Image to view fullscreen.

The idea is this: I need to manipulate control signals, but I don't want them to be constantly updated. The only modules that I found that could transfer control signals in a clocked manner were the MIDI CC IN/OUT modules. In the second column, from top to bottom, there's a MIDI CC IN module which outputs the "current" value for X. That value is processed with whatever function we want (in this case f(x) = x + 1), and then, both the "old" and the "new" value are sent to a switch. The switch is controlled by a very short Hold envelope - the idea here is to constantly send the "old" value, until the envelope is triggered, then the new value is sent, but for a very brief time, just enough for the MIDI CC OUT module to send the value back to the MIDI CC IN on top. I added a manual "reset" mechanism that forces X to be replaced with a default value (zero, in this case). Of course, this could also be controlled automatically (e.g., reset every 16 or 32 steps).

I also added an ADC module just for display purposes. When you run the patch, you can see ADC counting in binary from zero to 127, and then stops (I guess the Level Add module doesn't fold over), that's where the reset mechanism becomes useful.

What I really want to do is some fractal sequences; for example, the mandelbrot fractal is given by the function f(x) = x^2 + c, where c is a given constant (you get a different sequence for each value of c). In this case, x is a complex number, but all the required operations are sums and products, which should be easy to do with the Level Multiplier and the mixers.

So, what do you guys think? Someone has probably done all this before, I just want to know if there could be a better way to do this.


function_orbit.pch2
 Description:

Download
 Filename:  function_orbit.pch2
 Filesize:  1.26 KB
 Downloaded:  1130 Time(s)

Back to top
View user's profile Send private message Visit poster's website
astroid power-up!



Joined: Mar 23, 2004
Posts: 334

G2 patch files: 15

PostPosted: Thu Mar 27, 2008 3:02 pm    Post subject: Reply with quote  Mark this post and the followings unread

put a sample and hold in the chain
_________________
Astroid Power-Up!: "googleplex" available at:
http://cdbaby.com/cd/googleplex
Back to top
View user's profile Send private message Visit poster's website
astroid power-up!



Joined: Mar 23, 2004
Posts: 334

G2 patch files: 15

PostPosted: Thu Mar 27, 2008 3:06 pm    Post subject: Reply with quote  Mark this post and the followings unread

like so

where the constant value is, you put your whatever calculator there.


adder.pch2
 Description:

Download
 Filename:  adder.pch2
 Filesize:  782 Bytes
 Downloaded:  1273 Time(s)


_________________
Astroid Power-Up!: "googleplex" available at:
http://cdbaby.com/cd/googleplex
Back to top
View user's profile Send private message Visit poster's website
fac



Joined: Dec 08, 2007
Posts: 162
Location: Mexico
G2 patch files: 1

PostPosted: Thu Mar 27, 2008 4:04 pm    Post subject: Reply with quote  Mark this post and the followings unread

Thanks. That works pretty well.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic Moderators: Nord Modular Editors
Page 1 of 1 [4 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
 Forum index » Clavia Nord Modular » Nord Modular G2 Discussion
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
e-m mkii

Please support our site. If you click through and buy from
our affiliate partners, we earn a small commission.


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use